about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2025-03-20 18:33:42 +0100
committerptitSeb <sebastien.chev@gmail.com>2025-03-20 18:33:42 +0100
commit7873b703064d35c0f63e5a2b8597f8fa9e64ee41 (patch)
tree0c4fad540bb7669521e5d695d28872be43634360 /src
parent86d9d851c6c058006423a402615b8de17a186782 (diff)
downloadbox64-7873b703064d35c0f63e5a2b8597f8fa9e64ee41.tar.gz
box64-7873b703064d35c0f63e5a2b8597f8fa9e64ee41.zip
[WRAPPER] Added wrapping for libavutil.so.56, libavformat.so.58 and libavcodec.so.58 (for new winedmo.so MediaFundation ffmpeg backend)
Diffstat (limited to 'src')
-rw-r--r--src/emu/x64printer.c80
-rw-r--r--src/library_list.h4
-rw-r--r--src/wrapped/generated/functions_list.txt48
-rw-r--r--src/wrapped/generated/wrappedlibavcodec58defs.h8
-rw-r--r--src/wrapped/generated/wrappedlibavcodec58types.h17
-rw-r--r--src/wrapped/generated/wrappedlibavcodec58undefs.h8
-rw-r--r--src/wrapped/generated/wrappedlibavformat58defs.h8
-rw-r--r--src/wrapped/generated/wrappedlibavformat58types.h19
-rw-r--r--src/wrapped/generated/wrappedlibavformat58undefs.h8
-rw-r--r--src/wrapped/generated/wrappedlibavutil56defs.h8
-rw-r--r--src/wrapped/generated/wrappedlibavutil56types.h19
-rw-r--r--src/wrapped/generated/wrappedlibavutil56undefs.h8
-rw-r--r--src/wrapped/generated/wrapper.c140
-rw-r--r--src/wrapped/generated/wrapper.h41
-rw-r--r--src/wrapped/wrappedlibavcodec58.c38
-rw-r--r--src/wrapped/wrappedlibavcodec58_private.h178
-rw-r--r--src/wrapped/wrappedlibavformat58.c113
-rw-r--r--src/wrapped/wrappedlibavformat58_private.h162
-rw-r--r--src/wrapped/wrappedlibavutil56.c73
-rw-r--r--src/wrapped/wrappedlibavutil56_private.h556
20 files changed, 1536 insertions, 0 deletions
diff --git a/src/emu/x64printer.c b/src/emu/x64printer.c
index e2cead84..bc283334 100644
--- a/src/emu/x64printer.c
+++ b/src/emu/x64printer.c
@@ -435,6 +435,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI);
     } else if (w == IFip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI);
+    } else if (w == IFII) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi64 ", %" PRIi64 ")", tid, *(void**)(R_RSP), func, (int64_t)R_RDI, (int64_t)R_RSI);
     } else if (w == IFpi) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI);
     } else if (w == IFpu) {
@@ -501,6 +503,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (uint32_t)R_RSI);
     } else if (w == UFUp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu64 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uint64_t)R_RDI, (void*)R_RSI);
+    } else if (w == UFdi) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIf ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, emu->xmm[0].d[0], (int32_t)R_RDI);
     } else if (w == UFpi) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI);
     } else if (w == UFpU) {
@@ -827,6 +831,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu64 ", %" PRIp ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (uintptr_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX);
     } else if (w == vFLpp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu64 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uintptr_t)R_RDI, (void*)R_RSI, (void*)R_RDX);
+    } else if (w == vFpcu) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi8 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int8_t)R_RSI, (uint32_t)R_RDX);
     } else if (w == vFpww) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi16 ", %" PRIi16 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int16_t)R_RSI, (int16_t)R_RDX);
     } else if (w == vFpic) {
@@ -1129,6 +1135,10 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu64 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (unsigned __int128)R_RSI + ((unsigned __int128)R_RDX << 64), (unsigned __int128)R_RCX + ((unsigned __int128)R_R8 << 64));
     } else if (w == IFiIi) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi64 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int64_t)R_RSI, (int32_t)R_RDX);
+    } else if (w == IFIII) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi64 ", %" PRIi64 ", %" PRIi64 ")", tid, *(void**)(R_RSP), func, (int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX);
+    } else if (w == IFUUU) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu64 ", %" PRIu64 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (uint64_t)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX);
     } else if (w == IFpIi) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi64 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int64_t)R_RSI, (int32_t)R_RDX);
     } else if (w == IFppi) {
@@ -1177,6 +1187,10 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIf ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, emu->xmm[0].f[0], (void*)R_RSI);
     } else if (w == uFupu) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIp ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX);
+    } else if (w == uFupU) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIp ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (void*)R_RSI, (uint64_t)R_RDX);
+    } else if (w == uFupL) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIp ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX);
     } else if (w == uFupp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (void*)R_RSI, (void*)R_RDX);
     } else if (w == uFpii) {
@@ -1369,8 +1383,12 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX);
     } else if (w == pFiiu) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX);
+    } else if (w == pFiid) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIf ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, emu->xmm[0].d[0]);
     } else if (w == pFiip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX);
+    } else if (w == pFiup) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX);
     } else if (w == pFiLL) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu64 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX);
     } else if (w == pFipi) {
@@ -1457,6 +1475,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIf ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, emu->xmm[0].f[0]);
     } else if (w == pFpul) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIi64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (intptr_t)R_RDX);
+    } else if (w == pFpuL) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX);
     } else if (w == pFpup) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX);
     } else if (w == pFpdu) {
@@ -1979,6 +1999,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIi32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX);
     } else if (w == iFuWWp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIu16 ", %" PRIu16 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (uint16_t)R_RSI, (uint16_t)R_RDX, (void*)R_RCX);
+    } else if (w == iFuuip) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIu32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX);
     } else if (w == iFuuuu) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX);
     } else if (w == iFuupi) {
@@ -2017,6 +2039,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uintptr_t)R_RCX);
     } else if (w == iFpiip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX);
+    } else if (w == iFpiIi) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIi64 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (int64_t)R_RDX, (int32_t)R_RCX);
     } else if (w == iFpiCp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIu8 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (uint8_t)R_RDX, (void*)R_RCX);
     } else if (w == iFpiuu) {
@@ -2169,6 +2193,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu64 ", %" PRIp ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX);
     } else if (w == iFpLpp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu64 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX);
+    } else if (w == iFppcc) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi8 ", %" PRIi8 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (int8_t)R_RDX, (int8_t)R_RCX);
     } else if (w == iFppii) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX);
     } else if (w == iFppiI) {
@@ -2181,6 +2207,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (uintptr_t)R_RCX);
     } else if (w == iFppip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX);
+    } else if (w == iFppIi) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi64 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int32_t)R_RCX);
     } else if (w == iFppIL) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi64 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uintptr_t)R_RCX);
     } else if (w == iFppCC) {
@@ -2197,6 +2225,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uintptr_t)R_RCX);
     } else if (w == iFppup) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX);
+    } else if (w == iFppdi) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIf ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], (int32_t)R_RDX);
     } else if (w == iFppdd) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIf ", %" PRIf ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], emu->xmm[1].d[0]);
     } else if (w == iFppdp) {
@@ -2231,6 +2261,10 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX);
     } else if (w == IFEpIi) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi64 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int64_t)R_RSI, (int32_t)R_RDX);
+    } else if (w == IFIIIu) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi64 ", %" PRIi64 ", %" PRIi64 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (uint32_t)R_RCX);
+    } else if (w == IFIUUu) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int64_t)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint32_t)R_RCX);
     } else if (w == IFpIip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi64 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int64_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX);
     } else if (w == IFppii) {
@@ -2279,6 +2313,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX);
     } else if (w == uFpupu) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX);
+    } else if (w == uFpupL) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX);
     } else if (w == uFpupp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX);
     } else if (w == uFplup) {
@@ -3101,6 +3137,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)(R_RSP + 8));
     } else if (w == iFEpppA) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX);
+    } else if (w == iFiiiip) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8);
     } else if (w == iFiiipu) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8);
     } else if (w == iFiiipp) {
@@ -3251,6 +3289,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIu64 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (uint32_t)R_R8);
     } else if (w == iFpupLp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIu64 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (void*)R_R8);
+    } else if (w == iFpuppi) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8);
     } else if (w == iFpuppu) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIp ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint32_t)R_R8);
     } else if (w == iFpuppL) {
@@ -3321,6 +3361,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIi64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (intptr_t)R_R8);
     } else if (w == iFppipp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8);
+    } else if (w == iFppIII) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi64 ", %" PRIi64 ", %" PRIi64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8);
     } else if (w == iFppWpp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu16 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint16_t)R_RDX, (void*)R_RCX, (void*)R_R8);
     } else if (w == iFppuwp) {
@@ -3681,6 +3723,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8);
     } else if (w == pFppuup) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8);
+    } else if (w == pFppuLi) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu64 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uintptr_t)R_RCX, (int32_t)R_R8);
     } else if (w == pFppupp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8);
     } else if (w == pFppddu) {
@@ -3919,6 +3963,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIu64 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (uint64_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9);
     } else if (w == vFpiLppi) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIu64 ", %" PRIp ", %" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int32_t)R_R9);
+    } else if (w == vFpipiii) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9);
     } else if (w == vFpipipp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9);
     } else if (w == vFpipipV) {
@@ -4033,6 +4079,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIu32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9);
     } else if (w == vFpppiff) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIf ", %" PRIf ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, emu->xmm[0].f[0], emu->xmm[1].f[0]);
+    } else if (w == vFpppipi) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9);
     } else if (w == vFpppipu) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (uint32_t)R_R9);
     } else if (w == vFpppipp) {
@@ -4131,6 +4179,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9);
     } else if (w == iFuiiuup) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIi32 ", %" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9);
+    } else if (w == iFuuIiip) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIu32 ", %" PRIi64 ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (uint32_t)R_RSI, (int64_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9);
     } else if (w == iFupupLp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIu64 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8, (void*)R_R9);
     } else if (w == iFupLpLp) {
@@ -4159,6 +4209,10 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIu32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9);
     } else if (w == iFpiiLip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIu64 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uintptr_t)R_RCX, (int32_t)R_R8, (void*)R_R9);
+    } else if (w == iFpiipcc) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIi8 ", %" PRIi8 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (int8_t)R_R8, (int8_t)R_R9);
+    } else if (w == iFpiipii) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9);
     } else if (w == iFpiipip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9);
     } else if (w == iFpiippp) {
@@ -4609,12 +4663,16 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9);
     } else if (w == pFppuupp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9);
+    } else if (w == pFppupLi) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIu64 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8, (int32_t)R_R9);
     } else if (w == pFppuppp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9);
     } else if (w == pFpplplp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi64 ", %" PRIp ", %" PRIi64 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (intptr_t)R_R8, (void*)R_R9);
     } else if (w == pFpplppp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi64 ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9);
+    } else if (w == pFpppiip) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9);
     } else if (w == pFpppupp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9);
     } else if (w == pFpppLii) {
@@ -4823,6 +4881,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu64 ", %" PRIu64 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8));
     } else if (w == vFpLLuuuu) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu64 ", %" PRIu64 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8));
+    } else if (w == vFpLLpppp) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu64 ", %" PRIu64 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8));
     } else if (w == vFpLpiipi) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu64 ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8));
     } else if (w == vFpLppipi) {
@@ -4879,6 +4939,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8));
     } else if (w == vFpppffff) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0]);
+    } else if (w == vFppppiii) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (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));
     } else if (w == vFppppiip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8));
     } else if (w == vFppppiui) {
@@ -5009,6 +5071,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu64 ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8));
     } else if (w == iFpLppiip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu64 ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8));
+    } else if (w == iFppiiiii) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8));
     } else if (w == iFppiiiip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8));
     } else if (w == iFppiiuup) {
@@ -5037,6 +5101,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8));
     } else if (w == iFppuuppp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8));
+    } else if (w == iFppupupu) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (void*)R_R9, *(uint32_t*)(R_RSP + 8));
     } else if (w == iFppupupp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8));
     } else if (w == iFppupppp) {
@@ -5055,6 +5121,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (uintptr_t)R_R9, *(uint32_t*)(R_RSP + 8));
     } else if (w == iFppLpppp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu64 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8));
+    } else if (w == iFpppiiii) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (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));
     } else if (w == iFpppiiup) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8));
     } else if (w == iFpppippi) {
@@ -5415,6 +5483,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIi64 ", %" PRIi64 ", %" PRIi64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (intptr_t)R_R9, *(intptr_t*)(R_RSP + 8), *(intptr_t*)(R_RSP + 16));
     } else if (w == vFpppLpppp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIu64 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16));
+    } else if (w == vFppppiiii) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (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));
     } else if (w == vFpppppuuu) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16));
     } else if (w == vFppppppui) {
@@ -5459,6 +5529,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)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), *(void**)(R_RSP + 16));
     } else if (w == iFpipiipip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16));
+    } else if (w == iFpippiiii) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)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));
     } else if (w == iFpippuuui) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (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));
     } else if (w == iFpippuupp) {
@@ -5595,6 +5667,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu64 ", %" PRIp ", %" PRIu64 ", %" PRIp ", %" PRIu64 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8, (void*)R_R9, *(uintptr_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16));
     } else if (w == pFEupLLLpp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIp ", %" PRIu64 ", %" PRIu64 ", %" PRIu64 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8));
+    } else if (w == pFEpiipppp) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8));
     } else if (w == pFEpiuCppp) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIu32 ", %" PRIu8 ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (uint8_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8));
     } else if (w == pFEpuLpupp) {
@@ -5781,6 +5855,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (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), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24));
     } else if (w == vFpppffffff) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, 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]);
+    } else if (w == vFppppiiiii) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (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), *(int32_t*)(R_RSP + 24));
     } else if (w == vFppppipiip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(void**)(R_RSP + 24));
     } else if (w == iFEpiiiiipi) {
@@ -5979,6 +6055,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ")", tid, *(void**)(R_RSP), func, 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));
     } else if (w == vFpiuippppip) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIu32 ", %" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(void**)(R_RSP + 32));
+    } else if (w == vFpipipippip) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(void**)(R_RSP + 32));
     } else if (w == vFpuupuuuuuu) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)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));
     } else if (w == vFppiiiiupip) {
@@ -6001,6 +6079,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32));
     } else if (w == vFppdddddddd) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, 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]);
+    } else if (w == vFppppiiiiii) {
+        snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (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), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32));
     } else if (w == vFppppppppii) {
         snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (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), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32));
     } else if (w == vFpppppppppp) {
diff --git a/src/library_list.h b/src/library_list.h
index 44d865e9..c02465b5 100644
--- a/src/library_list.h
+++ b/src/library_list.h
@@ -393,6 +393,10 @@ GO("libmpg123.so.0", mpg123)
 //GO("libtiff.so.5", libtiff)
 GO("libxml2.so.2", xml2)
 
+GO("libavutil.so.56", libavutil56)
+GO("libavformat.so.58", libavformat58)
+GO("libavcodec.so.58", libavcodec58)
+
 #ifdef TERMUX
 GO("libiconv.so", iconv)
 GO("libtermux-exec.so", termuxexec)
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt
index 091687ac..6bfbe20a 100644
--- a/src/wrapped/generated/functions_list.txt
+++ b/src/wrapped/generated/functions_list.txt
@@ -238,6 +238,7 @@
 #() IFED
 #() IFEp
 #() IFip
+#() IFII
 #() IFpi
 #() IFpu
 #() IFpd
@@ -274,6 +275,7 @@
 #() UFii
 #() UFuu
 #() UFUp
+#() UFdi
 #() UFpi
 #() UFpU
 #() UFpL
@@ -449,6 +451,7 @@
 #() vFLup
 #() vFLpL
 #() vFLpp
+#() vFpcu
 #() vFpww
 #() vFpic
 #() vFpii
@@ -498,6 +501,7 @@
 #() vFppp
 #() vFppV
 #() vFpHi
+#() vFSpi
 #() vFSpL
 #() cFpdp
 #() wFppp
@@ -617,6 +621,8 @@
 #() iFSpA
 #() iFbpp
 #() IFiIi
+#() IFIII
+#() IFUUU
 #() IFpIi
 #() IFppi
 #() IFppI
@@ -642,6 +648,8 @@
 #() uFuup
 #() uFufp
 #() uFupu
+#() uFupU
+#() uFupL
 #() uFupp
 #() uFuNN
 #() uFpii
@@ -756,7 +764,9 @@
 #() pFEpA
 #() pFiii
 #() pFiiu
+#() pFiid
 #() pFiip
+#() pFiup
 #() pFiLL
 #() pFipi
 #() pFipL
@@ -801,6 +811,7 @@
 #() pFpuu
 #() pFpuf
 #() pFpul
+#() pFpuL
 #() pFpup
 #() pFpdu
 #() pFpdd
@@ -1081,6 +1092,7 @@
 #() iFuiup
 #() iFuipp
 #() iFuWWp
+#() iFuuip
 #() iFuuuu
 #() iFuupi
 #() iFuupu
@@ -1100,6 +1112,7 @@
 #() iFpiid
 #() iFpiiL
 #() iFpiip
+#() iFpiIi
 #() iFpiCp
 #() iFpiuu
 #() iFpiuL
@@ -1176,12 +1189,14 @@
 #() iFpLpD
 #() iFpLpL
 #() iFpLpp
+#() iFppcc
 #() iFppii
 #() iFppiI
 #() iFppiu
 #() iFppiU
 #() iFppiL
 #() iFppip
+#() iFppIi
 #() iFppIL
 #() iFppCC
 #() iFppuw
@@ -1190,6 +1205,7 @@
 #() iFppul
 #() iFppuL
 #() iFppup
+#() iFppdi
 #() iFppdd
 #() iFppdp
 #() iFppli
@@ -1213,6 +1229,8 @@
 #() iFbUpp
 #() iFbpiU
 #() IFEpIi
+#() IFIIIu
+#() IFIUUu
 #() IFpIip
 #() IFppii
 #() IFppip
@@ -1239,6 +1257,7 @@
 #() uFpuup
 #() uFpupi
 #() uFpupu
+#() uFpupL
 #() uFpupp
 #() uFpubp
 #() uFplup
@@ -1677,6 +1696,7 @@
 #() iFEpppp
 #() iFEpppV
 #() iFEpppA
+#() iFiiiip
 #() iFiiipu
 #() iFiiipp
 #() iFiiupp
@@ -1752,6 +1772,7 @@
 #() iFpupup
 #() iFpupLu
 #() iFpupLp
+#() iFpuppi
 #() iFpuppu
 #() iFpuppL
 #() iFpuppp
@@ -1787,6 +1808,7 @@
 #() iFppipu
 #() iFppipl
 #() iFppipp
+#() iFppIII
 #() iFppWpp
 #() iFppuwp
 #() iFppuip
@@ -1982,6 +2004,7 @@
 #() pFppuip
 #() pFppuuu
 #() pFppuup
+#() pFppuLi
 #() pFppupp
 #() pFppddu
 #() pFppLii
@@ -2103,6 +2126,7 @@
 #() vFpiippp
 #() vFpiUuup
 #() vFpiLppi
+#() vFpipiii
 #() vFpipipp
 #() vFpipipV
 #() vFpipppp
@@ -2160,6 +2184,7 @@
 #() vFpppiip
 #() vFpppiui
 #() vFpppiff
+#() vFpppipi
 #() vFpppipu
 #() vFpppipp
 #() vFpppuii
@@ -2209,6 +2234,7 @@
 #() iFipppLp
 #() iFippppp
 #() iFuiiuup
+#() iFuuIiip
 #() iFupupLp
 #() iFupLpLp
 #() iFdipppL
@@ -2223,6 +2249,8 @@
 #() iFpiiuui
 #() iFpiiupp
 #() iFpiiLip
+#() iFpiipcc
+#() iFpiipii
 #() iFpiipip
 #() iFpiippp
 #() iFpiCCpu
@@ -2460,9 +2488,11 @@
 #() pFppippp
 #() pFppuuuu
 #() pFppuupp
+#() pFppupLi
 #() pFppuppp
 #() pFpplplp
 #() pFpplppp
+#() pFpppiip
 #() pFpppupp
 #() pFpppLii
 #() pFpppLui
@@ -2571,6 +2601,7 @@
 #() vFpLiLiLp
 #() vFpLLiiip
 #() vFpLLuuuu
+#() vFpLLpppp
 #() vFpLpiipi
 #() vFpLppipi
 #() vFppcuupp
@@ -2599,6 +2630,7 @@
 #() vFpppiupi
 #() vFpppippi
 #() vFpppffff
+#() vFppppiii
 #() vFppppiip
 #() vFppppiui
 #() vFpppppip
@@ -2664,6 +2696,7 @@
 #() iFpLpLpLp
 #() iFpLppiii
 #() iFpLppiip
+#() iFppiiiii
 #() iFppiiiip
 #() iFppiiuup
 #() iFppiiLll
@@ -2678,6 +2711,7 @@
 #() iFppuipiL
 #() iFppuippp
 #() iFppuuppp
+#() iFppupupu
 #() iFppupupp
 #() iFppupppp
 #() iFppliupp
@@ -2687,6 +2721,7 @@
 #() iFppLuuii
 #() iFppLLLLu
 #() iFppLpppp
+#() iFpppiiii
 #() iFpppiiup
 #() iFpppippi
 #() iFpppippp
@@ -2877,6 +2912,7 @@
 #() vFpppuiiii
 #() vFpppuulll
 #() vFpppLpppp
+#() vFppppiiii
 #() vFpppppuuu
 #() vFppppppui
 #() vFpppppppp
@@ -2899,6 +2935,7 @@
 #() iFdiippppL
 #() iFpiiiuuup
 #() iFpipiipip
+#() iFpippiiii
 #() iFpippuuui
 #() iFpippuupp
 #() iFpCCWWpWu
@@ -2973,6 +3010,7 @@
 #() LFpLpuuLLu
 #() LFppLpLpLi
 #() pFEupLLLpp
+#() pFEpiipppp
 #() pFEpiuCppp
 #() pFEpuLpupp
 #() pFEppLiiup
@@ -3071,6 +3109,7 @@
 #() vFpplpppppi
 #() vFpppiiiiii
 #() vFpppffffff
+#() vFppppiiiii
 #() vFppppipiip
 #() iFEpiiiiipi
 #() iFEppuppppp
@@ -3175,6 +3214,7 @@
 #() vFuddiiddiip
 #() vFffffffffff
 #() vFpiuippppip
+#() vFpipipippip
 #() vFpuupuuuuuu
 #() vFppiiiiupip
 #() vFppipipippi
@@ -3186,6 +3226,7 @@
 #() vFppuppuiiii
 #() vFppupppiiii
 #() vFppdddddddd
+#() vFppppiiiiii
 #() vFppppppppii
 #() vFpppppppppp
 #() iFEpiiiiippp
@@ -4437,6 +4478,13 @@ wrappedlibasound:
   - snd_mixer_elem_new
 - iFppupp:
   - snd_pcm_hook_add
+wrappedlibavcodec58:
+wrappedlibavformat58:
+- pFpiipppp:
+  - avio_alloc_context
+wrappedlibavutil56:
+- vFp:
+  - av_log_set_callback
 wrappedlibbsd:
 wrappedlibc:
 - vFv:
diff --git a/src/wrapped/generated/wrappedlibavcodec58defs.h b/src/wrapped/generated/wrappedlibavcodec58defs.h
new file mode 100644
index 00000000..42570937
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibavcodec58defs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.5.0.24) *
+ *******************************************************************/
+#ifndef __wrappedlibavcodec58DEFS_H_
+#define __wrappedlibavcodec58DEFS_H_
+
+
+#endif // __wrappedlibavcodec58DEFS_H_
diff --git a/src/wrapped/generated/wrappedlibavcodec58types.h b/src/wrapped/generated/wrappedlibavcodec58types.h
new file mode 100644
index 00000000..568b4788
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibavcodec58types.h
@@ -0,0 +1,17 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.5.0.24) *
+ *******************************************************************/
+#ifndef __wrappedlibavcodec58TYPES_H_
+#define __wrappedlibavcodec58TYPES_H_
+
+#ifndef LIBNAME
+#error You should only #include this file inside a wrapped*.c file
+#endif
+#ifndef ADDED_FUNCTIONS
+#define ADDED_FUNCTIONS() 
+#endif
+
+
+#define SUPER() ADDED_FUNCTIONS()
+
+#endif // __wrappedlibavcodec58TYPES_H_
diff --git a/src/wrapped/generated/wrappedlibavcodec58undefs.h b/src/wrapped/generated/wrappedlibavcodec58undefs.h
new file mode 100644
index 00000000..ed9072ff
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibavcodec58undefs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.5.0.24) *
+ *******************************************************************/
+#ifndef __wrappedlibavcodec58UNDEFS_H_
+#define __wrappedlibavcodec58UNDEFS_H_
+
+
+#endif // __wrappedlibavcodec58UNDEFS_H_
diff --git a/src/wrapped/generated/wrappedlibavformat58defs.h b/src/wrapped/generated/wrappedlibavformat58defs.h
new file mode 100644
index 00000000..4b1d23c6
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibavformat58defs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.5.0.24) *
+ *******************************************************************/
+#ifndef __wrappedlibavformat58DEFS_H_
+#define __wrappedlibavformat58DEFS_H_
+
+
+#endif // __wrappedlibavformat58DEFS_H_
diff --git a/src/wrapped/generated/wrappedlibavformat58types.h b/src/wrapped/generated/wrappedlibavformat58types.h
new file mode 100644
index 00000000..ddb32151
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibavformat58types.h
@@ -0,0 +1,19 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.5.0.24) *
+ *******************************************************************/
+#ifndef __wrappedlibavformat58TYPES_H_
+#define __wrappedlibavformat58TYPES_H_
+
+#ifndef LIBNAME
+#error You should only #include this file inside a wrapped*.c file
+#endif
+#ifndef ADDED_FUNCTIONS
+#define ADDED_FUNCTIONS() 
+#endif
+
+typedef void* (*pFpiipppp_t)(void*, int32_t, int32_t, void*, void*, void*, void*);
+
+#define SUPER() ADDED_FUNCTIONS() \
+	GO(avio_alloc_context, pFpiipppp_t)
+
+#endif // __wrappedlibavformat58TYPES_H_
diff --git a/src/wrapped/generated/wrappedlibavformat58undefs.h b/src/wrapped/generated/wrappedlibavformat58undefs.h
new file mode 100644
index 00000000..b54e35f6
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibavformat58undefs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.5.0.24) *
+ *******************************************************************/
+#ifndef __wrappedlibavformat58UNDEFS_H_
+#define __wrappedlibavformat58UNDEFS_H_
+
+
+#endif // __wrappedlibavformat58UNDEFS_H_
diff --git a/src/wrapped/generated/wrappedlibavutil56defs.h b/src/wrapped/generated/wrappedlibavutil56defs.h
new file mode 100644
index 00000000..964d69df
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibavutil56defs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.5.0.24) *
+ *******************************************************************/
+#ifndef __wrappedlibavutil56DEFS_H_
+#define __wrappedlibavutil56DEFS_H_
+
+
+#endif // __wrappedlibavutil56DEFS_H_
diff --git a/src/wrapped/generated/wrappedlibavutil56types.h b/src/wrapped/generated/wrappedlibavutil56types.h
new file mode 100644
index 00000000..405fba99
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibavutil56types.h
@@ -0,0 +1,19 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.5.0.24) *
+ *******************************************************************/
+#ifndef __wrappedlibavutil56TYPES_H_
+#define __wrappedlibavutil56TYPES_H_
+
+#ifndef LIBNAME
+#error You should only #include this file inside a wrapped*.c file
+#endif
+#ifndef ADDED_FUNCTIONS
+#define ADDED_FUNCTIONS() 
+#endif
+
+typedef void (*vFp_t)(void*);
+
+#define SUPER() ADDED_FUNCTIONS() \
+	GO(av_log_set_callback, vFp_t)
+
+#endif // __wrappedlibavutil56TYPES_H_
diff --git a/src/wrapped/generated/wrappedlibavutil56undefs.h b/src/wrapped/generated/wrappedlibavutil56undefs.h
new file mode 100644
index 00000000..0e62ea00
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibavutil56undefs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.5.0.24) *
+ *******************************************************************/
+#ifndef __wrappedlibavutil56UNDEFS_H_
+#define __wrappedlibavutil56UNDEFS_H_
+
+
+#endif // __wrappedlibavutil56UNDEFS_H_
diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c
index fc2fe51c..0f0264b4 100644
--- a/src/wrapped/generated/wrapper.c
+++ b/src/wrapped/generated/wrapper.c
@@ -283,6 +283,7 @@ typedef int64_t (*IFEf_t)(x64emu_t*, float);
 typedef int64_t (*IFEd_t)(x64emu_t*, double);
 typedef int64_t (*IFEp_t)(x64emu_t*, void*);
 typedef int64_t (*IFip_t)(int32_t, void*);
+typedef int64_t (*IFII_t)(int64_t, int64_t);
 typedef int64_t (*IFpi_t)(void*, int32_t);
 typedef int64_t (*IFpu_t)(void*, uint32_t);
 typedef int64_t (*IFpd_t)(void*, double);
@@ -319,6 +320,7 @@ typedef uint64_t (*UFEp_t)(x64emu_t*, void*);
 typedef uint64_t (*UFii_t)(int32_t, int32_t);
 typedef uint64_t (*UFuu_t)(uint32_t, uint32_t);
 typedef uint64_t (*UFUp_t)(uint64_t, void*);
+typedef uint64_t (*UFdi_t)(double, int32_t);
 typedef uint64_t (*UFpi_t)(void*, int32_t);
 typedef uint64_t (*UFpU_t)(void*, uint64_t);
 typedef uint64_t (*UFpL_t)(void*, uintptr_t);
@@ -484,6 +486,7 @@ typedef void (*vFlpp_t)(intptr_t, void*, void*);
 typedef void (*vFLup_t)(uintptr_t, uint32_t, void*);
 typedef void (*vFLpL_t)(uintptr_t, void*, uintptr_t);
 typedef void (*vFLpp_t)(uintptr_t, void*, void*);
+typedef void (*vFpcu_t)(void*, int8_t, uint32_t);
 typedef void (*vFpww_t)(void*, int16_t, int16_t);
 typedef void (*vFpic_t)(void*, int32_t, int8_t);
 typedef void (*vFpii_t)(void*, int32_t, int32_t);
@@ -533,6 +536,7 @@ typedef void (*vFppL_t)(void*, void*, uintptr_t);
 typedef void (*vFppp_t)(void*, void*, void*);
 typedef void (*vFppV_t)(void*, void*, void*);
 typedef void (*vFpHi_t)(void*, unsigned __int128, int32_t);
+typedef void (*vFSpi_t)(void*, void*, int32_t);
 typedef void (*vFSpL_t)(void*, void*, uintptr_t);
 typedef int8_t (*cFpdp_t)(void*, double, void*);
 typedef int16_t (*wFppp_t)(void*, void*, void*);
@@ -652,6 +656,8 @@ typedef int32_t (*iFSpp_t)(void*, void*, void*);
 typedef int32_t (*iFSpA_t)(void*, void*, void*);
 typedef int32_t (*iFbpp_t)(void*, void*, void*);
 typedef int64_t (*IFiIi_t)(int32_t, int64_t, int32_t);
+typedef int64_t (*IFIII_t)(int64_t, int64_t, int64_t);
+typedef int64_t (*IFUUU_t)(uint64_t, uint64_t, uint64_t);
 typedef int64_t (*IFpIi_t)(void*, int64_t, int32_t);
 typedef int64_t (*IFppi_t)(void*, void*, int32_t);
 typedef int64_t (*IFppI_t)(void*, void*, int64_t);
@@ -677,6 +683,8 @@ typedef uint32_t (*uFuuu_t)(uint32_t, uint32_t, uint32_t);
 typedef uint32_t (*uFuup_t)(uint32_t, uint32_t, void*);
 typedef uint32_t (*uFufp_t)(uint32_t, float, void*);
 typedef uint32_t (*uFupu_t)(uint32_t, void*, uint32_t);
+typedef uint32_t (*uFupU_t)(uint32_t, void*, uint64_t);
+typedef uint32_t (*uFupL_t)(uint32_t, void*, uintptr_t);
 typedef uint32_t (*uFupp_t)(uint32_t, void*, void*);
 typedef uint32_t (*uFuNN_t)(uint32_t, ...);
 typedef uint32_t (*uFpii_t)(void*, int32_t, int32_t);
@@ -788,7 +796,9 @@ typedef void* (*pFEpV_t)(x64emu_t*, void*, void*);
 typedef void* (*pFEpA_t)(x64emu_t*, void*, void*);
 typedef void* (*pFiii_t)(int32_t, int32_t, int32_t);
 typedef void* (*pFiiu_t)(int32_t, int32_t, uint32_t);
+typedef void* (*pFiid_t)(int32_t, int32_t, double);
 typedef void* (*pFiip_t)(int32_t, int32_t, void*);
+typedef void* (*pFiup_t)(int32_t, uint32_t, void*);
 typedef void* (*pFiLL_t)(int32_t, uintptr_t, uintptr_t);
 typedef void* (*pFipi_t)(int32_t, void*, int32_t);
 typedef void* (*pFipL_t)(int32_t, void*, uintptr_t);
@@ -832,6 +842,7 @@ typedef void* (*pFpui_t)(void*, uint32_t, int32_t);
 typedef void* (*pFpuu_t)(void*, uint32_t, uint32_t);
 typedef void* (*pFpuf_t)(void*, uint32_t, float);
 typedef void* (*pFpul_t)(void*, uint32_t, intptr_t);
+typedef void* (*pFpuL_t)(void*, uint32_t, uintptr_t);
 typedef void* (*pFpup_t)(void*, uint32_t, void*);
 typedef void* (*pFpdu_t)(void*, double, uint32_t);
 typedef void* (*pFpdd_t)(void*, double, double);
@@ -1112,6 +1123,7 @@ typedef int32_t (*iFipON_t)(int32_t, void*, int32_t, ...);
 typedef int32_t (*iFuiup_t)(uint32_t, int32_t, uint32_t, void*);
 typedef int32_t (*iFuipp_t)(uint32_t, int32_t, void*, void*);
 typedef int32_t (*iFuWWp_t)(uint32_t, uint16_t, uint16_t, void*);
+typedef int32_t (*iFuuip_t)(uint32_t, uint32_t, int32_t, void*);
 typedef int32_t (*iFuuuu_t)(uint32_t, uint32_t, uint32_t, uint32_t);
 typedef int32_t (*iFuupi_t)(uint32_t, uint32_t, void*, int32_t);
 typedef int32_t (*iFuupu_t)(uint32_t, uint32_t, void*, uint32_t);
@@ -1131,6 +1143,7 @@ typedef int32_t (*iFpiiu_t)(void*, int32_t, int32_t, uint32_t);
 typedef int32_t (*iFpiid_t)(void*, int32_t, int32_t, double);
 typedef int32_t (*iFpiiL_t)(void*, int32_t, int32_t, uintptr_t);
 typedef int32_t (*iFpiip_t)(void*, int32_t, int32_t, void*);
+typedef int32_t (*iFpiIi_t)(void*, int32_t, int64_t, int32_t);
 typedef int32_t (*iFpiCp_t)(void*, int32_t, uint8_t, void*);
 typedef int32_t (*iFpiuu_t)(void*, int32_t, uint32_t, uint32_t);
 typedef int32_t (*iFpiuL_t)(void*, int32_t, uint32_t, uintptr_t);
@@ -1206,12 +1219,14 @@ typedef int32_t (*iFpLpf_t)(void*, uintptr_t, void*, float);
 typedef int32_t (*iFpLpd_t)(void*, uintptr_t, void*, double);
 typedef int32_t (*iFpLpL_t)(void*, uintptr_t, void*, uintptr_t);
 typedef int32_t (*iFpLpp_t)(void*, uintptr_t, void*, void*);
+typedef int32_t (*iFppcc_t)(void*, void*, int8_t, int8_t);
 typedef int32_t (*iFppii_t)(void*, void*, int32_t, int32_t);
 typedef int32_t (*iFppiI_t)(void*, void*, int32_t, int64_t);
 typedef int32_t (*iFppiu_t)(void*, void*, int32_t, uint32_t);
 typedef int32_t (*iFppiU_t)(void*, void*, int32_t, uint64_t);
 typedef int32_t (*iFppiL_t)(void*, void*, int32_t, uintptr_t);
 typedef int32_t (*iFppip_t)(void*, void*, int32_t, void*);
+typedef int32_t (*iFppIi_t)(void*, void*, int64_t, int32_t);
 typedef int32_t (*iFppIL_t)(void*, void*, int64_t, uintptr_t);
 typedef int32_t (*iFppCC_t)(void*, void*, uint8_t, uint8_t);
 typedef int32_t (*iFppuw_t)(void*, void*, uint32_t, int16_t);
@@ -1220,6 +1235,7 @@ typedef int32_t (*iFppuu_t)(void*, void*, uint32_t, uint32_t);
 typedef int32_t (*iFppul_t)(void*, void*, uint32_t, intptr_t);
 typedef int32_t (*iFppuL_t)(void*, void*, uint32_t, uintptr_t);
 typedef int32_t (*iFppup_t)(void*, void*, uint32_t, void*);
+typedef int32_t (*iFppdi_t)(void*, void*, double, int32_t);
 typedef int32_t (*iFppdd_t)(void*, void*, double, double);
 typedef int32_t (*iFppdp_t)(void*, void*, double, void*);
 typedef int32_t (*iFppli_t)(void*, void*, intptr_t, int32_t);
@@ -1243,6 +1259,8 @@ typedef int32_t (*iFbupp_t)(void*, uint32_t, void*, void*);
 typedef int32_t (*iFbUpp_t)(void*, uint64_t, void*, void*);
 typedef int32_t (*iFbpiU_t)(void*, void*, int32_t, uint64_t);
 typedef int64_t (*IFEpIi_t)(x64emu_t*, void*, int64_t, int32_t);
+typedef int64_t (*IFIIIu_t)(int64_t, int64_t, int64_t, uint32_t);
+typedef int64_t (*IFIUUu_t)(int64_t, uint64_t, uint64_t, uint32_t);
 typedef int64_t (*IFpIip_t)(void*, int64_t, int32_t, void*);
 typedef int64_t (*IFppii_t)(void*, void*, int32_t, int32_t);
 typedef int64_t (*IFppip_t)(void*, void*, int32_t, void*);
@@ -1269,6 +1287,7 @@ typedef uint32_t (*uFpCCC_t)(void*, uint8_t, uint8_t, uint8_t);
 typedef uint32_t (*uFpuup_t)(void*, uint32_t, uint32_t, void*);
 typedef uint32_t (*uFpupi_t)(void*, uint32_t, void*, int32_t);
 typedef uint32_t (*uFpupu_t)(void*, uint32_t, void*, uint32_t);
+typedef uint32_t (*uFpupL_t)(void*, uint32_t, void*, uintptr_t);
 typedef uint32_t (*uFpupp_t)(void*, uint32_t, void*, void*);
 typedef uint32_t (*uFpubp_t)(void*, uint32_t, void*, void*);
 typedef uint32_t (*uFplup_t)(void*, intptr_t, uint32_t, void*);
@@ -1706,6 +1725,7 @@ typedef int32_t (*iFEpppL_t)(x64emu_t*, void*, void*, void*, uintptr_t);
 typedef int32_t (*iFEpppp_t)(x64emu_t*, void*, void*, void*, void*);
 typedef int32_t (*iFEpppV_t)(x64emu_t*, void*, void*, void*, void*);
 typedef int32_t (*iFEpppA_t)(x64emu_t*, void*, void*, void*, void*);
+typedef int32_t (*iFiiiip_t)(int32_t, int32_t, int32_t, int32_t, void*);
 typedef int32_t (*iFiiipu_t)(int32_t, int32_t, int32_t, void*, uint32_t);
 typedef int32_t (*iFiiipp_t)(int32_t, int32_t, int32_t, void*, void*);
 typedef int32_t (*iFiiupp_t)(int32_t, int32_t, uint32_t, void*, void*);
@@ -1781,6 +1801,7 @@ typedef int32_t (*iFpupuU_t)(void*, uint32_t, void*, uint32_t, uint64_t);
 typedef int32_t (*iFpupup_t)(void*, uint32_t, void*, uint32_t, void*);
 typedef int32_t (*iFpupLu_t)(void*, uint32_t, void*, uintptr_t, uint32_t);
 typedef int32_t (*iFpupLp_t)(void*, uint32_t, void*, uintptr_t, void*);
+typedef int32_t (*iFpuppi_t)(void*, uint32_t, void*, void*, int32_t);
 typedef int32_t (*iFpuppu_t)(void*, uint32_t, void*, void*, uint32_t);
 typedef int32_t (*iFpuppL_t)(void*, uint32_t, void*, void*, uintptr_t);
 typedef int32_t (*iFpuppp_t)(void*, uint32_t, void*, void*, void*);
@@ -1816,6 +1837,7 @@ typedef int32_t (*iFppipi_t)(void*, void*, int32_t, void*, int32_t);
 typedef int32_t (*iFppipu_t)(void*, void*, int32_t, void*, uint32_t);
 typedef int32_t (*iFppipl_t)(void*, void*, int32_t, void*, intptr_t);
 typedef int32_t (*iFppipp_t)(void*, void*, int32_t, void*, void*);
+typedef int32_t (*iFppIII_t)(void*, void*, int64_t, int64_t, int64_t);
 typedef int32_t (*iFppWpp_t)(void*, void*, uint16_t, void*, void*);
 typedef int32_t (*iFppuwp_t)(void*, void*, uint32_t, int16_t, void*);
 typedef int32_t (*iFppuip_t)(void*, void*, uint32_t, int32_t, void*);
@@ -2011,6 +2033,7 @@ typedef void* (*pFppWpp_t)(void*, void*, uint16_t, void*, void*);
 typedef void* (*pFppuip_t)(void*, void*, uint32_t, int32_t, void*);
 typedef void* (*pFppuuu_t)(void*, void*, uint32_t, uint32_t, uint32_t);
 typedef void* (*pFppuup_t)(void*, void*, uint32_t, uint32_t, void*);
+typedef void* (*pFppuLi_t)(void*, void*, uint32_t, uintptr_t, int32_t);
 typedef void* (*pFppupp_t)(void*, void*, uint32_t, void*, void*);
 typedef void* (*pFppddu_t)(void*, void*, double, double, uint32_t);
 typedef void* (*pFppLii_t)(void*, void*, uintptr_t, int32_t, int32_t);
@@ -2132,6 +2155,7 @@ typedef void (*vFpiippi_t)(void*, int32_t, int32_t, void*, void*, int32_t);
 typedef void (*vFpiippp_t)(void*, int32_t, int32_t, void*, void*, void*);
 typedef void (*vFpiUuup_t)(void*, int32_t, uint64_t, uint32_t, uint32_t, void*);
 typedef void (*vFpiLppi_t)(void*, int32_t, uintptr_t, void*, void*, int32_t);
+typedef void (*vFpipiii_t)(void*, int32_t, void*, int32_t, int32_t, int32_t);
 typedef void (*vFpipipp_t)(void*, int32_t, void*, int32_t, void*, void*);
 typedef void (*vFpipipV_t)(void*, int32_t, void*, int32_t, void*, void*);
 typedef void (*vFpipppp_t)(void*, int32_t, void*, void*, void*, void*);
@@ -2189,6 +2213,7 @@ typedef void (*vFpppiii_t)(void*, void*, void*, int32_t, int32_t, int32_t);
 typedef void (*vFpppiip_t)(void*, void*, void*, int32_t, int32_t, void*);
 typedef void (*vFpppiui_t)(void*, void*, void*, int32_t, uint32_t, int32_t);
 typedef void (*vFpppiff_t)(void*, void*, void*, int32_t, float, float);
+typedef void (*vFpppipi_t)(void*, void*, void*, int32_t, void*, int32_t);
 typedef void (*vFpppipu_t)(void*, void*, void*, int32_t, void*, uint32_t);
 typedef void (*vFpppipp_t)(void*, void*, void*, int32_t, void*, void*);
 typedef void (*vFpppuii_t)(void*, void*, void*, uint32_t, int32_t, int32_t);
@@ -2238,6 +2263,7 @@ typedef int32_t (*iFipuppp_t)(int32_t, void*, uint32_t, void*, void*, void*);
 typedef int32_t (*iFipppLp_t)(int32_t, void*, void*, void*, uintptr_t, void*);
 typedef int32_t (*iFippppp_t)(int32_t, void*, void*, void*, void*, void*);
 typedef int32_t (*iFuiiuup_t)(uint32_t, int32_t, int32_t, uint32_t, uint32_t, void*);
+typedef int32_t (*iFuuIiip_t)(uint32_t, uint32_t, int64_t, int32_t, int32_t, void*);
 typedef int32_t (*iFupupLp_t)(uint32_t, void*, uint32_t, void*, uintptr_t, void*);
 typedef int32_t (*iFupLpLp_t)(uint32_t, void*, uintptr_t, void*, uintptr_t, void*);
 typedef int32_t (*iFdipppL_t)(double, int32_t, void*, void*, void*, uintptr_t);
@@ -2251,6 +2277,8 @@ typedef int32_t (*iFpiiuii_t)(void*, int32_t, int32_t, uint32_t, int32_t, int32_
 typedef int32_t (*iFpiiuui_t)(void*, int32_t, int32_t, uint32_t, uint32_t, int32_t);
 typedef int32_t (*iFpiiupp_t)(void*, int32_t, int32_t, uint32_t, void*, void*);
 typedef int32_t (*iFpiiLip_t)(void*, int32_t, int32_t, uintptr_t, int32_t, void*);
+typedef int32_t (*iFpiipcc_t)(void*, int32_t, int32_t, void*, int8_t, int8_t);
+typedef int32_t (*iFpiipii_t)(void*, int32_t, int32_t, void*, int32_t, int32_t);
 typedef int32_t (*iFpiipip_t)(void*, int32_t, int32_t, void*, int32_t, void*);
 typedef int32_t (*iFpiippp_t)(void*, int32_t, int32_t, void*, void*, void*);
 typedef int32_t (*iFpiCCpu_t)(void*, int32_t, uint8_t, uint8_t, void*, uint32_t);
@@ -2488,9 +2516,11 @@ typedef void* (*pFppippi_t)(void*, void*, int32_t, void*, void*, int32_t);
 typedef void* (*pFppippp_t)(void*, void*, int32_t, void*, void*, void*);
 typedef void* (*pFppuuuu_t)(void*, void*, uint32_t, uint32_t, uint32_t, uint32_t);
 typedef void* (*pFppuupp_t)(void*, void*, uint32_t, uint32_t, void*, void*);
+typedef void* (*pFppupLi_t)(void*, void*, uint32_t, void*, uintptr_t, int32_t);
 typedef void* (*pFppuppp_t)(void*, void*, uint32_t, void*, void*, void*);
 typedef void* (*pFpplplp_t)(void*, void*, intptr_t, void*, intptr_t, void*);
 typedef void* (*pFpplppp_t)(void*, void*, intptr_t, void*, void*, void*);
+typedef void* (*pFpppiip_t)(void*, void*, void*, int32_t, int32_t, void*);
 typedef void* (*pFpppupp_t)(void*, void*, void*, uint32_t, void*, void*);
 typedef void* (*pFpppLii_t)(void*, void*, void*, uintptr_t, int32_t, int32_t);
 typedef void* (*pFpppLui_t)(void*, void*, void*, uintptr_t, uint32_t, int32_t);
@@ -2599,6 +2629,7 @@ typedef void (*vFpLiiuui_t)(void*, uintptr_t, int32_t, int32_t, uint32_t, uint32
 typedef void (*vFpLiLiLp_t)(void*, uintptr_t, int32_t, uintptr_t, int32_t, uintptr_t, void*);
 typedef void (*vFpLLiiip_t)(void*, uintptr_t, uintptr_t, int32_t, int32_t, int32_t, void*);
 typedef void (*vFpLLuuuu_t)(void*, uintptr_t, uintptr_t, uint32_t, uint32_t, uint32_t, uint32_t);
+typedef void (*vFpLLpppp_t)(void*, uintptr_t, uintptr_t, void*, void*, void*, void*);
 typedef void (*vFpLpiipi_t)(void*, uintptr_t, void*, int32_t, int32_t, void*, int32_t);
 typedef void (*vFpLppipi_t)(void*, uintptr_t, void*, void*, int32_t, void*, int32_t);
 typedef void (*vFppcuupp_t)(void*, void*, int8_t, uint32_t, uint32_t, void*, void*);
@@ -2627,6 +2658,7 @@ typedef void (*vFpppiipp_t)(void*, void*, void*, int32_t, int32_t, void*, void*)
 typedef void (*vFpppiupi_t)(void*, void*, void*, int32_t, uint32_t, void*, int32_t);
 typedef void (*vFpppippi_t)(void*, void*, void*, int32_t, void*, void*, int32_t);
 typedef void (*vFpppffff_t)(void*, void*, void*, float, float, float, float);
+typedef void (*vFppppiii_t)(void*, void*, void*, void*, int32_t, int32_t, int32_t);
 typedef void (*vFppppiip_t)(void*, void*, void*, void*, int32_t, int32_t, void*);
 typedef void (*vFppppiui_t)(void*, void*, void*, void*, int32_t, uint32_t, int32_t);
 typedef void (*vFpppppip_t)(void*, void*, void*, void*, void*, int32_t, void*);
@@ -2692,6 +2724,7 @@ typedef int32_t (*iFpLpLpip_t)(void*, uintptr_t, void*, uintptr_t, void*, int32_
 typedef int32_t (*iFpLpLpLp_t)(void*, uintptr_t, void*, uintptr_t, void*, uintptr_t, void*);
 typedef int32_t (*iFpLppiii_t)(void*, uintptr_t, void*, void*, int32_t, int32_t, int32_t);
 typedef int32_t (*iFpLppiip_t)(void*, uintptr_t, void*, void*, int32_t, int32_t, void*);
+typedef int32_t (*iFppiiiii_t)(void*, void*, int32_t, int32_t, int32_t, int32_t, int32_t);
 typedef int32_t (*iFppiiiip_t)(void*, void*, int32_t, int32_t, int32_t, int32_t, void*);
 typedef int32_t (*iFppiiuup_t)(void*, void*, int32_t, int32_t, uint32_t, uint32_t, void*);
 typedef int32_t (*iFppiiLll_t)(void*, void*, int32_t, int32_t, uintptr_t, intptr_t, intptr_t);
@@ -2706,6 +2739,7 @@ typedef int32_t (*iFppipppp_t)(void*, void*, int32_t, void*, void*, void*, void*
 typedef int32_t (*iFppuipiL_t)(void*, void*, uint32_t, int32_t, void*, int32_t, uintptr_t);
 typedef int32_t (*iFppuippp_t)(void*, void*, uint32_t, int32_t, void*, void*, void*);
 typedef int32_t (*iFppuuppp_t)(void*, void*, uint32_t, uint32_t, void*, void*, void*);
+typedef int32_t (*iFppupupu_t)(void*, void*, uint32_t, void*, uint32_t, void*, uint32_t);
 typedef int32_t (*iFppupupp_t)(void*, void*, uint32_t, void*, uint32_t, void*, void*);
 typedef int32_t (*iFppupppp_t)(void*, void*, uint32_t, void*, void*, void*, void*);
 typedef int32_t (*iFppliupp_t)(void*, void*, intptr_t, int32_t, uint32_t, void*, void*);
@@ -2715,6 +2749,7 @@ typedef int32_t (*iFppLippp_t)(void*, void*, uintptr_t, int32_t, void*, void*, v
 typedef int32_t (*iFppLuuii_t)(void*, void*, uintptr_t, uint32_t, uint32_t, int32_t, int32_t);
 typedef int32_t (*iFppLLLLu_t)(void*, void*, uintptr_t, uintptr_t, uintptr_t, uintptr_t, uint32_t);
 typedef int32_t (*iFppLpppp_t)(void*, void*, uintptr_t, void*, void*, void*, void*);
+typedef int32_t (*iFpppiiii_t)(void*, void*, void*, int32_t, int32_t, int32_t, int32_t);
 typedef int32_t (*iFpppiiup_t)(void*, void*, void*, int32_t, int32_t, uint32_t, void*);
 typedef int32_t (*iFpppippi_t)(void*, void*, void*, int32_t, void*, void*, int32_t);
 typedef int32_t (*iFpppippp_t)(void*, void*, void*, int32_t, void*, void*, void*);
@@ -2905,6 +2940,7 @@ typedef void (*vFpppipppu_t)(void*, void*, void*, int32_t, void*, void*, void*,
 typedef void (*vFpppuiiii_t)(void*, void*, void*, uint32_t, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFpppuulll_t)(void*, void*, void*, uint32_t, uint32_t, intptr_t, intptr_t, intptr_t);
 typedef void (*vFpppLpppp_t)(void*, void*, void*, uintptr_t, void*, void*, void*, void*);
+typedef void (*vFppppiiii_t)(void*, void*, void*, void*, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFpppppuuu_t)(void*, void*, void*, void*, void*, uint32_t, uint32_t, uint32_t);
 typedef void (*vFppppppui_t)(void*, void*, void*, void*, void*, void*, uint32_t, int32_t);
 typedef void (*vFpppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*);
@@ -2927,6 +2963,7 @@ typedef int32_t (*iFupipppip_t)(uint32_t, void*, int32_t, void*, void*, void*, i
 typedef int32_t (*iFdiippppL_t)(double, int32_t, int32_t, void*, void*, void*, void*, uintptr_t);
 typedef int32_t (*iFpiiiuuup_t)(void*, int32_t, int32_t, int32_t, uint32_t, uint32_t, uint32_t, void*);
 typedef int32_t (*iFpipiipip_t)(void*, int32_t, void*, int32_t, int32_t, void*, int32_t, void*);
+typedef int32_t (*iFpippiiii_t)(void*, int32_t, void*, void*, int32_t, int32_t, int32_t, int32_t);
 typedef int32_t (*iFpippuuui_t)(void*, int32_t, void*, void*, uint32_t, uint32_t, uint32_t, int32_t);
 typedef int32_t (*iFpippuupp_t)(void*, int32_t, void*, void*, uint32_t, uint32_t, void*, void*);
 typedef int32_t (*iFpCCWWpWu_t)(void*, uint8_t, uint8_t, uint16_t, uint16_t, void*, uint16_t, uint32_t);
@@ -3001,6 +3038,7 @@ typedef uintptr_t (*LFEpuuuppp_t)(x64emu_t*, void*, uint32_t, uint32_t, uint32_t
 typedef uintptr_t (*LFpLpuuLLu_t)(void*, uintptr_t, void*, uint32_t, uint32_t, uintptr_t, uintptr_t, uint32_t);
 typedef uintptr_t (*LFppLpLpLi_t)(void*, void*, uintptr_t, void*, uintptr_t, void*, uintptr_t, int32_t);
 typedef void* (*pFEupLLLpp_t)(x64emu_t*, uint32_t, void*, uintptr_t, uintptr_t, uintptr_t, void*, void*);
+typedef void* (*pFEpiipppp_t)(x64emu_t*, void*, int32_t, int32_t, void*, void*, void*, void*);
 typedef void* (*pFEpiuCppp_t)(x64emu_t*, void*, int32_t, uint32_t, uint8_t, void*, void*, void*);
 typedef void* (*pFEpuLpupp_t)(x64emu_t*, void*, uint32_t, uintptr_t, void*, uint32_t, void*, void*);
 typedef void* (*pFEppLiiup_t)(x64emu_t*, void*, void*, uintptr_t, int32_t, int32_t, uint32_t, void*);
@@ -3098,6 +3136,7 @@ typedef void (*vFppddddudd_t)(void*, void*, double, double, double, double, uint
 typedef void (*vFpplpppppi_t)(void*, void*, intptr_t, void*, void*, void*, void*, void*, int32_t);
 typedef void (*vFpppiiiiii_t)(void*, void*, void*, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFpppffffff_t)(void*, void*, void*, float, float, float, float, float, float);
+typedef void (*vFppppiiiii_t)(void*, void*, void*, void*, int32_t, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFppppipiip_t)(void*, void*, void*, void*, int32_t, void*, int32_t, int32_t, void*);
 typedef int32_t (*iFEpiiiiipi_t)(x64emu_t*, void*, int32_t, int32_t, int32_t, int32_t, int32_t, void*, int32_t);
 typedef int32_t (*iFEppuppppp_t)(x64emu_t*, void*, void*, uint32_t, void*, void*, void*, void*, void*);
@@ -3202,6 +3241,7 @@ typedef void (*vFuffiiffiip_t)(uint32_t, float, float, int32_t, int32_t, float,
 typedef void (*vFuddiiddiip_t)(uint32_t, double, double, int32_t, int32_t, double, double, int32_t, int32_t, void*);
 typedef void (*vFffffffffff_t)(float, float, float, float, float, float, float, float, float, float);
 typedef void (*vFpiuippppip_t)(void*, int32_t, uint32_t, int32_t, void*, void*, void*, void*, int32_t, void*);
+typedef void (*vFpipipippip_t)(void*, int32_t, void*, int32_t, void*, int32_t, void*, void*, int32_t, void*);
 typedef void (*vFpuupuuuuuu_t)(void*, uint32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
 typedef void (*vFppiiiiupip_t)(void*, void*, int32_t, int32_t, int32_t, int32_t, uint32_t, void*, int32_t, void*);
 typedef void (*vFppipipippi_t)(void*, void*, int32_t, void*, int32_t, void*, int32_t, void*, void*, int32_t);
@@ -3213,6 +3253,7 @@ typedef void (*vFppuuppppii_t)(void*, void*, uint32_t, uint32_t, void*, void*, v
 typedef void (*vFppuppuiiii_t)(void*, void*, uint32_t, void*, void*, uint32_t, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFppupppiiii_t)(void*, void*, uint32_t, void*, void*, void*, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFppdddddddd_t)(void*, void*, double, double, double, double, double, double, double, double);
+typedef void (*vFppppiiiiii_t)(void*, void*, void*, void*, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFppppppppii_t)(void*, void*, void*, void*, void*, void*, void*, void*, int32_t, int32_t);
 typedef void (*vFpppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*);
 typedef int32_t (*iFEpiiiiippp_t)(x64emu_t*, void*, int32_t, int32_t, int32_t, int32_t, int32_t, void*, void*, void*);
@@ -3741,6 +3782,7 @@ void IFEf(x64emu_t *emu, uintptr_t fcn) { IFEf_t fn = (IFEf_t)fcn; S_RAX=(int64_
 void IFEd(x64emu_t *emu, uintptr_t fcn) { IFEd_t fn = (IFEd_t)fcn; S_RAX=(int64_t)fn(emu, emu->xmm[0].d[0]); }
 void IFEp(x64emu_t *emu, uintptr_t fcn) { IFEp_t fn = (IFEp_t)fcn; S_RAX=(int64_t)fn(emu, (void*)R_RDI); }
 void IFip(x64emu_t *emu, uintptr_t fcn) { IFip_t fn = (IFip_t)fcn; S_RAX=(int64_t)fn((int32_t)R_RDI, (void*)R_RSI); }
+void IFII(x64emu_t *emu, uintptr_t fcn) { IFII_t fn = (IFII_t)fcn; S_RAX=(int64_t)fn((int64_t)R_RDI, (int64_t)R_RSI); }
 void IFpi(x64emu_t *emu, uintptr_t fcn) { IFpi_t fn = (IFpi_t)fcn; S_RAX=(int64_t)fn((void*)R_RDI, (int32_t)R_RSI); }
 void IFpu(x64emu_t *emu, uintptr_t fcn) { IFpu_t fn = (IFpu_t)fcn; S_RAX=(int64_t)fn((void*)R_RDI, (uint32_t)R_RSI); }
 void IFpd(x64emu_t *emu, uintptr_t fcn) { IFpd_t fn = (IFpd_t)fcn; S_RAX=(int64_t)fn((void*)R_RDI, emu->xmm[0].d[0]); }
@@ -3777,6 +3819,7 @@ void UFEp(x64emu_t *emu, uintptr_t fcn) { UFEp_t fn = (UFEp_t)fcn; R_RAX=fn(emu,
 void UFii(x64emu_t *emu, uintptr_t fcn) { UFii_t fn = (UFii_t)fcn; R_RAX=fn((int32_t)R_RDI, (int32_t)R_RSI); }
 void UFuu(x64emu_t *emu, uintptr_t fcn) { UFuu_t fn = (UFuu_t)fcn; R_RAX=fn((uint32_t)R_RDI, (uint32_t)R_RSI); }
 void UFUp(x64emu_t *emu, uintptr_t fcn) { UFUp_t fn = (UFUp_t)fcn; R_RAX=fn((uint64_t)R_RDI, (void*)R_RSI); }
+void UFdi(x64emu_t *emu, uintptr_t fcn) { UFdi_t fn = (UFdi_t)fcn; R_RAX=fn(emu->xmm[0].d[0], (int32_t)R_RDI); }
 void UFpi(x64emu_t *emu, uintptr_t fcn) { UFpi_t fn = (UFpi_t)fcn; R_RAX=fn((void*)R_RDI, (int32_t)R_RSI); }
 void UFpU(x64emu_t *emu, uintptr_t fcn) { UFpU_t fn = (UFpU_t)fcn; R_RAX=fn((void*)R_RDI, (uint64_t)R_RSI); }
 void UFpL(x64emu_t *emu, uintptr_t fcn) { UFpL_t fn = (UFpL_t)fcn; R_RAX=fn((void*)R_RDI, (uintptr_t)R_RSI); }
@@ -3942,6 +3985,7 @@ void vFlpp(x64emu_t *emu, uintptr_t fcn) { vFlpp_t fn = (vFlpp_t)fcn; fn((intptr
 void vFLup(x64emu_t *emu, uintptr_t fcn) { vFLup_t fn = (vFLup_t)fcn; fn((uintptr_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX); }
 void vFLpL(x64emu_t *emu, uintptr_t fcn) { vFLpL_t fn = (vFLpL_t)fcn; fn((uintptr_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); }
 void vFLpp(x64emu_t *emu, uintptr_t fcn) { vFLpp_t fn = (vFLpp_t)fcn; fn((uintptr_t)R_RDI, (void*)R_RSI, (void*)R_RDX); }
+void vFpcu(x64emu_t *emu, uintptr_t fcn) { vFpcu_t fn = (vFpcu_t)fcn; fn((void*)R_RDI, (int8_t)R_RSI, (uint32_t)R_RDX); }
 void vFpww(x64emu_t *emu, uintptr_t fcn) { vFpww_t fn = (vFpww_t)fcn; fn((void*)R_RDI, (int16_t)R_RSI, (int16_t)R_RDX); }
 void vFpic(x64emu_t *emu, uintptr_t fcn) { vFpic_t fn = (vFpic_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (int8_t)R_RDX); }
 void vFpii(x64emu_t *emu, uintptr_t fcn) { vFpii_t fn = (vFpii_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX); }
@@ -3991,6 +4035,7 @@ void vFppL(x64emu_t *emu, uintptr_t fcn) { vFppL_t fn = (vFppL_t)fcn; fn((void*)
 void vFppp(x64emu_t *emu, uintptr_t fcn) { vFppp_t fn = (vFppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); }
 void vFppV(x64emu_t *emu, uintptr_t fcn) { vFppV_t fn = (vFppV_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)(R_RSP + 8)); }
 void vFpHi(x64emu_t *emu, uintptr_t fcn) { vFpHi_t fn = (vFpHi_t)fcn; fn((void*)R_RDI, (unsigned __int128)R_RSI + ((unsigned __int128)R_RDX << 64), (int32_t)R_RCX); }
+void vFSpi(x64emu_t *emu, uintptr_t fcn) { vFSpi_t fn = (vFSpi_t)fcn; fn(io_convert((void*)R_RDI), (void*)R_RSI, (int32_t)R_RDX); }
 void vFSpL(x64emu_t *emu, uintptr_t fcn) { vFSpL_t fn = (vFSpL_t)fcn; fn(io_convert((void*)R_RDI), (void*)R_RSI, (uintptr_t)R_RDX); }
 void cFpdp(x64emu_t *emu, uintptr_t fcn) { cFpdp_t fn = (cFpdp_t)fcn; R_RAX=(uint8_t)fn((void*)R_RDI, emu->xmm[0].d[0], (void*)R_RSI); }
 void wFppp(x64emu_t *emu, uintptr_t fcn) { wFppp_t fn = (wFppp_t)fcn; R_RAX=(uint16_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); }
@@ -4110,6 +4155,8 @@ void iFSpp(x64emu_t *emu, uintptr_t fcn) { iFSpp_t fn = (iFSpp_t)fcn; R_RAX=(uin
 void iFSpA(x64emu_t *emu, uintptr_t fcn) { iFSpA_t fn = (iFSpA_t)fcn; R_RAX=(uint32_t)fn(io_convert((void*)R_RDI), (void*)R_RSI, (void*)R_RDX); }
 void iFbpp(x64emu_t *emu, uintptr_t fcn) { iFbpp_t fn = (iFbpp_t)fcn; void *aligned_xcb = align_xcb_connection((void*)R_RDI); R_RAX=(uint32_t)fn(aligned_xcb, (void*)R_RSI, (void*)R_RDX); unalign_xcb_connection(aligned_xcb, (void*)R_RDI); }
 void IFiIi(x64emu_t *emu, uintptr_t fcn) { IFiIi_t fn = (IFiIi_t)fcn; S_RAX=(int64_t)fn((int32_t)R_RDI, (int64_t)R_RSI, (int32_t)R_RDX); }
+void IFIII(x64emu_t *emu, uintptr_t fcn) { IFIII_t fn = (IFIII_t)fcn; S_RAX=(int64_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); }
+void IFUUU(x64emu_t *emu, uintptr_t fcn) { IFUUU_t fn = (IFUUU_t)fcn; S_RAX=(int64_t)fn((uint64_t)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX); }
 void IFpIi(x64emu_t *emu, uintptr_t fcn) { IFpIi_t fn = (IFpIi_t)fcn; S_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int32_t)R_RDX); }
 void IFppi(x64emu_t *emu, uintptr_t fcn) { IFppi_t fn = (IFppi_t)fcn; S_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX); }
 void IFppI(x64emu_t *emu, uintptr_t fcn) { IFppI_t fn = (IFppI_t)fcn; S_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX); }
@@ -4135,6 +4182,8 @@ void uFuuu(x64emu_t *emu, uintptr_t fcn) { uFuuu_t fn = (uFuuu_t)fcn; R_RAX=(uin
 void uFuup(x64emu_t *emu, uintptr_t fcn) { uFuup_t fn = (uFuup_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX); }
 void uFufp(x64emu_t *emu, uintptr_t fcn) { uFufp_t fn = (uFufp_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, emu->xmm[0].f[0], (void*)R_RSI); }
 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 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, (uint64_t)R_RDX); }
+void uFupL(x64emu_t *emu, uintptr_t fcn) { uFupL_t fn = (uFupL_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (void*)R_RSI, (uintptr_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 uFuNN(x64emu_t *emu, uintptr_t fcn) { uFuNN_t fn = (uFuNN_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (void*)R_RSI, (void*)R_RDX); }
 void uFpii(x64emu_t *emu, uintptr_t fcn) { uFpii_t fn = (uFpii_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX); }
@@ -4246,7 +4295,9 @@ void pFEpV(x64emu_t *emu, uintptr_t fcn) { pFEpV_t fn = (pFEpV_t)fcn; R_RAX=(uin
 void pFEpA(x64emu_t *emu, uintptr_t fcn) { pFEpA_t fn = (pFEpA_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI); }
 void pFiii(x64emu_t *emu, uintptr_t fcn) { pFiii_t fn = (pFiii_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX); }
 void pFiiu(x64emu_t *emu, uintptr_t fcn) { pFiiu_t fn = (pFiiu_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX); }
+void pFiid(x64emu_t *emu, uintptr_t fcn) { pFiid_t fn = (pFiid_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (int32_t)R_RSI, emu->xmm[0].d[0]); }
 void pFiip(x64emu_t *emu, uintptr_t fcn) { pFiip_t fn = (pFiip_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX); }
+void pFiup(x64emu_t *emu, uintptr_t fcn) { pFiup_t fn = (pFiup_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX); }
 void pFiLL(x64emu_t *emu, uintptr_t fcn) { pFiLL_t fn = (pFiLL_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX); }
 void pFipi(x64emu_t *emu, uintptr_t fcn) { pFipi_t fn = (pFipi_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX); }
 void pFipL(x64emu_t *emu, uintptr_t fcn) { pFipL_t fn = (pFipL_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); }
@@ -4290,6 +4341,7 @@ void pFpui(x64emu_t *emu, uintptr_t fcn) { pFpui_t fn = (pFpui_t)fcn; R_RAX=(uin
 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 pFpuf(x64emu_t *emu, uintptr_t fcn) { pFpuf_t fn = (pFpuf_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, emu->xmm[0].f[0]); }
 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, (intptr_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 pFpdu(x64emu_t *emu, uintptr_t fcn) { pFpdu_t fn = (pFpdu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, emu->xmm[0].d[0], (uint32_t)R_RSI); }
 void pFpdd(x64emu_t *emu, uintptr_t fcn) { pFpdd_t fn = (pFpdd_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0]); }
@@ -4570,6 +4622,7 @@ void iFipON(x64emu_t *emu, uintptr_t fcn) { iFipON_t fn = (iFipON_t)fcn; R_RAX=(
 void iFuiup(x64emu_t *emu, uintptr_t fcn) { iFuiup_t fn = (iFuiup_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); }
 void iFuipp(x64emu_t *emu, uintptr_t fcn) { iFuipp_t fn = (iFuipp_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void iFuWWp(x64emu_t *emu, uintptr_t fcn) { iFuWWp_t fn = (iFuWWp_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (uint16_t)R_RSI, (uint16_t)R_RDX, (void*)R_RCX); }
+void iFuuip(x64emu_t *emu, uintptr_t fcn) { iFuuip_t fn = (iFuuip_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX); }
 void iFuuuu(x64emu_t *emu, uintptr_t fcn) { iFuuuu_t fn = (iFuuuu_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX); }
 void iFuupi(x64emu_t *emu, uintptr_t fcn) { iFuupi_t fn = (iFuupi_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX); }
 void iFuupu(x64emu_t *emu, uintptr_t fcn) { iFuupu_t fn = (iFuupu_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX); }
@@ -4589,6 +4642,7 @@ void iFpiiu(x64emu_t *emu, uintptr_t fcn) { iFpiiu_t fn = (iFpiiu_t)fcn; R_RAX=(
 void iFpiid(x64emu_t *emu, uintptr_t fcn) { iFpiid_t fn = (iFpiid_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, emu->xmm[0].d[0]); }
 void iFpiiL(x64emu_t *emu, uintptr_t fcn) { iFpiiL_t fn = (iFpiiL_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uintptr_t)R_RCX); }
 void iFpiip(x64emu_t *emu, uintptr_t fcn) { iFpiip_t fn = (iFpiip_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX); }
+void iFpiIi(x64emu_t *emu, uintptr_t fcn) { iFpiIi_t fn = (iFpiIi_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int64_t)R_RDX, (int32_t)R_RCX); }
 void iFpiCp(x64emu_t *emu, uintptr_t fcn) { iFpiCp_t fn = (iFpiCp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (uint8_t)R_RDX, (void*)R_RCX); }
 void iFpiuu(x64emu_t *emu, uintptr_t fcn) { iFpiuu_t fn = (iFpiuu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX); }
 void iFpiuL(x64emu_t *emu, uintptr_t fcn) { iFpiuL_t fn = (iFpiuL_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (uintptr_t)R_RCX); }
@@ -4664,12 +4718,14 @@ void iFpLpf(x64emu_t *emu, uintptr_t fcn) { iFpLpf_t fn = (iFpLpf_t)fcn; R_RAX=(
 void iFpLpd(x64emu_t *emu, uintptr_t fcn) { iFpLpd_t fn = (iFpLpd_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, emu->xmm[0].d[0]); }
 void iFpLpL(x64emu_t *emu, uintptr_t fcn) { iFpLpL_t fn = (iFpLpL_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); }
 void iFpLpp(x64emu_t *emu, uintptr_t fcn) { iFpLpp_t fn = (iFpLpp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX); }
+void iFppcc(x64emu_t *emu, uintptr_t fcn) { iFppcc_t fn = (iFppcc_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int8_t)R_RDX, (int8_t)R_RCX); }
 void iFppii(x64emu_t *emu, uintptr_t fcn) { iFppii_t fn = (iFppii_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); }
 void iFppiI(x64emu_t *emu, uintptr_t fcn) { iFppiI_t fn = (iFppiI_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int64_t)R_RCX); }
 void iFppiu(x64emu_t *emu, uintptr_t fcn) { iFppiu_t fn = (iFppiu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX); }
 void iFppiU(x64emu_t *emu, uintptr_t fcn) { iFppiU_t fn = (iFppiU_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (uint64_t)R_RCX); }
 void iFppiL(x64emu_t *emu, uintptr_t fcn) { iFppiL_t fn = (iFppiL_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (uintptr_t)R_RCX); }
 void iFppip(x64emu_t *emu, uintptr_t fcn) { iFppip_t fn = (iFppip_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX); }
+void iFppIi(x64emu_t *emu, uintptr_t fcn) { iFppIi_t fn = (iFppIi_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int32_t)R_RCX); }
 void iFppIL(x64emu_t *emu, uintptr_t fcn) { iFppIL_t fn = (iFppIL_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uintptr_t)R_RCX); }
 void iFppCC(x64emu_t *emu, uintptr_t fcn) { iFppCC_t fn = (iFppCC_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint8_t)R_RDX, (uint8_t)R_RCX); }
 void iFppuw(x64emu_t *emu, uintptr_t fcn) { iFppuw_t fn = (iFppuw_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int16_t)R_RCX); }
@@ -4678,6 +4734,7 @@ void iFppuu(x64emu_t *emu, uintptr_t fcn) { iFppuu_t fn = (iFppuu_t)fcn; R_RAX=(
 void iFppul(x64emu_t *emu, uintptr_t fcn) { iFppul_t fn = (iFppul_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (intptr_t)R_RCX); }
 void iFppuL(x64emu_t *emu, uintptr_t fcn) { iFppuL_t fn = (iFppuL_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uintptr_t)R_RCX); }
 void iFppup(x64emu_t *emu, uintptr_t fcn) { iFppup_t fn = (iFppup_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); }
+void iFppdi(x64emu_t *emu, uintptr_t fcn) { iFppdi_t fn = (iFppdi_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], (int32_t)R_RDX); }
 void iFppdd(x64emu_t *emu, uintptr_t fcn) { iFppdd_t fn = (iFppdd_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], emu->xmm[1].d[0]); }
 void iFppdp(x64emu_t *emu, uintptr_t fcn) { iFppdp_t fn = (iFppdp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], (void*)R_RDX); }
 void iFppli(x64emu_t *emu, uintptr_t fcn) { iFppli_t fn = (iFppli_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (int32_t)R_RCX); }
@@ -4701,6 +4758,8 @@ void iFbupp(x64emu_t *emu, uintptr_t fcn) { iFbupp_t fn = (iFbupp_t)fcn; void *a
 void iFbUpp(x64emu_t *emu, uintptr_t fcn) { iFbUpp_t fn = (iFbUpp_t)fcn; void *aligned_xcb = align_xcb_connection((void*)R_RDI); R_RAX=(uint32_t)fn(aligned_xcb, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); unalign_xcb_connection(aligned_xcb, (void*)R_RDI); }
 void iFbpiU(x64emu_t *emu, uintptr_t fcn) { iFbpiU_t fn = (iFbpiU_t)fcn; void *aligned_xcb = align_xcb_connection((void*)R_RDI); R_RAX=(uint32_t)fn(aligned_xcb, (void*)R_RSI, (int32_t)R_RDX, (uint64_t)R_RCX); unalign_xcb_connection(aligned_xcb, (void*)R_RDI); }
 void IFEpIi(x64emu_t *emu, uintptr_t fcn) { IFEpIi_t fn = (IFEpIi_t)fcn; S_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int32_t)R_RDX); }
+void IFIIIu(x64emu_t *emu, uintptr_t fcn) { IFIIIu_t fn = (IFIIIu_t)fcn; S_RAX=(int64_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (uint32_t)R_RCX); }
+void IFIUUu(x64emu_t *emu, uintptr_t fcn) { IFIUUu_t fn = (IFIUUu_t)fcn; S_RAX=(int64_t)fn((int64_t)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint32_t)R_RCX); }
 void IFpIip(x64emu_t *emu, uintptr_t fcn) { IFpIip_t fn = (IFpIip_t)fcn; S_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX); }
 void IFppii(x64emu_t *emu, uintptr_t fcn) { IFppii_t fn = (IFppii_t)fcn; S_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); }
 void IFppip(x64emu_t *emu, uintptr_t fcn) { IFppip_t fn = (IFppip_t)fcn; S_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX); }
@@ -4727,6 +4786,7 @@ void uFpCCC(x64emu_t *emu, uintptr_t fcn) { uFpCCC_t fn = (uFpCCC_t)fcn; R_RAX=(
 void uFpuup(x64emu_t *emu, uintptr_t fcn) { uFpuup_t fn = (uFpuup_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); }
 void uFpupi(x64emu_t *emu, uintptr_t fcn) { uFpupi_t fn = (uFpupi_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX); }
 void uFpupu(x64emu_t *emu, uintptr_t fcn) { uFpupu_t fn = (uFpupu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX); }
+void uFpupL(x64emu_t *emu, uintptr_t fcn) { uFpupL_t fn = (uFpupL_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); }
 void uFpupp(x64emu_t *emu, uintptr_t fcn) { uFpupp_t fn = (uFpupp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void uFpubp(x64emu_t *emu, uintptr_t fcn) { uFpubp_t fn = (uFpubp_t)fcn; void *aligned_xcb = align_xcb_connection((void*)R_RDX); R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, aligned_xcb, (void*)R_RCX); unalign_xcb_connection(aligned_xcb, (void*)R_RDX); }
 void uFplup(x64emu_t *emu, uintptr_t fcn) { uFplup_t fn = (uFplup_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (intptr_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); }
@@ -5164,6 +5224,7 @@ void iFEpppL(x64emu_t *emu, uintptr_t fcn) { iFEpppL_t fn = (iFEpppL_t)fcn; R_RA
 void iFEpppp(x64emu_t *emu, uintptr_t fcn) { iFEpppp_t fn = (iFEpppp_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void iFEpppV(x64emu_t *emu, uintptr_t fcn) { iFEpppV_t fn = (iFEpppV_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)(R_RSP + 8)); }
 void iFEpppA(x64emu_t *emu, uintptr_t fcn) { iFEpppA_t fn = (iFEpppA_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); }
+void iFiiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiip_t fn = (iFiiiip_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); }
 void iFiiipu(x64emu_t *emu, uintptr_t fcn) { iFiiipu_t fn = (iFiiipu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8); }
 void iFiiipp(x64emu_t *emu, uintptr_t fcn) { iFiiipp_t fn = (iFiiipp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void iFiiupp(x64emu_t *emu, uintptr_t fcn) { iFiiupp_t fn = (iFiiupp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
@@ -5239,6 +5300,7 @@ void iFpupuU(x64emu_t *emu, uintptr_t fcn) { iFpupuU_t fn = (iFpupuU_t)fcn; R_RA
 void iFpupup(x64emu_t *emu, uintptr_t fcn) { iFpupup_t fn = (iFpupup_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (void*)R_R8); }
 void iFpupLu(x64emu_t *emu, uintptr_t fcn) { iFpupLu_t fn = (iFpupLu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (uint32_t)R_R8); }
 void iFpupLp(x64emu_t *emu, uintptr_t fcn) { iFpupLp_t fn = (iFpupLp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (void*)R_R8); }
+void iFpuppi(x64emu_t *emu, uintptr_t fcn) { iFpuppi_t fn = (iFpuppi_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8); }
 void iFpuppu(x64emu_t *emu, uintptr_t fcn) { iFpuppu_t fn = (iFpuppu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint32_t)R_R8); }
 void iFpuppL(x64emu_t *emu, uintptr_t fcn) { iFpuppL_t fn = (iFpuppL_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uintptr_t)R_R8); }
 void iFpuppp(x64emu_t *emu, uintptr_t fcn) { iFpuppp_t fn = (iFpuppp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); }
@@ -5274,6 +5336,7 @@ void iFppipi(x64emu_t *emu, uintptr_t fcn) { iFppipi_t fn = (iFppipi_t)fcn; R_RA
 void iFppipu(x64emu_t *emu, uintptr_t fcn) { iFppipu_t fn = (iFppipu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8); }
 void iFppipl(x64emu_t *emu, uintptr_t fcn) { iFppipl_t fn = (iFppipl_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (intptr_t)R_R8); }
 void iFppipp(x64emu_t *emu, uintptr_t fcn) { iFppipp_t fn = (iFppipp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
+void iFppIII(x64emu_t *emu, uintptr_t fcn) { iFppIII_t fn = (iFppIII_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); }
 void iFppWpp(x64emu_t *emu, uintptr_t fcn) { iFppWpp_t fn = (iFppWpp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint16_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void iFppuwp(x64emu_t *emu, uintptr_t fcn) { iFppuwp_t fn = (iFppuwp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int16_t)R_RCX, (void*)R_R8); }
 void iFppuip(x64emu_t *emu, uintptr_t fcn) { iFppuip_t fn = (iFppuip_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); }
@@ -5469,6 +5532,7 @@ void pFppWpp(x64emu_t *emu, uintptr_t fcn) { pFppWpp_t fn = (pFppWpp_t)fcn; R_RA
 void pFppuip(x64emu_t *emu, uintptr_t fcn) { pFppuip_t fn = (pFppuip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)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); }
 void pFppuup(x64emu_t *emu, uintptr_t fcn) { pFppuup_t fn = (pFppuup_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 pFppuLi(x64emu_t *emu, uintptr_t fcn) { pFppuLi_t fn = (pFppuLi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uintptr_t)R_RCX, (int32_t)R_R8); }
 void pFppupp(x64emu_t *emu, uintptr_t fcn) { pFppupp_t fn = (pFppupp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8); }
 void pFppddu(x64emu_t *emu, uintptr_t fcn) { pFppddu_t fn = (pFppddu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], emu->xmm[1].d[0], (uint32_t)R_RDX); }
 void pFppLii(x64emu_t *emu, uintptr_t fcn) { pFppLii_t fn = (pFppLii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8); }
@@ -5590,6 +5654,7 @@ void vFpiippi(x64emu_t *emu, uintptr_t fcn) { vFpiippi_t fn = (vFpiippi_t)fcn; f
 void vFpiippp(x64emu_t *emu, uintptr_t fcn) { vFpiippp_t fn = (vFpiippp_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void vFpiUuup(x64emu_t *emu, uintptr_t fcn) { vFpiUuup_t fn = (vFpiUuup_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (uint64_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9); }
 void vFpiLppi(x64emu_t *emu, uintptr_t fcn) { vFpiLppi_t fn = (vFpiLppi_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int32_t)R_R9); }
+void vFpipiii(x64emu_t *emu, uintptr_t fcn) { vFpipiii_t fn = (vFpipiii_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9); }
 void vFpipipp(x64emu_t *emu, uintptr_t fcn) { vFpipipp_t fn = (vFpipipp_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void vFpipipV(x64emu_t *emu, uintptr_t fcn) { vFpipipV_t fn = (vFpipipV_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)(R_RSP + 8)); }
 void vFpipppp(x64emu_t *emu, uintptr_t fcn) { vFpipppp_t fn = (vFpipppp_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
@@ -5647,6 +5712,7 @@ void vFpppiii(x64emu_t *emu, uintptr_t fcn) { vFpppiii_t fn = (vFpppiii_t)fcn; f
 void vFpppiip(x64emu_t *emu, uintptr_t fcn) { vFpppiip_t fn = (vFpppiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9); }
 void vFpppiui(x64emu_t *emu, uintptr_t fcn) { vFpppiui_t fn = (vFpppiui_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9); }
 void vFpppiff(x64emu_t *emu, uintptr_t fcn) { vFpppiff_t fn = (vFpppiff_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, emu->xmm[0].f[0], emu->xmm[1].f[0]); }
+void vFpppipi(x64emu_t *emu, uintptr_t fcn) { vFpppipi_t fn = (vFpppipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9); }
 void vFpppipu(x64emu_t *emu, uintptr_t fcn) { vFpppipu_t fn = (vFpppipu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (uint32_t)R_R9); }
 void vFpppipp(x64emu_t *emu, uintptr_t fcn) { vFpppipp_t fn = (vFpppipp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void vFpppuii(x64emu_t *emu, uintptr_t fcn) { vFpppuii_t fn = (vFpppuii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9); }
@@ -5696,6 +5762,7 @@ void iFipuppp(x64emu_t *emu, uintptr_t fcn) { iFipuppp_t fn = (iFipuppp_t)fcn; R
 void iFipppLp(x64emu_t *emu, uintptr_t fcn) { iFipppLp_t fn = (iFipppLp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (uintptr_t)R_R8, (void*)R_R9); }
 void iFippppp(x64emu_t *emu, uintptr_t fcn) { iFippppp_t fn = (iFippppp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFuiiuup(x64emu_t *emu, uintptr_t fcn) { iFuiiuup_t fn = (iFuiiuup_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9); }
+void iFuuIiip(x64emu_t *emu, uintptr_t fcn) { iFuuIiip_t fn = (iFuuIiip_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (uint32_t)R_RSI, (int64_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9); }
 void iFupupLp(x64emu_t *emu, uintptr_t fcn) { iFupupLp_t fn = (iFupupLp_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8, (void*)R_R9); }
 void iFupLpLp(x64emu_t *emu, uintptr_t fcn) { iFupLpLp_t fn = (iFupLpLp_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8, (void*)R_R9); }
 void iFdipppL(x64emu_t *emu, uintptr_t fcn) { iFdipppL_t fn = (iFdipppL_t)fcn; R_RAX=(uint32_t)fn(emu->xmm[0].d[0], (int32_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (uintptr_t)R_R8); }
@@ -5709,6 +5776,8 @@ void iFpiiuii(x64emu_t *emu, uintptr_t fcn) { iFpiiuii_t fn = (iFpiiuii_t)fcn; R
 void iFpiiuui(x64emu_t *emu, uintptr_t fcn) { iFpiiuui_t fn = (iFpiiuui_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9); }
 void iFpiiupp(x64emu_t *emu, uintptr_t fcn) { iFpiiupp_t fn = (iFpiiupp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpiiLip(x64emu_t *emu, uintptr_t fcn) { iFpiiLip_t fn = (iFpiiLip_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uintptr_t)R_RCX, (int32_t)R_R8, (void*)R_R9); }
+void iFpiipcc(x64emu_t *emu, uintptr_t fcn) { iFpiipcc_t fn = (iFpiipcc_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (int8_t)R_R8, (int8_t)R_R9); }
+void iFpiipii(x64emu_t *emu, uintptr_t fcn) { iFpiipii_t fn = (iFpiipii_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9); }
 void iFpiipip(x64emu_t *emu, uintptr_t fcn) { iFpiipip_t fn = (iFpiipip_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9); }
 void iFpiippp(x64emu_t *emu, uintptr_t fcn) { iFpiippp_t fn = (iFpiippp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void iFpiCCpu(x64emu_t *emu, uintptr_t fcn) { iFpiCCpu_t fn = (iFpiCCpu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (uint8_t)R_RDX, (uint8_t)R_RCX, (void*)R_R8, (uint32_t)R_R9); }
@@ -5946,9 +6015,11 @@ void pFppippi(x64emu_t *emu, uintptr_t fcn) { pFppippi_t fn = (pFppippi_t)fcn; R
 void pFppippp(x64emu_t *emu, uintptr_t fcn) { pFppippp_t fn = (pFppippp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void pFppuuuu(x64emu_t *emu, uintptr_t fcn) { pFppuuuu_t fn = (pFppuuuu_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, (uint32_t)R_R9); }
 void pFppuupp(x64emu_t *emu, uintptr_t fcn) { pFppuupp_t fn = (pFppuupp_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 pFppupLi(x64emu_t *emu, uintptr_t fcn) { pFppupLi_t fn = (pFppupLi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8, (int32_t)R_R9); }
 void pFppuppp(x64emu_t *emu, uintptr_t fcn) { pFppuppp_t fn = (pFppuppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
 void pFpplplp(x64emu_t *emu, uintptr_t fcn) { pFpplplp_t fn = (pFpplplp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (intptr_t)R_R8, (void*)R_R9); }
 void pFpplppp(x64emu_t *emu, uintptr_t fcn) { pFpplppp_t fn = (pFpplppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); }
+void pFpppiip(x64emu_t *emu, uintptr_t fcn) { pFpppiip_t fn = (pFpppiip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9); }
 void pFpppupp(x64emu_t *emu, uintptr_t fcn) { pFpppupp_t fn = (pFpppupp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9); }
 void pFpppLii(x64emu_t *emu, uintptr_t fcn) { pFpppLii_t fn = (pFpppLii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9); }
 void pFpppLui(x64emu_t *emu, uintptr_t fcn) { pFpppLui_t fn = (pFpppLui_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9); }
@@ -6057,6 +6128,7 @@ void vFpLiiuui(x64emu_t *emu, uintptr_t fcn) { vFpLiiuui_t fn = (vFpLiiuui_t)fcn
 void vFpLiLiLp(x64emu_t *emu, uintptr_t fcn) { vFpLiLiLp_t fn = (vFpLiLiLp_t)fcn; fn((void*)R_RDI, (uintptr_t)R_RSI, (int32_t)R_RDX, (uintptr_t)R_RCX, (int32_t)R_R8, (uintptr_t)R_R9, *(void**)(R_RSP + 8)); }
 void vFpLLiiip(x64emu_t *emu, uintptr_t fcn) { vFpLLiiip_t fn = (vFpLLiiip_t)fcn; fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8)); }
 void vFpLLuuuu(x64emu_t *emu, uintptr_t fcn) { vFpLLuuuu_t fn = (vFpLLuuuu_t)fcn; fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8)); }
+void vFpLLpppp(x64emu_t *emu, uintptr_t fcn) { vFpLLpppp_t fn = (vFpLLpppp_t)fcn; fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void vFpLpiipi(x64emu_t *emu, uintptr_t fcn) { vFpLpiipi_t fn = (vFpLpiipi_t)fcn; fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8)); }
 void vFpLppipi(x64emu_t *emu, uintptr_t fcn) { vFpLppipi_t fn = (vFpLppipi_t)fcn; fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8)); }
 void vFppcuupp(x64emu_t *emu, uintptr_t fcn) { vFppcuupp_t fn = (vFppcuupp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int8_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
@@ -6085,6 +6157,7 @@ void vFpppiipp(x64emu_t *emu, uintptr_t fcn) { vFpppiipp_t fn = (vFpppiipp_t)fcn
 void vFpppiupi(x64emu_t *emu, uintptr_t fcn) { vFpppiupi_t fn = (vFpppiupi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8)); }
 void vFpppippi(x64emu_t *emu, uintptr_t fcn) { vFpppippi_t fn = (vFpppippi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8)); }
 void vFpppffff(x64emu_t *emu, uintptr_t fcn) { vFpppffff_t fn = (vFpppffff_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0]); }
+void vFppppiii(x64emu_t *emu, uintptr_t fcn) { vFppppiii_t fn = (vFppppiii_t)fcn; fn((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)); }
 void vFppppiip(x64emu_t *emu, uintptr_t fcn) { vFppppiip_t fn = (vFppppiip_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)); }
 void vFppppiui(x64emu_t *emu, uintptr_t fcn) { vFppppiui_t fn = (vFppppiui_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(int32_t*)(R_RSP + 8)); }
 void vFpppppip(x64emu_t *emu, uintptr_t fcn) { vFpppppip_t fn = (vFpppppip_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)); }
@@ -6150,6 +6223,7 @@ void iFpLpLpip(x64emu_t *emu, uintptr_t fcn) { iFpLpLpip_t fn = (iFpLpLpip_t)fcn
 void iFpLpLpLp(x64emu_t *emu, uintptr_t fcn) { iFpLpLpLp_t fn = (iFpLpLpLp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (uintptr_t)R_R9, *(void**)(R_RSP + 8)); }
 void iFpLppiii(x64emu_t *emu, uintptr_t fcn) { iFpLppiii_t fn = (iFpLppiii_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8)); }
 void iFpLppiip(x64emu_t *emu, uintptr_t fcn) { iFpLppiip_t fn = (iFpLppiip_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8)); }
+void iFppiiiii(x64emu_t *emu, uintptr_t fcn) { iFppiiiii_t fn = (iFppiiiii_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8)); }
 void iFppiiiip(x64emu_t *emu, uintptr_t fcn) { iFppiiiip_t fn = (iFppiiiip_t)fcn; R_RAX=(uint32_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**)(R_RSP + 8)); }
 void iFppiiuup(x64emu_t *emu, uintptr_t fcn) { iFppiiuup_t fn = (iFppiiuup_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8)); }
 void iFppiiLll(x64emu_t *emu, uintptr_t fcn) { iFppiiLll_t fn = (iFppiiLll_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uintptr_t)R_R8, (intptr_t)R_R9, *(intptr_t*)(R_RSP + 8)); }
@@ -6164,6 +6238,7 @@ void iFppipppp(x64emu_t *emu, uintptr_t fcn) { iFppipppp_t fn = (iFppipppp_t)fcn
 void iFppuipiL(x64emu_t *emu, uintptr_t fcn) { iFppuipiL_t fn = (iFppuipiL_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9, *(uintptr_t*)(R_RSP + 8)); }
 void iFppuippp(x64emu_t *emu, uintptr_t fcn) { iFppuippp_t fn = (iFppuippp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFppuuppp(x64emu_t *emu, uintptr_t fcn) { iFppuuppp_t fn = (iFppuuppp_t)fcn; R_RAX=(uint32_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 iFppupupu(x64emu_t *emu, uintptr_t fcn) { iFppupupu_t fn = (iFppupupu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (void*)R_R9, *(uint32_t*)(R_RSP + 8)); }
 void iFppupupp(x64emu_t *emu, uintptr_t fcn) { iFppupupp_t fn = (iFppupupp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFppupppp(x64emu_t *emu, uintptr_t fcn) { iFppupppp_t fn = (iFppupppp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void iFppliupp(x64emu_t *emu, uintptr_t fcn) { iFppliupp_t fn = (iFppliupp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
@@ -6173,6 +6248,7 @@ void iFppLippp(x64emu_t *emu, uintptr_t fcn) { iFppLippp_t fn = (iFppLippp_t)fcn
 void iFppLuuii(x64emu_t *emu, uintptr_t fcn) { iFppLuuii_t fn = (iFppLuuii_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8)); }
 void iFppLLLLu(x64emu_t *emu, uintptr_t fcn) { iFppLLLLu_t fn = (iFppLLLLu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (uintptr_t)R_R9, *(uint32_t*)(R_RSP + 8)); }
 void iFppLpppp(x64emu_t *emu, uintptr_t fcn) { iFppLpppp_t fn = (iFppLpppp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
+void iFpppiiii(x64emu_t *emu, uintptr_t fcn) { iFpppiiii_t fn = (iFpppiiii_t)fcn; R_RAX=(uint32_t)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 iFpppiiup(x64emu_t *emu, uintptr_t fcn) { iFpppiiup_t fn = (iFpppiiup_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8)); }
 void iFpppippi(x64emu_t *emu, uintptr_t fcn) { iFpppippi_t fn = (iFpppippi_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8)); }
 void iFpppippp(x64emu_t *emu, uintptr_t fcn) { iFpppippp_t fn = (iFpppippp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
@@ -6363,6 +6439,7 @@ void vFpppipppu(x64emu_t *emu, uintptr_t fcn) { vFpppipppu_t fn = (vFpppipppu_t)
 void vFpppuiiii(x64emu_t *emu, uintptr_t fcn) { vFpppuiiii_t fn = (vFpppuiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16)); }
 void vFpppuulll(x64emu_t *emu, uintptr_t fcn) { vFpppuulll_t fn = (vFpppuulll_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (intptr_t)R_R9, *(intptr_t*)(R_RSP + 8), *(intptr_t*)(R_RSP + 16)); }
 void vFpppLpppp(x64emu_t *emu, uintptr_t fcn) { vFpppLpppp_t fn = (vFpppLpppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); }
+void vFppppiiii(x64emu_t *emu, uintptr_t fcn) { vFppppiiii_t fn = (vFppppiiii_t)fcn; fn((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)); }
 void vFpppppuuu(x64emu_t *emu, uintptr_t fcn) { vFpppppuuu_t fn = (vFpppppuuu_t)fcn; 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), *(uint32_t*)(R_RSP + 16)); }
 void vFppppppui(x64emu_t *emu, uintptr_t fcn) { vFppppppui_t fn = (vFppppppui_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(uint32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16)); }
 void vFpppppppp(x64emu_t *emu, uintptr_t fcn) { vFpppppppp_t fn = (vFpppppppp_t)fcn; 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)); }
@@ -6385,6 +6462,7 @@ void iFupipppip(x64emu_t *emu, uintptr_t fcn) { iFupipppip_t fn = (iFupipppip_t)
 void iFdiippppL(x64emu_t *emu, uintptr_t fcn) { iFdiippppL_t fn = (iFdiippppL_t)fcn; R_RAX=(uint32_t)fn(emu->xmm[0].d[0], (int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(uintptr_t*)(R_RSP + 8)); }
 void iFpiiiuuup(x64emu_t *emu, uintptr_t fcn) { iFpiiiuuup_t fn = (iFpiiiuuup_t)fcn; R_RAX=(uint32_t)fn((void*)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), *(void**)(R_RSP + 16)); }
 void iFpipiipip(x64emu_t *emu, uintptr_t fcn) { iFpipiipip_t fn = (iFpipiipip_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); }
+void iFpippiiii(x64emu_t *emu, uintptr_t fcn) { iFpippiiii_t fn = (iFpippiiii_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)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)); }
 void iFpippuuui(x64emu_t *emu, uintptr_t fcn) { iFpippuuui_t fn = (iFpippuuui_t)fcn; R_RAX=(uint32_t)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)); }
 void iFpippuupp(x64emu_t *emu, uintptr_t fcn) { iFpippuupp_t fn = (iFpippuupp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); }
 void iFpCCWWpWu(x64emu_t *emu, uintptr_t fcn) { iFpCCWWpWu_t fn = (iFpCCWWpWu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint8_t)R_RDX, (uint16_t)R_RCX, (uint16_t)R_R8, (void*)R_R9, *(uint16_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16)); }
@@ -6459,6 +6537,7 @@ void LFEpuuuppp(x64emu_t *emu, uintptr_t fcn) { LFEpuuuppp_t fn = (LFEpuuuppp_t)
 void LFpLpuuLLu(x64emu_t *emu, uintptr_t fcn) { LFpLpuuLLu_t fn = (LFpLpuuLLu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)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 LFppLpLpLi(x64emu_t *emu, uintptr_t fcn) { LFppLpLpLi_t fn = (LFppLpLpLi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8, (void*)R_R9, *(uintptr_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16)); }
 void pFEupLLLpp(x64emu_t *emu, uintptr_t fcn) { pFEupLLLpp_t fn = (pFEupLLLpp_t)fcn; R_RAX=(uintptr_t)fn(emu, (uint32_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
+void pFEpiipppp(x64emu_t *emu, uintptr_t fcn) { pFEpiipppp_t fn = (pFEpiipppp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void pFEpiuCppp(x64emu_t *emu, uintptr_t fcn) { pFEpiuCppp_t fn = (pFEpiuCppp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (uint8_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void pFEpuLpupp(x64emu_t *emu, uintptr_t fcn) { pFEpuLpupp_t fn = (pFEpuLpupp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); }
 void pFEppLiiup(x64emu_t *emu, uintptr_t fcn) { pFEppLiiup_t fn = (pFEppLiiup_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8)); }
@@ -6556,6 +6635,7 @@ void vFppddddudd(x64emu_t *emu, uintptr_t fcn) { vFppddddudd_t fn = (vFppddddudd
 void vFpplpppppi(x64emu_t *emu, uintptr_t fcn) { vFpplpppppi_t fn = (vFpplpppppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(int32_t*)(R_RSP + 24)); }
 void vFpppiiiiii(x64emu_t *emu, uintptr_t fcn) { vFpppiiiiii_t fn = (vFpppiiiiii_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), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24)); }
 void vFpppffffff(x64emu_t *emu, uintptr_t fcn) { vFpppffffff_t fn = (vFpppffffff_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, 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]); }
+void vFppppiiiii(x64emu_t *emu, uintptr_t fcn) { vFppppiiiii_t fn = (vFppppiiiii_t)fcn; fn((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), *(int32_t*)(R_RSP + 24)); }
 void vFppppipiip(x64emu_t *emu, uintptr_t fcn) { vFppppipiip_t fn = (vFppppipiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); }
 void iFEpiiiiipi(x64emu_t *emu, uintptr_t fcn) { iFEpiiiiipi_t fn = (iFEpiiiiipi_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)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), *(int32_t*)(R_RSP + 16)); }
 void iFEppuppppp(x64emu_t *emu, uintptr_t fcn) { iFEppuppppp_t fn = (iFEppuppppp_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); }
@@ -6660,6 +6740,7 @@ void vFuffiiffiip(x64emu_t *emu, uintptr_t fcn) { vFuffiiffiip_t fn = (vFuffiiff
 void vFuddiiddiip(x64emu_t *emu, uintptr_t fcn) { vFuddiiddiip_t fn = (vFuddiiddiip_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, (void*)R_R9); }
 void vFffffffffff(x64emu_t *emu, uintptr_t fcn) { vFffffffffff_t fn = (vFffffffffff_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)); }
 void vFpiuippppip(x64emu_t *emu, uintptr_t fcn) { vFpiuippppip_t fn = (vFpiuippppip_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); }
+void vFpipipippip(x64emu_t *emu, uintptr_t fcn) { vFpipipippip_t fn = (vFpipipippip_t)fcn; fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); }
 void vFpuupuuuuuu(x64emu_t *emu, uintptr_t fcn) { vFpuupuuuuuu_t fn = (vFpuupuuuuuu_t)fcn; fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)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)); }
 void vFppiiiiupip(x64emu_t *emu, uintptr_t fcn) { vFppiiiiupip_t fn = (vFppiiiiupip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); }
 void vFppipipippi(x64emu_t *emu, uintptr_t fcn) { vFppipipippi_t fn = (vFppipipippi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(int32_t*)(R_RSP + 32)); }
@@ -6671,6 +6752,7 @@ void vFppuuppppii(x64emu_t *emu, uintptr_t fcn) { vFppuuppppii_t fn = (vFppuuppp
 void vFppuppuiiii(x64emu_t *emu, uintptr_t fcn) { vFppuppuiiii_t fn = (vFppuppuiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (uint32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32)); }
 void vFppupppiiii(x64emu_t *emu, uintptr_t fcn) { vFppupppiiii_t fn = (vFppupppiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32)); }
 void vFppdddddddd(x64emu_t *emu, uintptr_t fcn) { vFppdddddddd_t fn = (vFppdddddddd_t)fcn; fn((void*)R_RDI, (void*)R_RSI, 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]); }
+void vFppppiiiiii(x64emu_t *emu, uintptr_t fcn) { vFppppiiiiii_t fn = (vFppppiiiiii_t)fcn; fn((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), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32)); }
 void vFppppppppii(x64emu_t *emu, uintptr_t fcn) { vFppppppppii_t fn = (vFppppppppii_t)fcn; 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), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32)); }
 void vFpppppppppp(x64emu_t *emu, uintptr_t fcn) { vFpppppppppp_t fn = (vFpppppppppp_t)fcn; 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 iFEpiiiiippp(x64emu_t *emu, uintptr_t fcn) { iFEpiiiiippp_t fn = (iFEpiiiiippp_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)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**)(R_RSP + 16), *(void**)(R_RSP + 24)); }
@@ -7182,6 +7264,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpL) return 1;
 	if (fun == &iFpp) return 1;
 	if (fun == &IFip) return 1;
+	if (fun == &IFII) return 1;
 	if (fun == &IFpi) return 1;
 	if (fun == &IFpu) return 1;
 	if (fun == &IFpd) return 2;
@@ -7213,6 +7296,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &UFii) return 1;
 	if (fun == &UFuu) return 1;
 	if (fun == &UFUp) return 1;
+	if (fun == &UFdi) return 2;
 	if (fun == &UFpi) return 1;
 	if (fun == &UFpU) return 1;
 	if (fun == &UFpL) return 1;
@@ -7340,6 +7424,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &vFLup) return 1;
 	if (fun == &vFLpL) return 1;
 	if (fun == &vFLpp) return 1;
+	if (fun == &vFpcu) return 1;
 	if (fun == &vFpww) return 1;
 	if (fun == &vFpic) return 1;
 	if (fun == &vFpii) return 1;
@@ -7477,6 +7562,8 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFppL) return 1;
 	if (fun == &iFppp) return 1;
 	if (fun == &IFiIi) return 1;
+	if (fun == &IFIII) return 1;
+	if (fun == &IFUUU) return 1;
 	if (fun == &IFpIi) return 1;
 	if (fun == &IFppi) return 1;
 	if (fun == &IFppI) return 1;
@@ -7497,6 +7584,8 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &uFuup) return 1;
 	if (fun == &uFufp) return 2;
 	if (fun == &uFupu) return 1;
+	if (fun == &uFupU) return 1;
+	if (fun == &uFupL) return 1;
 	if (fun == &uFupp) return 1;
 	if (fun == &uFpii) return 1;
 	if (fun == &uFpiu) return 1;
@@ -7578,7 +7667,9 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &LFppp) return 1;
 	if (fun == &pFiii) return 1;
 	if (fun == &pFiiu) return 1;
+	if (fun == &pFiid) return 2;
 	if (fun == &pFiip) return 1;
+	if (fun == &pFiup) return 1;
 	if (fun == &pFiLL) return 1;
 	if (fun == &pFipi) return 1;
 	if (fun == &pFipL) return 1;
@@ -7621,6 +7712,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &pFpuu) return 1;
 	if (fun == &pFpuf) return 2;
 	if (fun == &pFpul) return 1;
+	if (fun == &pFpuL) return 1;
 	if (fun == &pFpup) return 1;
 	if (fun == &pFpdu) return 2;
 	if (fun == &pFpdd) return 3;
@@ -7828,6 +7920,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFuiup) return 1;
 	if (fun == &iFuipp) return 1;
 	if (fun == &iFuWWp) return 1;
+	if (fun == &iFuuip) return 1;
 	if (fun == &iFuuuu) return 1;
 	if (fun == &iFuupi) return 1;
 	if (fun == &iFuupu) return 1;
@@ -7847,6 +7940,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpiid) return 2;
 	if (fun == &iFpiiL) return 1;
 	if (fun == &iFpiip) return 1;
+	if (fun == &iFpiIi) return 1;
 	if (fun == &iFpiCp) return 1;
 	if (fun == &iFpiuu) return 1;
 	if (fun == &iFpiuL) return 1;
@@ -7920,12 +8014,14 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpLpd) return 2;
 	if (fun == &iFpLpL) return 1;
 	if (fun == &iFpLpp) return 1;
+	if (fun == &iFppcc) return 1;
 	if (fun == &iFppii) return 1;
 	if (fun == &iFppiI) return 1;
 	if (fun == &iFppiu) return 1;
 	if (fun == &iFppiU) return 1;
 	if (fun == &iFppiL) return 1;
 	if (fun == &iFppip) return 1;
+	if (fun == &iFppIi) return 1;
 	if (fun == &iFppIL) return 1;
 	if (fun == &iFppCC) return 1;
 	if (fun == &iFppuw) return 1;
@@ -7934,6 +8030,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFppul) return 1;
 	if (fun == &iFppuL) return 1;
 	if (fun == &iFppup) return 1;
+	if (fun == &iFppdi) return 2;
 	if (fun == &iFppdd) return 3;
 	if (fun == &iFppdp) return 2;
 	if (fun == &iFppli) return 1;
@@ -7950,6 +8047,8 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpppu) return 1;
 	if (fun == &iFpppL) return 1;
 	if (fun == &iFpppp) return 1;
+	if (fun == &IFIIIu) return 1;
+	if (fun == &IFIUUu) return 1;
 	if (fun == &IFpIip) return 1;
 	if (fun == &IFppii) return 1;
 	if (fun == &IFppip) return 1;
@@ -7970,6 +8069,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &uFpuup) return 1;
 	if (fun == &uFpupi) return 1;
 	if (fun == &uFpupu) return 1;
+	if (fun == &uFpupL) return 1;
 	if (fun == &uFpupp) return 1;
 	if (fun == &uFplup) return 1;
 	if (fun == &uFppii) return 1;
@@ -8302,6 +8402,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &vFppppu) return 1;
 	if (fun == &vFppppL) return 1;
 	if (fun == &vFppppp) return 1;
+	if (fun == &iFiiiip) return 1;
 	if (fun == &iFiiipu) return 1;
 	if (fun == &iFiiipp) return 1;
 	if (fun == &iFiiupp) return 1;
@@ -8377,6 +8478,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpupup) return 1;
 	if (fun == &iFpupLu) return 1;
 	if (fun == &iFpupLp) return 1;
+	if (fun == &iFpuppi) return 1;
 	if (fun == &iFpuppu) return 1;
 	if (fun == &iFpuppL) return 1;
 	if (fun == &iFpuppp) return 1;
@@ -8412,6 +8514,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFppipu) return 1;
 	if (fun == &iFppipl) return 1;
 	if (fun == &iFppipp) return 1;
+	if (fun == &iFppIII) return 1;
 	if (fun == &iFppWpp) return 1;
 	if (fun == &iFppuwp) return 1;
 	if (fun == &iFppuip) return 1;
@@ -8564,6 +8667,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &pFppuip) return 1;
 	if (fun == &pFppuuu) return 1;
 	if (fun == &pFppuup) return 1;
+	if (fun == &pFppuLi) return 1;
 	if (fun == &pFppupp) return 1;
 	if (fun == &pFppddu) return 3;
 	if (fun == &pFppLii) return 1;
@@ -8654,6 +8758,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &vFpiippp) return 1;
 	if (fun == &vFpiUuup) return 1;
 	if (fun == &vFpiLppi) return 1;
+	if (fun == &vFpipiii) return 1;
 	if (fun == &vFpipipp) return 1;
 	if (fun == &vFpipppp) return 1;
 	if (fun == &vFpuiiii) return 1;
@@ -8710,6 +8815,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &vFpppiip) return 1;
 	if (fun == &vFpppiui) return 1;
 	if (fun == &vFpppiff) return 3;
+	if (fun == &vFpppipi) return 1;
 	if (fun == &vFpppipu) return 1;
 	if (fun == &vFpppipp) return 1;
 	if (fun == &vFpppuii) return 1;
@@ -8742,6 +8848,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFipppLp) return 1;
 	if (fun == &iFippppp) return 1;
 	if (fun == &iFuiiuup) return 1;
+	if (fun == &iFuuIiip) return 1;
 	if (fun == &iFupupLp) return 1;
 	if (fun == &iFupLpLp) return 1;
 	if (fun == &iFdipppL) return 2;
@@ -8755,6 +8862,8 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpiiuui) return 1;
 	if (fun == &iFpiiupp) return 1;
 	if (fun == &iFpiiLip) return 1;
+	if (fun == &iFpiipcc) return 1;
+	if (fun == &iFpiipii) return 1;
 	if (fun == &iFpiipip) return 1;
 	if (fun == &iFpiippp) return 1;
 	if (fun == &iFpiCCpu) return 1;
@@ -8957,9 +9066,11 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &pFppippp) return 1;
 	if (fun == &pFppuuuu) return 1;
 	if (fun == &pFppuupp) return 1;
+	if (fun == &pFppupLi) return 1;
 	if (fun == &pFppuppp) return 1;
 	if (fun == &pFpplplp) return 1;
 	if (fun == &pFpplppp) return 1;
+	if (fun == &pFpppiip) return 1;
 	if (fun == &pFpppupp) return 1;
 	if (fun == &pFpppLii) return 1;
 	if (fun == &pFpppLui) return 1;
@@ -9201,6 +9312,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpL) return 1;
 	if (fun == &iFpp) return 1;
 	if (fun == &IFip) return 17;
+	if (fun == &IFII) return 1;
 	if (fun == &IFpi) return 33;
 	if (fun == &IFpu) return 33;
 	if (fun == &IFpd) return 2;
@@ -9232,6 +9344,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &UFii) return 49;
 	if (fun == &UFuu) return 49;
 	if (fun == &UFUp) return 1;
+	if (fun == &UFdi) return 18;
 	if (fun == &UFpi) return 33;
 	if (fun == &UFpU) return 1;
 	if (fun == &UFpL) return 1;
@@ -9359,6 +9472,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &vFLup) return 33;
 	if (fun == &vFLpL) return 1;
 	if (fun == &vFLpp) return 1;
+	if (fun == &vFpcu) return 97;
 	if (fun == &vFpww) return 97;
 	if (fun == &vFpic) return 97;
 	if (fun == &vFpii) return 97;
@@ -9496,6 +9610,8 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFppL) return 1;
 	if (fun == &iFppp) return 1;
 	if (fun == &IFiIi) return 81;
+	if (fun == &IFIII) return 1;
+	if (fun == &IFUUU) return 1;
 	if (fun == &IFpIi) return 65;
 	if (fun == &IFppi) return 65;
 	if (fun == &IFppI) return 1;
@@ -9516,6 +9632,8 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &uFuup) return 49;
 	if (fun == &uFufp) return 18;
 	if (fun == &uFupu) return 81;
+	if (fun == &uFupU) return 17;
+	if (fun == &uFupL) return 17;
 	if (fun == &uFupp) return 17;
 	if (fun == &uFpii) return 97;
 	if (fun == &uFpiu) return 97;
@@ -9597,7 +9715,9 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &LFppp) return 1;
 	if (fun == &pFiii) return 113;
 	if (fun == &pFiiu) return 113;
+	if (fun == &pFiid) return 50;
 	if (fun == &pFiip) return 49;
+	if (fun == &pFiup) return 49;
 	if (fun == &pFiLL) return 17;
 	if (fun == &pFipi) return 81;
 	if (fun == &pFipL) return 17;
@@ -9640,6 +9760,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &pFpuu) return 97;
 	if (fun == &pFpuf) return 34;
 	if (fun == &pFpul) return 33;
+	if (fun == &pFpuL) return 33;
 	if (fun == &pFpup) return 33;
 	if (fun == &pFpdu) return 34;
 	if (fun == &pFpdd) return 3;
@@ -9847,6 +9968,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFuiup) return 113;
 	if (fun == &iFuipp) return 49;
 	if (fun == &iFuWWp) return 17;
+	if (fun == &iFuuip) return 113;
 	if (fun == &iFuuuu) return 241;
 	if (fun == &iFuupi) return 177;
 	if (fun == &iFuupu) return 177;
@@ -9866,6 +9988,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpiid) return 98;
 	if (fun == &iFpiiL) return 97;
 	if (fun == &iFpiip) return 97;
+	if (fun == &iFpiIi) return 161;
 	if (fun == &iFpiCp) return 33;
 	if (fun == &iFpiuu) return 225;
 	if (fun == &iFpiuL) return 97;
@@ -9939,12 +10062,14 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpLpd) return 2;
 	if (fun == &iFpLpL) return 1;
 	if (fun == &iFpLpp) return 1;
+	if (fun == &iFppcc) return 193;
 	if (fun == &iFppii) return 193;
 	if (fun == &iFppiI) return 65;
 	if (fun == &iFppiu) return 193;
 	if (fun == &iFppiU) return 65;
 	if (fun == &iFppiL) return 65;
 	if (fun == &iFppip) return 65;
+	if (fun == &iFppIi) return 129;
 	if (fun == &iFppIL) return 1;
 	if (fun == &iFppCC) return 1;
 	if (fun == &iFppuw) return 193;
@@ -9953,6 +10078,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFppul) return 65;
 	if (fun == &iFppuL) return 65;
 	if (fun == &iFppup) return 65;
+	if (fun == &iFppdi) return 66;
 	if (fun == &iFppdd) return 3;
 	if (fun == &iFppdp) return 2;
 	if (fun == &iFppli) return 129;
@@ -9969,6 +10095,8 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpppu) return 129;
 	if (fun == &iFpppL) return 1;
 	if (fun == &iFpppp) return 1;
+	if (fun == &IFIIIu) return 129;
+	if (fun == &IFIUUu) return 129;
 	if (fun == &IFpIip) return 65;
 	if (fun == &IFppii) return 193;
 	if (fun == &IFppip) return 65;
@@ -9989,6 +10117,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &uFpuup) return 97;
 	if (fun == &uFpupi) return 161;
 	if (fun == &uFpupu) return 161;
+	if (fun == &uFpupL) return 33;
 	if (fun == &uFpupp) return 33;
 	if (fun == &uFplup) return 65;
 	if (fun == &uFppii) return 193;
@@ -10321,6 +10450,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &vFppppu) return 257;
 	if (fun == &vFppppL) return 1;
 	if (fun == &vFppppp) return 1;
+	if (fun == &iFiiiip) return 241;
 	if (fun == &iFiiipu) return 369;
 	if (fun == &iFiiipp) return 113;
 	if (fun == &iFiiupp) return 113;
@@ -10396,6 +10526,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpupup) return 161;
 	if (fun == &iFpupLu) return 289;
 	if (fun == &iFpupLp) return 33;
+	if (fun == &iFpuppi) return 289;
 	if (fun == &iFpuppu) return 289;
 	if (fun == &iFpuppL) return 33;
 	if (fun == &iFpuppp) return 33;
@@ -10431,6 +10562,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFppipu) return 321;
 	if (fun == &iFppipl) return 65;
 	if (fun == &iFppipp) return 65;
+	if (fun == &iFppIII) return 1;
 	if (fun == &iFppWpp) return 1;
 	if (fun == &iFppuwp) return 193;
 	if (fun == &iFppuip) return 193;
@@ -10583,6 +10715,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &pFppuip) return 193;
 	if (fun == &pFppuuu) return 449;
 	if (fun == &pFppuup) return 193;
+	if (fun == &pFppuLi) return 321;
 	if (fun == &pFppupp) return 65;
 	if (fun == &pFppddu) return 67;
 	if (fun == &pFppLii) return 385;
@@ -10673,6 +10806,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &vFpiippp) return 97;
 	if (fun == &vFpiUuup) return 417;
 	if (fun == &vFpiLppi) return 545;
+	if (fun == &vFpipiii) return 929;
 	if (fun == &vFpipipp) return 161;
 	if (fun == &vFpipppp) return 33;
 	if (fun == &vFpuiiii) return 993;
@@ -10729,6 +10863,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &vFpppiip) return 385;
 	if (fun == &vFpppiui) return 897;
 	if (fun == &vFpppiff) return 131;
+	if (fun == &vFpppipi) return 641;
 	if (fun == &vFpppipu) return 641;
 	if (fun == &vFpppipp) return 129;
 	if (fun == &vFpppuii) return 897;
@@ -10761,6 +10896,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFipppLp) return 17;
 	if (fun == &iFippppp) return 17;
 	if (fun == &iFuiiuup) return 497;
+	if (fun == &iFuuIiip) return 433;
 	if (fun == &iFupupLp) return 81;
 	if (fun == &iFupLpLp) return 17;
 	if (fun == &iFdipppL) return 18;
@@ -10774,6 +10910,8 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &iFpiiuui) return 993;
 	if (fun == &iFpiiupp) return 225;
 	if (fun == &iFpiiLip) return 353;
+	if (fun == &iFpiipcc) return 865;
+	if (fun == &iFpiipii) return 865;
 	if (fun == &iFpiipip) return 353;
 	if (fun == &iFpiippp) return 97;
 	if (fun == &iFpiCCpu) return 545;
@@ -10976,9 +11114,11 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &pFppippp) return 65;
 	if (fun == &pFppuuuu) return 961;
 	if (fun == &pFppuupp) return 193;
+	if (fun == &pFppupLi) return 577;
 	if (fun == &pFppuppp) return 65;
 	if (fun == &pFpplplp) return 1;
 	if (fun == &pFpplppp) return 1;
+	if (fun == &pFpppiip) return 385;
 	if (fun == &pFpppupp) return 129;
 	if (fun == &pFpppLii) return 769;
 	if (fun == &pFpppLui) return 769;
diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h
index 4b769ebd..904e2151 100644
--- a/src/wrapped/generated/wrapper.h
+++ b/src/wrapped/generated/wrapper.h
@@ -275,6 +275,7 @@ void IFEd(x64emu_t *emu, uintptr_t fnc);
 void IFED(x64emu_t *emu, uintptr_t fnc);
 void IFEp(x64emu_t *emu, uintptr_t fnc);
 void IFip(x64emu_t *emu, uintptr_t fnc);
+void IFII(x64emu_t *emu, uintptr_t fnc);
 void IFpi(x64emu_t *emu, uintptr_t fnc);
 void IFpu(x64emu_t *emu, uintptr_t fnc);
 void IFpd(x64emu_t *emu, uintptr_t fnc);
@@ -311,6 +312,7 @@ void UFEp(x64emu_t *emu, uintptr_t fnc);
 void UFii(x64emu_t *emu, uintptr_t fnc);
 void UFuu(x64emu_t *emu, uintptr_t fnc);
 void UFUp(x64emu_t *emu, uintptr_t fnc);
+void UFdi(x64emu_t *emu, uintptr_t fnc);
 void UFpi(x64emu_t *emu, uintptr_t fnc);
 void UFpU(x64emu_t *emu, uintptr_t fnc);
 void UFpL(x64emu_t *emu, uintptr_t fnc);
@@ -486,6 +488,7 @@ void vFlpp(x64emu_t *emu, uintptr_t fnc);
 void vFLup(x64emu_t *emu, uintptr_t fnc);
 void vFLpL(x64emu_t *emu, uintptr_t fnc);
 void vFLpp(x64emu_t *emu, uintptr_t fnc);
+void vFpcu(x64emu_t *emu, uintptr_t fnc);
 void vFpww(x64emu_t *emu, uintptr_t fnc);
 void vFpic(x64emu_t *emu, uintptr_t fnc);
 void vFpii(x64emu_t *emu, uintptr_t fnc);
@@ -535,6 +538,7 @@ void vFppL(x64emu_t *emu, uintptr_t fnc);
 void vFppp(x64emu_t *emu, uintptr_t fnc);
 void vFppV(x64emu_t *emu, uintptr_t fnc);
 void vFpHi(x64emu_t *emu, uintptr_t fnc);
+void vFSpi(x64emu_t *emu, uintptr_t fnc);
 void vFSpL(x64emu_t *emu, uintptr_t fnc);
 void cFpdp(x64emu_t *emu, uintptr_t fnc);
 void wFppp(x64emu_t *emu, uintptr_t fnc);
@@ -654,6 +658,8 @@ void iFSpp(x64emu_t *emu, uintptr_t fnc);
 void iFSpA(x64emu_t *emu, uintptr_t fnc);
 void iFbpp(x64emu_t *emu, uintptr_t fnc);
 void IFiIi(x64emu_t *emu, uintptr_t fnc);
+void IFIII(x64emu_t *emu, uintptr_t fnc);
+void IFUUU(x64emu_t *emu, uintptr_t fnc);
 void IFpIi(x64emu_t *emu, uintptr_t fnc);
 void IFppi(x64emu_t *emu, uintptr_t fnc);
 void IFppI(x64emu_t *emu, uintptr_t fnc);
@@ -679,6 +685,8 @@ void uFuuu(x64emu_t *emu, uintptr_t fnc);
 void uFuup(x64emu_t *emu, uintptr_t fnc);
 void uFufp(x64emu_t *emu, uintptr_t fnc);
 void uFupu(x64emu_t *emu, uintptr_t fnc);
+void uFupU(x64emu_t *emu, uintptr_t fnc);
+void uFupL(x64emu_t *emu, uintptr_t fnc);
 void uFupp(x64emu_t *emu, uintptr_t fnc);
 void uFuNN(x64emu_t *emu, uintptr_t fnc);
 void uFpii(x64emu_t *emu, uintptr_t fnc);
@@ -793,7 +801,9 @@ void pFEpV(x64emu_t *emu, uintptr_t fnc);
 void pFEpA(x64emu_t *emu, uintptr_t fnc);
 void pFiii(x64emu_t *emu, uintptr_t fnc);
 void pFiiu(x64emu_t *emu, uintptr_t fnc);
+void pFiid(x64emu_t *emu, uintptr_t fnc);
 void pFiip(x64emu_t *emu, uintptr_t fnc);
+void pFiup(x64emu_t *emu, uintptr_t fnc);
 void pFiLL(x64emu_t *emu, uintptr_t fnc);
 void pFipi(x64emu_t *emu, uintptr_t fnc);
 void pFipL(x64emu_t *emu, uintptr_t fnc);
@@ -838,6 +848,7 @@ void pFpui(x64emu_t *emu, uintptr_t fnc);
 void pFpuu(x64emu_t *emu, uintptr_t fnc);
 void pFpuf(x64emu_t *emu, uintptr_t fnc);
 void pFpul(x64emu_t *emu, uintptr_t fnc);
+void pFpuL(x64emu_t *emu, uintptr_t fnc);
 void pFpup(x64emu_t *emu, uintptr_t fnc);
 void pFpdu(x64emu_t *emu, uintptr_t fnc);
 void pFpdd(x64emu_t *emu, uintptr_t fnc);
@@ -1118,6 +1129,7 @@ void iFipON(x64emu_t *emu, uintptr_t fnc);
 void iFuiup(x64emu_t *emu, uintptr_t fnc);
 void iFuipp(x64emu_t *emu, uintptr_t fnc);
 void iFuWWp(x64emu_t *emu, uintptr_t fnc);
+void iFuuip(x64emu_t *emu, uintptr_t fnc);
 void iFuuuu(x64emu_t *emu, uintptr_t fnc);
 void iFuupi(x64emu_t *emu, uintptr_t fnc);
 void iFuupu(x64emu_t *emu, uintptr_t fnc);
@@ -1137,6 +1149,7 @@ void iFpiiu(x64emu_t *emu, uintptr_t fnc);
 void iFpiid(x64emu_t *emu, uintptr_t fnc);
 void iFpiiL(x64emu_t *emu, uintptr_t fnc);
 void iFpiip(x64emu_t *emu, uintptr_t fnc);
+void iFpiIi(x64emu_t *emu, uintptr_t fnc);
 void iFpiCp(x64emu_t *emu, uintptr_t fnc);
 void iFpiuu(x64emu_t *emu, uintptr_t fnc);
 void iFpiuL(x64emu_t *emu, uintptr_t fnc);
@@ -1213,12 +1226,14 @@ void iFpLpd(x64emu_t *emu, uintptr_t fnc);
 void iFpLpD(x64emu_t *emu, uintptr_t fnc);
 void iFpLpL(x64emu_t *emu, uintptr_t fnc);
 void iFpLpp(x64emu_t *emu, uintptr_t fnc);
+void iFppcc(x64emu_t *emu, uintptr_t fnc);
 void iFppii(x64emu_t *emu, uintptr_t fnc);
 void iFppiI(x64emu_t *emu, uintptr_t fnc);
 void iFppiu(x64emu_t *emu, uintptr_t fnc);
 void iFppiU(x64emu_t *emu, uintptr_t fnc);
 void iFppiL(x64emu_t *emu, uintptr_t fnc);
 void iFppip(x64emu_t *emu, uintptr_t fnc);
+void iFppIi(x64emu_t *emu, uintptr_t fnc);
 void iFppIL(x64emu_t *emu, uintptr_t fnc);
 void iFppCC(x64emu_t *emu, uintptr_t fnc);
 void iFppuw(x64emu_t *emu, uintptr_t fnc);
@@ -1227,6 +1242,7 @@ void iFppuu(x64emu_t *emu, uintptr_t fnc);
 void iFppul(x64emu_t *emu, uintptr_t fnc);
 void iFppuL(x64emu_t *emu, uintptr_t fnc);
 void iFppup(x64emu_t *emu, uintptr_t fnc);
+void iFppdi(x64emu_t *emu, uintptr_t fnc);
 void iFppdd(x64emu_t *emu, uintptr_t fnc);
 void iFppdp(x64emu_t *emu, uintptr_t fnc);
 void iFppli(x64emu_t *emu, uintptr_t fnc);
@@ -1250,6 +1266,8 @@ void iFbupp(x64emu_t *emu, uintptr_t fnc);
 void iFbUpp(x64emu_t *emu, uintptr_t fnc);
 void iFbpiU(x64emu_t *emu, uintptr_t fnc);
 void IFEpIi(x64emu_t *emu, uintptr_t fnc);
+void IFIIIu(x64emu_t *emu, uintptr_t fnc);
+void IFIUUu(x64emu_t *emu, uintptr_t fnc);
 void IFpIip(x64emu_t *emu, uintptr_t fnc);
 void IFppii(x64emu_t *emu, uintptr_t fnc);
 void IFppip(x64emu_t *emu, uintptr_t fnc);
@@ -1276,6 +1294,7 @@ void uFpCCC(x64emu_t *emu, uintptr_t fnc);
 void uFpuup(x64emu_t *emu, uintptr_t fnc);
 void uFpupi(x64emu_t *emu, uintptr_t fnc);
 void uFpupu(x64emu_t *emu, uintptr_t fnc);
+void uFpupL(x64emu_t *emu, uintptr_t fnc);
 void uFpupp(x64emu_t *emu, uintptr_t fnc);
 void uFpubp(x64emu_t *emu, uintptr_t fnc);
 void uFplup(x64emu_t *emu, uintptr_t fnc);
@@ -1714,6 +1733,7 @@ void iFEpppL(x64emu_t *emu, uintptr_t fnc);
 void iFEpppp(x64emu_t *emu, uintptr_t fnc);
 void iFEpppV(x64emu_t *emu, uintptr_t fnc);
 void iFEpppA(x64emu_t *emu, uintptr_t fnc);
+void iFiiiip(x64emu_t *emu, uintptr_t fnc);
 void iFiiipu(x64emu_t *emu, uintptr_t fnc);
 void iFiiipp(x64emu_t *emu, uintptr_t fnc);
 void iFiiupp(x64emu_t *emu, uintptr_t fnc);
@@ -1789,6 +1809,7 @@ void iFpupuU(x64emu_t *emu, uintptr_t fnc);
 void iFpupup(x64emu_t *emu, uintptr_t fnc);
 void iFpupLu(x64emu_t *emu, uintptr_t fnc);
 void iFpupLp(x64emu_t *emu, uintptr_t fnc);
+void iFpuppi(x64emu_t *emu, uintptr_t fnc);
 void iFpuppu(x64emu_t *emu, uintptr_t fnc);
 void iFpuppL(x64emu_t *emu, uintptr_t fnc);
 void iFpuppp(x64emu_t *emu, uintptr_t fnc);
@@ -1824,6 +1845,7 @@ void iFppipi(x64emu_t *emu, uintptr_t fnc);
 void iFppipu(x64emu_t *emu, uintptr_t fnc);
 void iFppipl(x64emu_t *emu, uintptr_t fnc);
 void iFppipp(x64emu_t *emu, uintptr_t fnc);
+void iFppIII(x64emu_t *emu, uintptr_t fnc);
 void iFppWpp(x64emu_t *emu, uintptr_t fnc);
 void iFppuwp(x64emu_t *emu, uintptr_t fnc);
 void iFppuip(x64emu_t *emu, uintptr_t fnc);
@@ -2019,6 +2041,7 @@ void pFppWpp(x64emu_t *emu, uintptr_t fnc);
 void pFppuip(x64emu_t *emu, uintptr_t fnc);
 void pFppuuu(x64emu_t *emu, uintptr_t fnc);
 void pFppuup(x64emu_t *emu, uintptr_t fnc);
+void pFppuLi(x64emu_t *emu, uintptr_t fnc);
 void pFppupp(x64emu_t *emu, uintptr_t fnc);
 void pFppddu(x64emu_t *emu, uintptr_t fnc);
 void pFppLii(x64emu_t *emu, uintptr_t fnc);
@@ -2140,6 +2163,7 @@ void vFpiippi(x64emu_t *emu, uintptr_t fnc);
 void vFpiippp(x64emu_t *emu, uintptr_t fnc);
 void vFpiUuup(x64emu_t *emu, uintptr_t fnc);
 void vFpiLppi(x64emu_t *emu, uintptr_t fnc);
+void vFpipiii(x64emu_t *emu, uintptr_t fnc);
 void vFpipipp(x64emu_t *emu, uintptr_t fnc);
 void vFpipipV(x64emu_t *emu, uintptr_t fnc);
 void vFpipppp(x64emu_t *emu, uintptr_t fnc);
@@ -2197,6 +2221,7 @@ void vFpppiii(x64emu_t *emu, uintptr_t fnc);
 void vFpppiip(x64emu_t *emu, uintptr_t fnc);
 void vFpppiui(x64emu_t *emu, uintptr_t fnc);
 void vFpppiff(x64emu_t *emu, uintptr_t fnc);
+void vFpppipi(x64emu_t *emu, uintptr_t fnc);
 void vFpppipu(x64emu_t *emu, uintptr_t fnc);
 void vFpppipp(x64emu_t *emu, uintptr_t fnc);
 void vFpppuii(x64emu_t *emu, uintptr_t fnc);
@@ -2246,6 +2271,7 @@ void iFipuppp(x64emu_t *emu, uintptr_t fnc);
 void iFipppLp(x64emu_t *emu, uintptr_t fnc);
 void iFippppp(x64emu_t *emu, uintptr_t fnc);
 void iFuiiuup(x64emu_t *emu, uintptr_t fnc);
+void iFuuIiip(x64emu_t *emu, uintptr_t fnc);
 void iFupupLp(x64emu_t *emu, uintptr_t fnc);
 void iFupLpLp(x64emu_t *emu, uintptr_t fnc);
 void iFdipppL(x64emu_t *emu, uintptr_t fnc);
@@ -2260,6 +2286,8 @@ void iFpiiuii(x64emu_t *emu, uintptr_t fnc);
 void iFpiiuui(x64emu_t *emu, uintptr_t fnc);
 void iFpiiupp(x64emu_t *emu, uintptr_t fnc);
 void iFpiiLip(x64emu_t *emu, uintptr_t fnc);
+void iFpiipcc(x64emu_t *emu, uintptr_t fnc);
+void iFpiipii(x64emu_t *emu, uintptr_t fnc);
 void iFpiipip(x64emu_t *emu, uintptr_t fnc);
 void iFpiippp(x64emu_t *emu, uintptr_t fnc);
 void iFpiCCpu(x64emu_t *emu, uintptr_t fnc);
@@ -2497,9 +2525,11 @@ void pFppippi(x64emu_t *emu, uintptr_t fnc);
 void pFppippp(x64emu_t *emu, uintptr_t fnc);
 void pFppuuuu(x64emu_t *emu, uintptr_t fnc);
 void pFppuupp(x64emu_t *emu, uintptr_t fnc);
+void pFppupLi(x64emu_t *emu, uintptr_t fnc);
 void pFppuppp(x64emu_t *emu, uintptr_t fnc);
 void pFpplplp(x64emu_t *emu, uintptr_t fnc);
 void pFpplppp(x64emu_t *emu, uintptr_t fnc);
+void pFpppiip(x64emu_t *emu, uintptr_t fnc);
 void pFpppupp(x64emu_t *emu, uintptr_t fnc);
 void pFpppLii(x64emu_t *emu, uintptr_t fnc);
 void pFpppLui(x64emu_t *emu, uintptr_t fnc);
@@ -2608,6 +2638,7 @@ void vFpLiiuui(x64emu_t *emu, uintptr_t fnc);
 void vFpLiLiLp(x64emu_t *emu, uintptr_t fnc);
 void vFpLLiiip(x64emu_t *emu, uintptr_t fnc);
 void vFpLLuuuu(x64emu_t *emu, uintptr_t fnc);
+void vFpLLpppp(x64emu_t *emu, uintptr_t fnc);
 void vFpLpiipi(x64emu_t *emu, uintptr_t fnc);
 void vFpLppipi(x64emu_t *emu, uintptr_t fnc);
 void vFppcuupp(x64emu_t *emu, uintptr_t fnc);
@@ -2636,6 +2667,7 @@ void vFpppiipp(x64emu_t *emu, uintptr_t fnc);
 void vFpppiupi(x64emu_t *emu, uintptr_t fnc);
 void vFpppippi(x64emu_t *emu, uintptr_t fnc);
 void vFpppffff(x64emu_t *emu, uintptr_t fnc);
+void vFppppiii(x64emu_t *emu, uintptr_t fnc);
 void vFppppiip(x64emu_t *emu, uintptr_t fnc);
 void vFppppiui(x64emu_t *emu, uintptr_t fnc);
 void vFpppppip(x64emu_t *emu, uintptr_t fnc);
@@ -2701,6 +2733,7 @@ void iFpLpLpip(x64emu_t *emu, uintptr_t fnc);
 void iFpLpLpLp(x64emu_t *emu, uintptr_t fnc);
 void iFpLppiii(x64emu_t *emu, uintptr_t fnc);
 void iFpLppiip(x64emu_t *emu, uintptr_t fnc);
+void iFppiiiii(x64emu_t *emu, uintptr_t fnc);
 void iFppiiiip(x64emu_t *emu, uintptr_t fnc);
 void iFppiiuup(x64emu_t *emu, uintptr_t fnc);
 void iFppiiLll(x64emu_t *emu, uintptr_t fnc);
@@ -2715,6 +2748,7 @@ void iFppipppp(x64emu_t *emu, uintptr_t fnc);
 void iFppuipiL(x64emu_t *emu, uintptr_t fnc);
 void iFppuippp(x64emu_t *emu, uintptr_t fnc);
 void iFppuuppp(x64emu_t *emu, uintptr_t fnc);
+void iFppupupu(x64emu_t *emu, uintptr_t fnc);
 void iFppupupp(x64emu_t *emu, uintptr_t fnc);
 void iFppupppp(x64emu_t *emu, uintptr_t fnc);
 void iFppliupp(x64emu_t *emu, uintptr_t fnc);
@@ -2724,6 +2758,7 @@ void iFppLippp(x64emu_t *emu, uintptr_t fnc);
 void iFppLuuii(x64emu_t *emu, uintptr_t fnc);
 void iFppLLLLu(x64emu_t *emu, uintptr_t fnc);
 void iFppLpppp(x64emu_t *emu, uintptr_t fnc);
+void iFpppiiii(x64emu_t *emu, uintptr_t fnc);
 void iFpppiiup(x64emu_t *emu, uintptr_t fnc);
 void iFpppippi(x64emu_t *emu, uintptr_t fnc);
 void iFpppippp(x64emu_t *emu, uintptr_t fnc);
@@ -2914,6 +2949,7 @@ void vFpppipppu(x64emu_t *emu, uintptr_t fnc);
 void vFpppuiiii(x64emu_t *emu, uintptr_t fnc);
 void vFpppuulll(x64emu_t *emu, uintptr_t fnc);
 void vFpppLpppp(x64emu_t *emu, uintptr_t fnc);
+void vFppppiiii(x64emu_t *emu, uintptr_t fnc);
 void vFpppppuuu(x64emu_t *emu, uintptr_t fnc);
 void vFppppppui(x64emu_t *emu, uintptr_t fnc);
 void vFpppppppp(x64emu_t *emu, uintptr_t fnc);
@@ -2936,6 +2972,7 @@ void iFupipppip(x64emu_t *emu, uintptr_t fnc);
 void iFdiippppL(x64emu_t *emu, uintptr_t fnc);
 void iFpiiiuuup(x64emu_t *emu, uintptr_t fnc);
 void iFpipiipip(x64emu_t *emu, uintptr_t fnc);
+void iFpippiiii(x64emu_t *emu, uintptr_t fnc);
 void iFpippuuui(x64emu_t *emu, uintptr_t fnc);
 void iFpippuupp(x64emu_t *emu, uintptr_t fnc);
 void iFpCCWWpWu(x64emu_t *emu, uintptr_t fnc);
@@ -3010,6 +3047,7 @@ void LFEpuuuppp(x64emu_t *emu, uintptr_t fnc);
 void LFpLpuuLLu(x64emu_t *emu, uintptr_t fnc);
 void LFppLpLpLi(x64emu_t *emu, uintptr_t fnc);
 void pFEupLLLpp(x64emu_t *emu, uintptr_t fnc);
+void pFEpiipppp(x64emu_t *emu, uintptr_t fnc);
 void pFEpiuCppp(x64emu_t *emu, uintptr_t fnc);
 void pFEpuLpupp(x64emu_t *emu, uintptr_t fnc);
 void pFEppLiiup(x64emu_t *emu, uintptr_t fnc);
@@ -3108,6 +3146,7 @@ void vFppddddudd(x64emu_t *emu, uintptr_t fnc);
 void vFpplpppppi(x64emu_t *emu, uintptr_t fnc);
 void vFpppiiiiii(x64emu_t *emu, uintptr_t fnc);
 void vFpppffffff(x64emu_t *emu, uintptr_t fnc);
+void vFppppiiiii(x64emu_t *emu, uintptr_t fnc);
 void vFppppipiip(x64emu_t *emu, uintptr_t fnc);
 void iFEpiiiiipi(x64emu_t *emu, uintptr_t fnc);
 void iFEppuppppp(x64emu_t *emu, uintptr_t fnc);
@@ -3212,6 +3251,7 @@ void vFuffiiffiip(x64emu_t *emu, uintptr_t fnc);
 void vFuddiiddiip(x64emu_t *emu, uintptr_t fnc);
 void vFffffffffff(x64emu_t *emu, uintptr_t fnc);
 void vFpiuippppip(x64emu_t *emu, uintptr_t fnc);
+void vFpipipippip(x64emu_t *emu, uintptr_t fnc);
 void vFpuupuuuuuu(x64emu_t *emu, uintptr_t fnc);
 void vFppiiiiupip(x64emu_t *emu, uintptr_t fnc);
 void vFppipipippi(x64emu_t *emu, uintptr_t fnc);
@@ -3223,6 +3263,7 @@ void vFppuuppppii(x64emu_t *emu, uintptr_t fnc);
 void vFppuppuiiii(x64emu_t *emu, uintptr_t fnc);
 void vFppupppiiii(x64emu_t *emu, uintptr_t fnc);
 void vFppdddddddd(x64emu_t *emu, uintptr_t fnc);
+void vFppppiiiiii(x64emu_t *emu, uintptr_t fnc);
 void vFppppppppii(x64emu_t *emu, uintptr_t fnc);
 void vFpppppppppp(x64emu_t *emu, uintptr_t fnc);
 void iFEpiiiiippp(x64emu_t *emu, uintptr_t fnc);
diff --git a/src/wrapped/wrappedlibavcodec58.c b/src/wrapped/wrappedlibavcodec58.c
new file mode 100644
index 00000000..17e4170d
--- /dev/null
+++ b/src/wrapped/wrappedlibavcodec58.c
@@ -0,0 +1,38 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#define _GNU_SOURCE         /* See feature_test_macros(7) */
+#include <dlfcn.h>
+
+#include "wrappedlibs.h"
+
+#include "debug.h"
+#include "wrapper.h"
+#include "bridge.h"
+#include "librarian/library_private.h"
+#include "x64emu.h"
+#include "emu/x64emu_private.h"
+#include "callback.h"
+#include "librarian.h"
+#include "box64context.h"
+#include "emu/x64emu_private.h"
+#include "myalign.h"
+
+const char* libavcodec58Name = "libavcodec.so.58";
+
+#define LIBNAME libavcodec58
+
+//#define ADDED_FUNCTIONS()                   \
+
+//#include "generated/wrappedlibcupstypes.h"
+
+//#include "wrappercallback.h"
+
+#define SUPER() \
+GO(0)   \
+GO(1)   \
+GO(2)   \
+GO(3)   \
+GO(4)
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedlibavcodec58_private.h b/src/wrapped/wrappedlibavcodec58_private.h
new file mode 100644
index 00000000..4f3bb7f0
--- /dev/null
+++ b/src/wrapped/wrappedlibavcodec58_private.h
@@ -0,0 +1,178 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error Meh...
+#endif
+
+GO(av_ac3_parse_header, iFpLpp)
+GO(av_adts_header_parse, iFppp)
+//GOM(av_alloc_vdpaucontext, pFEv)
+GO(av_bsf_alloc, iFpp)  // AVBSFContext* contains AVClass* which might needs wrapping
+GO(av_bsf_flush, vFp)   // AVBSFContext* contains AVClass* which might needs wrapping
+GO(av_bsf_free, vFp)    // AVBSFContext* contains AVClass* which might needs wrapping
+GO(av_bsf_get_by_name, pFp) // AVBSFContext* contains AVClass* which might needs wrapping
+//GOM(av_bsf_get_class, pFEv)
+GO(av_bsf_get_null_filter, iFp) // AVBSFContext* contains AVClass* which might needs wrapping
+GO(av_bsf_init, iFp)    // AVBSFContext* contains AVClass* which might needs wrapping
+//GOM(av_bsf_iterate, pFEp)
+GO(av_bsf_list_alloc, pFv)
+//GOM(av_bsf_list_append, iFEpp)
+GO(av_bsf_list_append2, iFppp)
+//GOM(av_bsf_list_finalize, iFEpp)
+GO(av_bsf_list_free, vFp)
+//GOM(av_bsf_list_parse_str, iFEpp)
+GO(av_bsf_receive_packet, iFpp) // AVBSFContext* contains AVClass* which might needs wrapping
+GO(av_bsf_send_packet, iFpp)    // AVBSFContext* contains AVClass* which might needs wrapping
+//GOM(avcodec_align_dimensions, vFEppp)
+//GOM(avcodec_align_dimensions2, vFEpppp)
+//GOM(avcodec_alloc_context3, pFEp)
+//GOM(avcodec_close, iFEp)
+GO(avcodec_configuration, pFv)
+//GOM(avcodec_dct_alloc, pFEv)
+//GOM(avcodec_dct_get_class, pFEv)
+//GOM(avcodec_dct_init, iFEp)
+//GOM(avcodec_decode_subtitle2, iFEpppp)
+//GOM(avcodec_default_execute, iFEppppii)
+//GOM(avcodec_default_execute2, iFEppppi)
+//GOM(avcodec_default_get_buffer2, iFEppi)
+//GOM(avcodec_default_get_encode_buffer, iFEppi)
+//GOM(avcodec_default_get_format, iFEpp)
+GO(avcodec_descriptor_get, pFu)
+GO(avcodec_descriptor_get_by_name, pFp)
+GO(avcodec_descriptor_next, pFp)
+//GOM(avcodec_encode_subtitle, iFEppip)
+DATA(av_codec_ffversion, 8) // Warning: failed to confirm
+GO(avcodec_fill_audio_frame, iFpiipii)
+GO(avcodec_find_best_pix_fmt_of_list, iFpiip)
+//GOM(avcodec_find_decoder, pFEu)
+//GOM(avcodec_find_decoder_by_name, pFEp)
+//GOM(avcodec_find_encoder, pFEu)
+//GOM(avcodec_find_encoder_by_name, pFEp)
+//GOM(avcodec_flush_buffers, vFEp)
+//GOM(avcodec_free_context, vFEp)
+//GOM(avcodec_get_class, pFEv)
+//GOM(avcodec_get_hw_config, pFEpi)
+//GOM(avcodec_get_hw_frames_parameters, iFEppip)
+GO(avcodec_get_name, pFu)
+//GOM(avcodec_get_subtitle_rect_class, pFEv)
+//GOM(avcodec_get_supported_config, iFEppuupp)
+GO(avcodec_get_type, iFu)
+//GOM(av_codec_is_decoder, iFEp)
+//GOM(av_codec_is_encoder, iFEp)
+//GOM(avcodec_is_open, iFEp)
+//GOM(av_codec_iterate, pFEp)
+GO(avcodec_license, pFv)
+//GOM(avcodec_open2, iFEppp)
+GO(avcodec_parameters_alloc, pFv)
+GO(avcodec_parameters_copy, iFpp)
+GO(avcodec_parameters_free, vFp)
+//GOM(avcodec_parameters_from_context, iFEpp)
+//GOM(avcodec_parameters_to_context, iFEpp)
+GO(avcodec_pix_fmt_to_codec_tag, uFi)
+GO(avcodec_profile_name, pFui)
+//GOM(avcodec_receive_frame, iFEpp)
+//GOM(avcodec_receive_packet, iFEpp)
+//GOM(avcodec_send_frame, iFEpp)
+//GOM(avcodec_send_packet, iFEpp)
+//GOM(avcodec_string, vFEpipi)
+GO(avcodec_version, uFv)
+GO(av_cpb_properties_alloc, pFp)
+//GO(av_d3d11va_alloc_context, 
+GO(av_dct_calc, vFpp)
+GO(av_dct_end, vFp)
+GO(av_dct_init, pFiu)
+GO(av_dirac_parse_sequence_header, iFppLp)
+GO(av_dv_codec_profile, pFiii)
+//GO(av_dv_codec_profile2, 
+GO(av_dv_frame_profile, pFppu)
+GO(av_fast_padded_malloc, vFppL)
+GO(av_fast_padded_mallocz, vFppL)
+GO(av_fft_calc, vFpp)
+GO(av_fft_end, vFp)
+GO(av_fft_init, pFii)
+GO(av_fft_permute, vFpp)
+//GOM(av_get_audio_frame_duration, iFEpi)
+GO(av_get_audio_frame_duration2, iFpi)
+GO(av_get_bits_per_sample, iFu)
+GO(av_get_exact_bits_per_sample, iFu)
+GO(av_get_pcm_codec, uFii)
+//GOM(av_get_profile_name, pFEpi)
+GO(av_grow_packet, iFpi)
+GO(av_imdct_calc, vFppp)
+GO(av_imdct_half, vFppp)
+GO(av_init_packet, vFp)
+GO(av_jni_get_java_vm, pFp)
+GO(av_jni_set_java_vm, iFpp)
+GO(av_mdct_calc, vFppp)
+GO(av_mdct_end, vFp)
+GO(av_mdct_init, pFiid)
+GO(av_mediacodec_alloc_context, pFv)
+//GOM(av_mediacodec_default_free, vFEp)
+//GOM(av_mediacodec_default_init, iFEppp)
+GO(av_mediacodec_release_buffer, iFpi)
+GO(av_mediacodec_render_buffer_at_time, iFpI)
+GO(av_new_packet, iFpi)
+GO(av_packet_add_side_data, iFpupL)
+GO(av_packet_alloc, pFv)
+GO(av_packet_clone, pFp)
+GO(av_packet_copy_props, iFpp)
+GO(av_packet_free, vFp)
+GO(av_packet_free_side_data, vFp)
+GO(av_packet_from_data, iFppi)
+GO(av_packet_get_side_data, pFpup)
+GO(av_packet_make_refcounted, iFp)
+GO(av_packet_make_writable, iFp)
+GO(av_packet_move_ref, vFpp)
+GO(av_packet_new_side_data, pFpuL)
+GO(av_packet_pack_dictionary, pFpp)
+GO(av_packet_ref, iFpp)
+//GO(av_packet_rescale_ts, 
+GO(av_packet_shrink_side_data, iFpuL)
+GO(av_packet_side_data_add, pFppupLi)
+GO(av_packet_side_data_free, vFpp)
+GO(av_packet_side_data_get, pFpiu)
+GO(av_packet_side_data_name, pFu)
+GO(av_packet_side_data_new, pFppuLi)
+GO(av_packet_side_data_remove, vFppu)
+GO(av_packet_unpack_dictionary, iFpLp)
+GO(av_packet_unref, vFp)
+//GOM(av_parser_close, vFEp)
+//GOM(av_parser_init, pFEi)
+//GOM(av_parser_iterate, pFEp)
+//GOM(av_parser_parse2, iFEpppppiIII)
+//GO(avpriv_ac3_parse_header, 
+//GO(avpriv_adts_header_parse, 
+//GO(avpriv_codec_get_cap_skip_frame_fill_param, 
+//GO(avpriv_dca_convert_bitstream, 
+//GO(avpriv_dca_parse_core_frame_header, 
+//GO(avpriv_elbg_do, 
+//GO(avpriv_elbg_free, 
+//GO(avpriv_exif_decode_ifd, 
+//GO(avpriv_find_start_code, 
+//GO(avpriv_fits_header_init, 
+//GO(avpriv_fits_header_parse_line, 
+//GO(avpriv_get_raw_pix_fmt_tags, 
+//GO(avpriv_h264_has_num_reorder_frames, 
+//GO(avpriv_mpeg4audio_get_config2, 
+//GO(avpriv_mpegaudio_decode_header, 
+//GO(avpriv_packet_list_free, 
+//GO(avpriv_packet_list_get, 
+//GO(avpriv_packet_list_put, 
+//GO(avpriv_pix_fmt_find, 
+//GO(avpriv_split_xiph_headers, 
+//GO(avpriv_tak_parse_streaminfo, 
+//GO(av_qsv_alloc_context, 
+GO(av_rdft_calc, vFpp)
+GO(av_rdft_end, vFp)
+GO(av_rdft_init, pFiu)
+GO(av_shrink_packet, vFpi)
+GO(avsubtitle_free, vFp)
+//GOM(av_vdpau_alloc_context, pFEv)
+//GOM(av_vdpau_bind_context, iFEpupu)
+//GOM(av_vdpau_get_surface_parameters, iFEpppp)
+//GOM(av_vdpau_hwaccel_get_render2, pFEp)
+//GOM(av_vdpau_hwaccel_set_render2, vFEpp)
+GO(av_vorbis_parse_frame, iFppi)
+GO(av_vorbis_parse_frame_flags, iFppip)
+GO(av_vorbis_parse_free, vFp)
+GO(av_vorbis_parse_init, pFpi)
+GO(av_vorbis_parse_reset, vFp)
+GO(av_xiphlacing, uFpu)
diff --git a/src/wrapped/wrappedlibavformat58.c b/src/wrapped/wrappedlibavformat58.c
new file mode 100644
index 00000000..87f3757c
--- /dev/null
+++ b/src/wrapped/wrappedlibavformat58.c
@@ -0,0 +1,113 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#define _GNU_SOURCE         /* See feature_test_macros(7) */
+#include <dlfcn.h>
+
+#include "wrappedlibs.h"
+
+#include "debug.h"
+#include "wrapper.h"
+#include "bridge.h"
+#include "librarian/library_private.h"
+#include "x64emu.h"
+#include "emu/x64emu_private.h"
+#include "callback.h"
+#include "librarian.h"
+#include "box64context.h"
+#include "emu/x64emu_private.h"
+#include "myalign.h"
+
+const char* libavformat58Name = "libavformat.so.58";
+
+#define LIBNAME libavformat58
+
+#define ADDED_FUNCTIONS()                   \
+
+#include "generated/wrappedlibavformat58types.h"
+
+#include "wrappercallback.h"
+
+#define SUPER() \
+GO(0)   \
+GO(1)   \
+GO(2)   \
+GO(3)   \
+GO(4)
+
+// read_packet ...
+#define GO(A)   \
+static uintptr_t my_read_packet_fct_##A = 0;                                \
+static int my_read_packet_##A(void* a, void* b, int c)                      \
+{                                                                           \
+    return (int)RunFunctionFmt(my_read_packet_fct_##A, "ppi", a, b, c);     \
+}
+SUPER()
+#undef GO
+static void* find_read_packet_Fct(void* fct)
+{
+    if(!fct) return fct;
+    if(GetNativeFnc((uintptr_t)fct))  return GetNativeFnc((uintptr_t)fct);
+    #define GO(A) if(my_read_packet_fct_##A == (uintptr_t)fct) return my_read_packet_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_read_packet_fct_##A == 0) {my_read_packet_fct_##A = (uintptr_t)fct; return my_read_packet_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libavformat58 read_packet callback\n");
+    return NULL;
+}
+// write_packet ...
+#define GO(A)   \
+static uintptr_t my_write_packet_fct_##A = 0;                               \
+static int my_write_packet_##A(void* a, void* b, int c)                     \
+{                                                                           \
+    return (int)RunFunctionFmt(my_write_packet_fct_##A, "ppi", a, b, c);    \
+}
+SUPER()
+#undef GO
+static void* find_write_packet_Fct(void* fct)
+{
+    if(!fct) return fct;
+    if(GetNativeFnc((uintptr_t)fct))  return GetNativeFnc((uintptr_t)fct);
+    #define GO(A) if(my_write_packet_fct_##A == (uintptr_t)fct) return my_write_packet_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_write_packet_fct_##A == 0) {my_write_packet_fct_##A = (uintptr_t)fct; return my_write_packet_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libavformat58 write_packet callback\n");
+    return NULL;
+}
+// seek ...
+#define GO(A)   \
+static uintptr_t my_seek_fct_##A = 0;                                   \
+static int64_t my_seek_##A(void* a, int64_t b, int c)                   \
+{                                                                       \
+    return (int64_t)RunFunctionFmt(my_seek_fct_##A, "pIi", a, b, c);    \
+}
+SUPER()
+#undef GO
+static void* find_seek_Fct(void* fct)
+{
+    if(!fct) return fct;
+    if(GetNativeFnc((uintptr_t)fct))  return GetNativeFnc((uintptr_t)fct);
+    #define GO(A) if(my_seek_fct_##A == (uintptr_t)fct) return my_seek_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_seek_fct_##A == 0) {my_seek_fct_##A = (uintptr_t)fct; return my_seek_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libavformat58 seek callback\n");
+    return NULL;
+}
+
+#undef SUPER
+
+
+EXPORT void* my_avio_alloc_context(x64emu_t* emu, void* buffer, int buffer_size, int write_flag, void* opaque, void* read_packet, void* write_packet, void* seek)
+{
+    return my->avio_alloc_context(buffer, buffer_size, write_flag, opaque, find_read_packet_Fct(read_packet), find_write_packet_Fct(write_packet), find_seek_Fct(seek));
+}
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedlibavformat58_private.h b/src/wrapped/wrappedlibavformat58_private.h
new file mode 100644
index 00000000..54c6d9fb
--- /dev/null
+++ b/src/wrapped/wrappedlibavformat58_private.h
@@ -0,0 +1,162 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error Meh...
+#endif
+
+//GOM(av_add_index_entry, iFEpIIiii)
+//GOM(av_append_packet, iFEppi)
+GO(av_codec_get_id, uFpu)
+GO(av_codec_get_tag, uFpu)
+GO(av_codec_get_tag2, iFpup)
+GO(av_demuxer_iterate, pFp) // return AVInputFormat* that might need wrapping
+GO(av_disposition_from_string, iFp)
+GO(av_disposition_to_string, pFi)
+//GOM(av_dump_format, vFEpipi)
+GO(av_filename_number_test, iFp)
+//GOM(av_find_best_stream, iFEpiiipi)
+//GOM(av_find_default_stream_index, iFEp)
+GO(av_find_input_format, pFp)   // return AVInputFormat* wich might need wrapping
+//GOM(av_find_program_from_stream, pFEppi)
+//GOM(av_fmt_ctx_get_duration_estimation_method, uFEp)
+GO(avformat_alloc_context, pFv) // return AVFormatContext* wich might needs some wrapping?
+//GOM(avformat_alloc_output_context2, iFEpppp)
+//GOM(avformat_close_input, vFEp)
+GO(avformat_configuration, pFv)
+DATA(av_format_ffversion, 8) // Warning: failed to confirm
+GO(avformat_find_stream_info, iFpp)    // AVFormatContext* might need some wrapping
+//GOM(avformat_flush, iFEp)
+GO(avformat_free_context, vFp)
+//GOM(avformat_get_class, pFEv)
+GO(avformat_get_mov_audio_tags, pFv)
+GO(avformat_get_mov_video_tags, pFv)
+GO(avformat_get_riff_audio_tags, pFv)
+GO(avformat_get_riff_video_tags, pFv)
+//GOM(avformat_index_get_entries_count, iFEp)
+//GOM(avformat_index_get_entry, pFEpi)
+//GOM(avformat_index_get_entry_from_timestamp, pFEpIi)
+//GOM(avformat_init_output, iFEpp)
+//GOM(av_format_inject_global_side_data, vFEp)
+GO(avformat_license, pFv)
+//GOM(avformat_match_stream_specifier, iFEppp)
+GO(avformat_network_deinit, iFv)
+GO(avformat_network_init, iFv)
+//GOM(avformat_new_stream, pFEpp)
+GO(avformat_open_input, iFpppp) // many strucure might need wrapping here
+//GOM(avformat_query_codec, iFEpui)
+//GOM(avformat_queue_attached_pictures, iFEp)
+//GOM(avformat_seek_file, iFEpiIIIi)
+//GOM(avformat_stream_group_add_stream, iFEpp)
+//GOM(avformat_stream_group_create, pFEpup)
+GO(avformat_stream_group_name, pFu)
+//GOM(avformat_transfer_internal_stream_timing_info, iFEpppi)
+GO(avformat_version, uFv)
+//GOM(avformat_write_header, iFEpp)
+GO(av_get_frame_filename, iFpipi)
+GO(av_get_frame_filename2, iFpipii)
+//GOM(av_get_output_timestamp, iFEpipp)
+//GOM(av_get_packet, iFEppi)
+//GOM(av_guess_codec, uFEppppi)
+//GOM(av_guess_format, pFEppp)
+//GOM(av_guess_frame_rate, UFEppp)
+//GOM(av_guess_sample_aspect_ratio, UFEppp)
+GO(av_hex_dump, vFSpi)
+GO(av_hex_dump_log, vFpipi)
+//GOM(av_index_search_timestamp, iFEpIi)
+//GOM(av_interleaved_write_frame, iFEpp)
+//GOM(av_interleaved_write_uncoded_frame, iFEpip)
+//GOM(avio_accept, iFEpp)
+GOM(avio_alloc_context, pFEpiipppp)
+GO(avio_check, iFpi)
+//GOM(avio_close, iFEp)
+GO(avio_close_dir, iFp)
+//GOM(avio_close_dyn_buf, iFEpp)
+//GOM(avio_closep, iFEp)
+GO(avio_context_free, vFp)
+GO(avio_enum_protocols, pFpi)
+//GOM(avio_feof, iFEp)
+GO(avio_find_protocol_name, pFp)
+//GOM(avio_flush, vFEp)
+GO(avio_free_directory_entry, vFp)
+//GOM(avio_get_dyn_buf, iFEpp)
+//GOM(avio_get_str, iFEpipi)
+//GOM(avio_get_str16be, iFEpipi)
+//GOM(avio_get_str16le, iFEpipi)
+//GOM(avio_handshake, iFEp)
+//GOM(avio_open, iFEppi)
+//GOM(avio_open2, iFEppipp)
+GO(avio_open_dir, iFppp)
+//GOM(avio_open_dyn_buf, iFEp)
+//GOM(avio_pause, iFEpi)
+//GOM(avio_printf, iFEppV)
+//GOM(avio_print_string_array, vFEpp)
+//GOM(avio_protocol_get_class, pFEp)
+//GOM(avio_put_str, iFEpp)
+//GOM(avio_put_str16be, iFEpp)
+//GOM(avio_put_str16le, iFEpp)
+//GOM(avio_r8, iFEp)
+//GOM(avio_rb16, uFEp)
+//GOM(avio_rb24, uFEp)
+//GOM(avio_rb32, uFEp)
+//GOM(avio_rb64, UFEp)
+//GOM(avio_read, iFEppi)
+GO(avio_read_dir, iFpp)
+//GOM(avio_read_partial, iFEppi)
+//GOM(avio_read_to_bprint, iFEppL)
+//GOM(avio_rl16, uFEp)
+//GOM(avio_rl24, uFEp)
+//GOM(avio_rl32, uFEp)
+//GOM(avio_rl64, UFEp)
+//GOM(avio_seek, IFEpIi)
+//GOM(avio_seek_time, IFEpiIi)
+//GOM(avio_size, IFEp)
+//GOM(avio_skip, IFEpI)
+//GOM(avio_vprintf, iFEppA)
+//GOM(avio_w8, vFEpi)
+//GOM(avio_wb16, vFEpu)
+//GOM(avio_wb24, vFEpu)
+//GOM(avio_wb32, vFEpu)
+//GOM(avio_wb64, vFEpU)
+//GOM(avio_wl16, vFEpu)
+//GOM(avio_wl24, vFEpu)
+//GOM(avio_wl32, vFEpu)
+//GOM(avio_wl64, vFEpU)
+//GOM(avio_write, vFEppi)
+//GOM(avio_write_marker, vFEpIu)
+GO(av_match_ext, iFpp)
+//GOM(av_muxer_iterate, pFEp)
+//GOM(av_new_program, pFEpi)
+//GOM(av_pkt_dump2, vFESpip)
+//GOM(av_pkt_dump_log2, vFEpipip)
+//GO(avpriv_dv_get_packet, 
+//GO(avpriv_dv_init_demux, 
+//GO(avpriv_dv_produce_packet, 
+//GO(avpriv_mpegts_parse_close, 
+//GO(avpriv_mpegts_parse_open, 
+//GO(avpriv_mpegts_parse_packet, 
+//GO(avpriv_new_chapter, 
+//GO(avpriv_register_devices, 
+//GO(avpriv_set_pts_info, 
+//GO(avpriv_stream_set_need_parsing, 
+//GO(avpriv_update_cur_dts, 
+//GOM(av_probe_input_buffer, iFEppppuu)
+//GOM(av_probe_input_buffer2, iFEppppuu)
+//GOM(av_probe_input_format, pFEpi)
+//GOM(av_probe_input_format2, pFEpip)
+//GOM(av_probe_input_format3, pFEpip)
+//GOM(av_program_add_stream_index, vFEpiu)
+GO(av_read_frame, iFpp) // use AVFormatContext wich might needs some wrapping   
+//GOM(av_read_pause, iFEp)
+//GOM(av_read_play, iFEp)
+//GOM(av_sdp_create, iFEpipi)
+GO(av_seek_frame, iFpiIi)
+//GOM(av_stream_add_side_data, iFEpupL)
+//GOM(av_stream_get_class, pFEv)
+//GOM(av_stream_get_codec_timebase, UFEp)
+//GOM(av_stream_get_parser, pFEp)
+//GOM(av_stream_get_side_data, pFEpup)
+//GOM(av_stream_group_get_class, pFEv)
+//GOM(av_stream_new_side_data, pFEpuL)
+GO(av_url_split, vFpipipippip)
+//GOM(av_write_frame, iFEpp)
+//GOM(av_write_trailer, iFEp)
+//GOM(av_write_uncoded_frame, iFEpip)
+//GOM(av_write_uncoded_frame_query, iFEpi)
diff --git a/src/wrapped/wrappedlibavutil56.c b/src/wrapped/wrappedlibavutil56.c
new file mode 100644
index 00000000..1efec99c
--- /dev/null
+++ b/src/wrapped/wrappedlibavutil56.c
@@ -0,0 +1,73 @@
+#include <stdlib.h>
+#include <string.h>
+#define _GNU_SOURCE         /* See feature_test_macros(7) */
+#include <dlfcn.h>
+#include <stdarg.h>
+#include <stdio.h>
+
+#include "wrappedlibs.h"
+
+#include "debug.h"
+#include "wrapper.h"
+#include "bridge.h"
+#include "librarian/library_private.h"
+#include "x64emu.h"
+#include "emu/x64emu_private.h"
+#include "callback.h"
+#include "librarian.h"
+#include "box64context.h"
+#include "emu/x64emu_private.h"
+#include "myalign.h"
+
+const char* libavutil56Name = "libavutil.so.56";
+
+#define LIBNAME libavutil56
+
+#define ADDED_FUNCTIONS()                   \
+
+#include "generated/wrappedlibavutil56types.h"
+
+#include "wrappercallback.h"
+
+#define SUPER() \
+GO(0)   \
+GO(1)   \
+GO(2)   \
+GO(3)   \
+GO(4)
+
+// log_callback ...
+#define GO(A)   \
+static uintptr_t my_log_callback_fct_##A = 0;                                   \
+static void my_log_callback_##A(void* a, int b, void* c, va_list d)                   \
+{                                                                       \
+    x64_va_list_t null_va = {0};                                        \
+    char* p = NULL;                                                     \
+    vasprintf(&p, c, d);                                                \
+    RunFunctionFmt(my_log_callback_fct_##A, "pipp", a, b, d, null_va);  \
+    free(p);                                                            \
+}
+SUPER()
+#undef GO
+static void* find_log_callback_Fct(void* fct)
+{
+    if(!fct) return fct;
+    if(GetNativeFnc((uintptr_t)fct))  return GetNativeFnc((uintptr_t)fct);
+    #define GO(A) if(my_log_callback_fct_##A == (uintptr_t)fct) return my_log_callback_##A;
+    SUPER()
+    #undef GO
+    #define GO(A) if(my_log_callback_fct_##A == 0) {my_log_callback_fct_##A = (uintptr_t)fct; return my_log_callback_##A; }
+    SUPER()
+    #undef GO
+    printf_log(LOG_NONE, "Warning, no more slot for libavutil56 log_callback callback\n");
+    return NULL;
+}
+
+#undef SUPER
+
+EXPORT void my_av_log_set_callback(x64emu_t* emu, void* f)
+{
+    my->av_log_set_callback(find_log_callback_Fct(f));
+}
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedlibavutil56_private.h b/src/wrapped/wrappedlibavutil56_private.h
new file mode 100644
index 00000000..4e937ebd
--- /dev/null
+++ b/src/wrapped/wrappedlibavutil56_private.h
@@ -0,0 +1,556 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error Meh...
+#endif
+
+//GO(av_add_i, 
+//GO(av_add_q, 
+//GO(av_add_stable, 
+GO(av_adler32_update, uFupL)
+GO(av_aes_alloc, pFv)
+GO(av_aes_crypt, vFpppipi)
+GO(av_aes_ctr_alloc, pFv)
+GO(av_aes_ctr_crypt, vFpppi)
+GO(av_aes_ctr_free, vFp)
+GO(av_aes_ctr_get_iv, pFp)
+GO(av_aes_ctr_increment_iv, vFp)
+GO(av_aes_ctr_init, iFpp)
+GO(av_aes_ctr_set_full_iv, vFpp)
+GO(av_aes_ctr_set_iv, vFpp)
+GO(av_aes_ctr_set_random_iv, vFp)
+GO(av_aes_init, iFppii)
+DATA(av_aes_size, 4)
+GO(av_append_path_component, pFpp)
+//GOM(av_asprintf, pFEpV)
+GO(av_assert0_fpu, vFv)
+GO(av_audio_fifo_alloc, pFiii)
+GO(av_audio_fifo_drain, iFpi)
+GO(av_audio_fifo_free, vFp)
+GO(av_audio_fifo_peek, iFppi)
+GO(av_audio_fifo_peek_at, iFppii)
+GO(av_audio_fifo_read, iFppi)
+GO(av_audio_fifo_realloc, iFpi)
+GO(av_audio_fifo_reset, vFp)
+GO(av_audio_fifo_size, iFp)
+GO(av_audio_fifo_space, iFp)
+GO(av_audio_fifo_write, iFppi)
+GO(av_base64_decode, iFppi)
+GO(av_base64_encode, pFpipi)
+GO(av_basename, pFp)
+GO(av_blowfish_alloc, pFv)
+GO(av_blowfish_crypt, vFpppipi)
+GO(av_blowfish_crypt_ecb, vFpppi)
+GO(av_blowfish_init, vFppi)
+GO(av_bmg_get, vFpp)
+GO(av_bprint_append_data, vFppu)
+//GO(av_bprint_channel_layout, 
+GO(av_bprint_chars, vFpcu)
+GO(av_bprint_clear, vFp)
+GO(av_bprint_escape, vFpppui)
+//GOM(av_bprintf, vFEppV)
+GO(av_bprint_finalize, iFpp)
+GO(av_bprint_get_buffer, vFpupp)
+GO(av_bprint_init, vFpuu)
+GO(av_bprint_init_for_buffer, vFppu)
+GO(av_bprint_strftime, vFppp)
+GO(av_buffer_alloc, pFL)
+GO(av_buffer_allocz, pFL)
+//GOM(av_buffer_create, pFEpLppi)
+GO(av_buffer_default_free, vFpp)
+GO(av_buffer_get_opaque, pFp)
+GO(av_buffer_get_ref_count, iFp)
+GO(av_buffer_is_writable, iFp)
+GO(av_buffer_make_writable, iFp)
+GO(av_buffer_pool_buffer_get_opaque, pFp)
+GO(av_buffer_pool_get, pFp)
+//GOM(av_buffer_pool_init, pFELp)
+//GOM(av_buffer_pool_init2, pFELppp)
+GO(av_buffer_pool_uninit, vFp)
+GO(av_buffer_realloc, iFpL)
+GO(av_buffer_ref, pFp)
+GO(av_buffer_replace, iFpp)
+GO(av_buffer_unref, vFp)
+GO(av_calloc, pFLL)
+GO(av_camellia_alloc, pFv)
+GO(av_camellia_crypt, vFpppipi)
+GO(av_camellia_init, iFppi)
+DATA(av_camellia_size, 4)
+GO(av_cast5_alloc, pFv)
+GO(av_cast5_crypt, vFpppii)
+GO(av_cast5_crypt2, vFpppipi)
+GO(av_cast5_init, iFppi)
+DATA(av_cast5_size, 4)
+//GO(av_channel_layout_extract_channel, 
+GO(av_chroma_location_from_name, iFp)
+GO(av_chroma_location_name, pFu)
+//GO(av_cmp_i, 
+GO(av_color_primaries_from_name, iFp)
+GO(av_color_primaries_name, pFu)
+GO(av_color_range_from_name, iFp)
+GO(av_color_range_name, pFu)
+GO(av_color_space_from_name, iFp)
+GO(av_color_space_name, pFu)
+GO(av_color_transfer_from_name, iFp)
+GO(av_color_transfer_name, pFu)
+GO(av_compare_mod, IFUUU)
+//GO(av_compare_ts, 
+GO(av_content_light_metadata_alloc, pFp)
+GO(av_content_light_metadata_create_side_data, pFp)
+GO(av_cpu_count, iFv)
+GO(av_cpu_max_align, LFv)
+GO(av_crc, uFpupL)
+GO(av_crc_get_table, pFu)
+GO(av_crc_init, iFpiiui)
+GO(av_d2q, UFdi)
+//GO(av_d2str, 
+GO(av_default_get_category, uFp)
+GO(av_default_item_name, pFp)
+GO(av_des_alloc, pFv)
+GO(av_des_crypt, vFpppipi)
+GO(av_des_init, iFppii)
+GO(av_des_mac, vFpppi)
+GO(av_dict_copy, iFppi)
+GO(av_dict_count, iFp)
+GO(av_dict_free, vFp)
+GO(av_dict_get, pFpppi)
+GO(av_dict_get_string, iFppcc)
+GO(av_dict_parse_string, iFppppi)
+GO(av_dict_set, iFpppi)
+GO(av_dict_set_int, iFppIi)
+GO(av_dirname, pFp)
+GO(av_display_matrix_flip, vFpii)
+GO(av_display_rotation_get, dFp)
+GO(av_display_rotation_set, vFpd)
+//GO(av_div_i, 
+//GO(av_div_q, 
+//GO(av_dovi_alloc, 
+//GO(av_downmix_info_update_side_data, 
+//GO(av_dynamic_hdr_plus_alloc, 
+//GO(av_dynamic_hdr_plus_create_side_data, 
+GO(av_dynarray2_add, pFppLp)
+GO(av_dynarray_add, vFppp)
+GO(av_dynarray_add_nofree, iFppp)
+GO(av_encryption_info_add_side_data, pFpp)
+GO(av_encryption_info_alloc, pFuuu)
+GO(av_encryption_info_clone, pFp)
+GO(av_encryption_info_free, vFp)
+GO(av_encryption_info_get_side_data, pFpL)
+GO(av_encryption_init_info_add_side_data, pFpp)
+GO(av_encryption_init_info_alloc, pFuuuu)
+GO(av_encryption_init_info_free, vFp)
+GO(av_encryption_init_info_get_side_data, pFpL)
+GO(av_escape, iFpppui)
+GO(av_expr_count_func, iFppii)
+GO(av_expr_count_vars, iFppi)
+GO(av_expr_eval, dFppp)
+GO(av_expr_free, vFp)
+//GOM(av_expr_parse, iFEpppppppip)
+//GOM(av_expr_parse_and_eval, iFEpppppppppip)
+GO(av_fast_malloc, vFppL)
+GO(av_fast_mallocz, vFppL)
+GO(av_fast_realloc, pFppL)
+//GO(av_fifo_alloc, 
+//GO(av_fifo_alloc_array, 
+//GO(av_fifo_drain, 
+//GO(av_fifo_free, 
+//GO(av_fifo_freep, 
+//GO(av_fifo_generic_peek, 
+//GO(av_fifo_generic_peek_at, 
+//GO(av_fifo_generic_read, 
+//GO(av_fifo_generic_write, 
+//GO(av_fifo_grow, 
+//GO(av_fifo_realloc2, 
+//GO(av_fifo_reset, 
+//GO(av_fifo_size, 
+//GO(av_fifo_space, 
+//GO(av_file_map, 
+//GO(av_file_unmap, 
+GO(av_film_grain_params_alloc, pFp)
+GO(av_film_grain_params_create_side_data, pFp)
+GO(av_find_best_pix_fmt_of_2, iFiiiip)
+GO(av_find_info_tag, iFpipp)
+//GO(av_find_nearest_q_idx, 
+//GO(av_fopen_utf8, 
+GO(av_force_cpu_flags, vFi)
+GO(av_fourcc_make_string, pFpu)
+GO(av_frame_alloc, pFv)
+GO(av_frame_apply_cropping, iFpi)
+GO(av_frame_clone, pFp)
+GO(av_frame_copy, iFpp)
+GO(av_frame_copy_props, iFpp)
+GO(av_frame_free, vFp)
+//GO(av_frame_get_best_effort_timestamp, 
+GO(av_frame_get_buffer, iFpi)
+//GO(av_frame_get_channel_layout, 
+//GO(av_frame_get_channels, 
+//GO(av_frame_get_color_range, 
+//GO(av_frame_get_colorspace, 
+//GO(av_frame_get_decode_error_flags, 
+//GO(av_frame_get_metadata, 
+//GO(av_frame_get_pkt_duration, 
+//GO(av_frame_get_pkt_pos, 
+//GO(av_frame_get_pkt_size, 
+GO(av_frame_get_plane_buffer, pFpi)
+//GO(av_frame_get_qp_table, 
+//GO(av_frame_get_sample_rate, 
+GO(av_frame_get_side_data, pFpu)
+GO(av_frame_is_writable, iFp)
+GO(av_frame_make_writable, iFp)
+GO(av_frame_move_ref, vFpp)
+GO(av_frame_new_side_data, pFpuL)
+GO(av_frame_new_side_data_from_buf, pFpup)
+GO(av_frame_ref, iFpp)
+GO(av_frame_remove_side_data, vFpu)
+//GO(av_frame_set_best_effort_timestamp, 
+//GO(av_frame_set_channel_layout, 
+//GO(av_frame_set_channels, 
+//GO(av_frame_set_color_range, 
+//GO(av_frame_set_colorspace, 
+//GO(av_frame_set_decode_error_flags, 
+//GO(av_frame_set_metadata, 
+//GO(av_frame_set_pkt_duration, 
+//GO(av_frame_set_pkt_pos, 
+//GO(av_frame_set_pkt_size, 
+//GO(av_frame_set_qp_table, 
+//GO(av_frame_set_sample_rate, 
+GO(av_frame_side_data_name, pFu)
+GO(av_frame_unref, vFp)
+GO(av_free, vFp)
+GO(av_freep, vFp)
+GO(av_gcd, IFII)
+//GO(av_gcd_q, 
+GO(av_get_alt_sample_fmt, iFii)
+GO(av_get_bits_per_pixel, iFp)
+GO(av_get_bytes_per_sample, iFi)
+//GO(av_get_channel_description, 
+//GO(av_get_channel_layout, 
+//GO(av_get_channel_layout_channel_index, 
+//GO(av_get_channel_layout_nb_channels, 
+//GO(av_get_channel_layout_string, 
+//GO(av_get_channel_name, 
+//GO(av_get_colorspace_name, 
+GO(av_get_cpu_flags, iFv)
+//GO(av_get_default_channel_layout, 
+//GO(av_get_extended_channel_layout, 
+GO(av_get_known_color_name, pFip)
+GO(av_get_media_type_string, pFi)
+GO(av_get_packed_sample_fmt, iFi)
+GO(av_get_padded_bits_per_pixel, iFp)
+GO(av_get_picture_type_char, cFu)
+GO(av_get_pix_fmt, iFp)
+GO(av_get_pix_fmt_loss, iFiii)
+GO(av_get_pix_fmt_name, pFi)
+GO(av_get_pix_fmt_string, pFpii)
+GO(av_get_planar_sample_fmt, iFi)
+GO(av_get_random_seed, uFv)
+GO(av_get_sample_fmt, iFp)
+GO(av_get_sample_fmt_name, pFi)
+GO(av_get_sample_fmt_string, pFpii)
+//GO(av_get_standard_channel_layout, 
+GO(av_gettime, IFv)
+GO(av_get_time_base_q, UFv)
+GO(av_gettime_relative, IFv)
+GO(av_gettime_relative_is_monotonic, iFv)
+GO(av_get_token, pFpp)
+GO(av_hash_alloc, iFpp)
+GO(av_hash_final, vFpp)
+GO(av_hash_final_b64, vFppi)
+GO(av_hash_final_bin, vFppi)
+GO(av_hash_final_hex, vFppi)
+GO(av_hash_freep, vFp)
+GO(av_hash_get_name, pFp)
+GO(av_hash_get_size, iFp)
+GO(av_hash_init, vFp)
+GO(av_hash_names, pFi)
+GO(av_hash_update, vFppL)
+GO(av_hmac_alloc, pFu)
+GO(av_hmac_calc, iFppupupu)
+GO(av_hmac_final, iFppu)
+GO(av_hmac_free, vFp)
+GO(av_hmac_init, vFppu)
+GO(av_hmac_update, vFppu)
+GO(av_hwdevice_ctx_alloc, pFu)
+GO(av_hwdevice_ctx_create, iFpuppi)
+GO(av_hwdevice_ctx_create_derived, iFpupi)
+GO(av_hwdevice_ctx_create_derived_opts, iFpuppi)
+GO(av_hwdevice_ctx_init, iFp)
+GO(av_hwdevice_find_type_by_name, uFp)
+GO(av_hwdevice_get_hwframe_constraints, pFpp)
+GO(av_hwdevice_get_type_name, pFu)
+GO(av_hwdevice_hwconfig_alloc, pFp)
+GO(av_hwdevice_iterate_types, uFu)
+GO(av_hwframe_constraints_free, vFp)
+GO(av_hwframe_ctx_alloc, pFp)
+GO(av_hwframe_ctx_create_derived, iFpippi)
+GO(av_hwframe_ctx_init, iFp)
+GO(av_hwframe_get_buffer, iFppi)
+GO(av_hwframe_map, iFppi)
+GO(av_hwframe_transfer_data, iFppi)
+GO(av_hwframe_transfer_get_formats, iFpupi)
+//GO(av_i2int, 
+GO(av_image_alloc, iFppiiii)
+//GO(av_image_check_sar, 
+GO(av_image_check_size, iFuuip)
+GO(av_image_check_size2, iFuuIiip)
+GO(av_image_copy, vFppppiii)
+GO(av_image_copy_plane, vFpipiii)
+GO(av_image_copy_to_buffer, iFpippiiii)
+GO(av_image_copy_uc_from, vFppppiii)
+GO(av_image_fill_arrays, iFpppiiii)
+GO(av_image_fill_black, iFppiuii)
+GO(av_image_fill_linesizes, iFpii)
+GO(av_image_fill_max_pixsteps, vFppp)
+GO(av_image_fill_plane_sizes, iFpiip)
+GO(av_image_fill_pointers, iFpiipp)
+GO(av_image_get_buffer_size, iFiiii)
+GO(av_image_get_linesize, iFiii)
+//GO(av_int2i, 
+GO(av_int_list_length_for_size, uFupU)
+GO(av_lfg_init, vFpu)
+GO(av_lfg_init_from_data, iFppu)
+//GOM(av_log, vFEpipV)
+GO(av_log2, iFu)
+GO(av_log2_16bit, iFu)
+//GO(av_log2_i, 
+//GOM(av_log_default_callback, vFEpipA)
+//GOM(av_log_format_line, vFEpipApip)
+//GOM(av_log_format_line2, iFEpipApip)
+GO(av_log_get_flags, iFv)
+GO(av_log_get_level, iFv)
+//GOM(av_log_once, vFEpiippV)
+GOM(av_log_set_callback, vFEp)
+GO(av_log_set_flags, vFi)
+GO(av_log_set_level, vFi)
+//GO(av_lzo1x_decode, 
+GO(av_malloc, pFL)
+GO(av_malloc_array, pFLL)
+GO(av_mallocz, pFL)
+//GO(av_mallocz_array, 
+GO(av_mastering_display_metadata_alloc, pFv)
+GO(av_mastering_display_metadata_create_side_data, pFp)
+GO(av_match_list, iFppc)
+GO(av_match_name, iFpp)
+GO(av_max_alloc, vFL)
+GO(av_md5_alloc, pFv)
+GO(av_md5_final, vFpp)
+GO(av_md5_init, vFp)
+DATA(av_md5_size, 4)
+GO(av_md5_sum, vFppL)
+GO(av_md5_update, vFppL)
+GO(av_memcpy_backptr, vFpii)
+GO(av_memdup, pFpL)
+//GO(av_mod_i, 
+//GO(av_mul_i, 
+//GO(av_mul_q, 
+GO(av_murmur3_alloc, pFv)
+GO(av_murmur3_final, vFpp)
+GO(av_murmur3_init, vFp)
+GO(av_murmur3_init_seeded, vFpU)
+GO(av_murmur3_update, vFppL)
+//GO(av_nearer_q, 
+//GOM(av_opt_child_class_iterate, pFEpp)
+//GO(av_opt_child_class_next, 
+GO(av_opt_child_next, pFpp)
+GO(av_opt_copy, iFpp)
+GO(av_opt_eval_double, iFpppp)
+GO(av_opt_eval_flags, iFpppp)
+GO(av_opt_eval_float, iFpppp)
+GO(av_opt_eval_int, iFpppp)
+GO(av_opt_eval_int64, iFpppp)
+GO(av_opt_eval_q, iFpppp)
+GO(av_opt_find, pFpppii)
+GO(av_opt_find2, pFpppiip)
+GO(av_opt_flag_is_set, iFppp)
+GO(av_opt_free, vFp)
+GO(av_opt_freep_ranges, vFp)
+GO(av_opt_get, iFppip)
+//GO(av_opt_get_channel_layout, 
+GO(av_opt_get_dict_val, iFppip)
+GO(av_opt_get_double, iFppip)
+GO(av_opt_get_image_size, iFppipp)
+GO(av_opt_get_int, iFppip)
+GO(av_opt_get_key_value, iFpppupp)
+GO(av_opt_get_pixel_fmt, iFppip)
+GO(av_opt_get_q, iFppip)
+GO(av_opt_get_sample_fmt, iFppip)
+GO(av_opt_get_video_rate, iFppip)
+GO(av_opt_is_set_to_default, iFpp)
+GO(av_opt_is_set_to_default_by_name, iFppi)
+GO(av_opt_next, pFpp)
+//GOM(av_opt_ptr, pFEppp)
+GO(av_opt_query_ranges, iFpppi)
+GO(av_opt_query_ranges_default, iFpppi)
+GO(av_opt_serialize, iFpiipcc)
+GO(av_opt_set, iFpppi)
+GO(av_opt_set_bin, iFpppii)
+//GO(av_opt_set_channel_layout, 
+GO(av_opt_set_defaults, vFp)
+GO(av_opt_set_defaults2, vFpii)
+GO(av_opt_set_dict, iFpp)
+GO(av_opt_set_dict2, iFppi)
+GO(av_opt_set_dict_val, iFpppi)
+GO(av_opt_set_double, iFppdi)
+GO(av_opt_set_from_string, iFppppp)
+GO(av_opt_set_image_size, iFppiii)
+GO(av_opt_set_int, iFppIi)
+GO(av_opt_set_pixel_fmt, iFppii)
+//GO(av_opt_set_q, 
+GO(av_opt_set_sample_fmt, iFppii)
+//GO(av_opt_set_video_rate, 
+GO(av_opt_show2, iFppii)
+GO(av_parse_color, iFppip)
+GO(av_parse_cpu_caps, iFpp)
+//GO(av_parse_cpu_flags, 
+GO(av_parse_ratio, iFppiip)
+GO(av_parse_time, iFppi)
+GO(av_parse_video_rate, iFpp)
+GO(av_parse_video_size, iFppp)
+//GOM(av_pixelutils_get_sad_fn, pFEiiip)
+GO(av_pix_fmt_count_planes, iFi)
+GO(av_pix_fmt_desc_get, pFi)
+GO(av_pix_fmt_desc_get_id, iFp)
+GO(av_pix_fmt_desc_next, pFp)
+GO(av_pix_fmt_get_chroma_sub_sample, iFipp)
+GO(av_pix_fmt_swap_endianness, iFi)
+//GO(avpriv_alloc_fixed_dsp, 
+//DATA(avpriv_cga_font, 
+//GO(avpriv_dict_set_timestamp, 
+//GO(avpriv_float_dsp_alloc, 
+//GO(avpriv_get_gamma_from_trc, 
+//GO(avpriv_get_trc_function_from_trc, 
+//GO(avpriv_init_lls, 
+//GO(avpriv_open, 
+//GO(avpriv_report_missing_feature, 
+//GO(avpriv_request_sample, 
+//GO(avpriv_scalarproduct_float_c, 
+//GO(avpriv_set_systematic_pal2, 
+//GO(avpriv_slicethread_create, 
+//GO(avpriv_slicethread_execute, 
+//GO(avpriv_slicethread_free, 
+//GO(avpriv_solve_lls, 
+//GO(avpriv_tempfile, 
+//DATA(avpriv_vga16_font, 
+//GO(av_q2intfloat, 
+GO(av_rc4_alloc, pFv)
+GO(av_rc4_crypt, vFpppipi)
+GO(av_rc4_init, iFppii)
+GO(av_read_image_line, vFppppiiiii)
+GO(av_read_image_line2, vFppppiiiiii)
+GO(av_realloc, pFpL)
+GO(av_realloc_array, pFpLL)
+GO(av_realloc_f, pFpLL)
+GO(av_reallocp, iFpL)
+GO(av_reallocp_array, iFpLL)
+GO(av_reduce, iFppIII)
+GO(av_rescale, IFIII)
+//GO(av_rescale_delta, 
+//GO(av_rescale_q, 
+GO(av_rescale_q_rnd, IFIUUu)    // Both U are AVRationnal: struct with 2 ints
+GO(av_rescale_rnd, IFIIIu)
+GO(av_ripemd_alloc, pFv)
+GO(av_ripemd_final, vFpp)
+GO(av_ripemd_init, iFpi)
+DATA(av_ripemd_size, 4)
+GO(av_ripemd_update, vFppL)
+GO(av_sample_fmt_is_planar, iFi)
+GO(av_samples_alloc, iFppiiii)
+GO(av_samples_alloc_array_and_samples, iFppiiii)
+GO(av_samples_copy, iFppiiiii)
+GO(av_samples_fill_arrays, iFpppiiii)
+GO(av_samples_get_buffer_size, iFpiiii)
+GO(av_samples_set_silence, iFpiiii)
+//GO(av_set_cpu_flags_mask, 
+GO(av_set_options_string, iFpppp)
+GO(av_sha512_alloc, pFv)
+GO(av_sha512_final, vFpp)
+GO(av_sha512_init, iFpi)
+DATA(av_sha512_size, 4)
+GO(av_sha512_update, vFppL)
+GO(av_sha_alloc, pFv)
+GO(av_sha_final, vFpp)
+GO(av_sha_init, iFpi)
+DATA(av_sha_size, 4)
+GO(av_sha_update, vFppL)
+//GO(av_shr_i, 
+GO(av_small_strptime, pFppp)
+GO(av_spherical_alloc, pFp)
+GO(av_spherical_from_name, iFp)
+GO(av_spherical_projection_name, pFu)
+GO(av_spherical_tile_bounds, vFpLLpppp)
+//GOM(av_sscanf, iFEppV)
+GO(av_stereo3d_alloc, pFv)
+GO(av_stereo3d_create_side_data, pFp)
+GO(av_stereo3d_from_name, iFp)
+GO(av_stereo3d_type_name, pFu)
+GO(av_strcasecmp, iFpp)
+GO(av_strdup, pFp)
+GO(av_strerror, iFipL)
+GO(av_strireplace, pFppp)
+GO(av_stristart, iFppp)
+GO(av_stristr, pFpp)
+GO(av_strlcat, LFppL)
+//GOM(av_strlcatf, LFEpLpV)
+GO(av_strlcpy, LFppL)
+GO(av_strncasecmp, iFppL)
+GO(av_strndup, pFpL)
+GO(av_strnstr, pFppL)
+GO(av_strstart, iFppp)
+GO(av_strtod, dFpp)
+GO(av_strtok, pFppp)
+//GO(av_sub_i, 
+//GO(av_sub_q, 
+GO(av_tea_alloc, pFv)
+GO(av_tea_crypt, vFpppipi)
+GO(av_tea_init, vFppi)
+DATA(av_tea_size, 4)
+GO(av_tempfile, iFppip) // Warning: failed to confirm
+GO(av_thread_message_flush, vFp)
+GO(av_thread_message_queue_alloc, iFpuu)
+GO(av_thread_message_queue_free, vFp)
+GO(av_thread_message_queue_nb_elems, iFp)
+GO(av_thread_message_queue_recv, iFppu)
+GO(av_thread_message_queue_send, iFppu)
+GO(av_thread_message_queue_set_err_recv, vFpi)
+GO(av_thread_message_queue_set_err_send, vFpi)
+//GOM(av_thread_message_queue_set_free_func, vFEpp)
+GO(av_timecode_adjust_ntsc_framenum2, iFii)
+//GO(av_timecode_check_frame_rate, 
+//GO(av_timecode_get_smpte, 
+GO(av_timecode_get_smpte_from_framenum, uFpi)
+//GO(av_timecode_init, 
+//GO(av_timecode_init_from_components, 
+//GO(av_timecode_init_from_string, 
+GO(av_timecode_make_mpeg_tc_string, pFpu)
+GO(av_timecode_make_smpte_tc_string, pFpui)
+//GO(av_timecode_make_smpte_tc_string2, 
+GO(av_timecode_make_string, pFppi)
+GO(av_timegm, lFp)
+GO(av_tree_destroy, vFp)
+//GOM(av_tree_enumerate, vFEpppp)
+//GOM(av_tree_find, pFEpppp)
+//GOM(av_tree_insert, pFEpppp)
+GO(av_tree_node_alloc, pFv)
+DATA(av_tree_node_size, 4)
+GO(av_twofish_alloc, pFv)
+GO(av_twofish_crypt, vFpppipi)
+GO(av_twofish_init, iFppi)
+DATA(av_twofish_size, 4)
+//GOM(av_tx_init, iFEppuiipU)
+GO(av_tx_uninit, vFp)
+GO(av_usleep, iFu)
+GO(av_utf8_decode, iFpppu)
+GO(avutil_configuration, pFv)
+DATA(av_util_ffversion, 8) // Warning: failed to confirm
+GO(avutil_license, pFv)
+GO(avutil_version, uFv)
+//GOM(av_vbprintf, vFEppA)
+GO(av_version_info, pFv)
+GO(av_video_enc_params_alloc, pFiup)
+GO(av_video_enc_params_create_side_data, pFpiu)
+//GOM(av_vlog, vFEpipA)
+GO(av_write_image_line, vFppppiiii)
+GO(av_write_image_line2, vFppppiiiii)
+GO(av_xtea_alloc, pFv)
+GO(av_xtea_crypt, vFpppipi)
+GO(av_xtea_init, vFpp)
+GO(av_xtea_le_crypt, vFpppipi)
+GO(av_xtea_le_init, vFpp)