diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-12-16 12:41:05 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-12-16 12:41:05 +0100 |
| commit | d432b18d23e61ad3b73f6a3c821f23eb2dd7792e (patch) | |
| tree | bb630e39129f19e8b01630eca8a04cc9bbfd9543 /src | |
| parent | 98c0811525ff6b0ba099f2a88660c3067b73c1e1 (diff) | |
| download | box64-d432b18d23e61ad3b73f6a3c821f23eb2dd7792e.tar.gz box64-d432b18d23e61ad3b73f6a3c821f23eb2dd7792e.zip | |
[BOX32][WRAPPER] Added 32bits wrapped libxcb
Diffstat (limited to 'src')
| -rw-r--r-- | src/library_list_32.h | 2 | ||||
| -rw-r--r-- | src/libtools/myalignxcb32.c | 16 | ||||
| -rw-r--r-- | src/wrapped32/generated/converter32.c | 58 | ||||
| -rw-r--r-- | src/wrapped32/generated/converter32.h | 29 | ||||
| -rw-r--r-- | src/wrapped32/generated/functions_list.txt | 47 | ||||
| -rw-r--r-- | src/wrapped32/generated/wrappedlibxcbdefs32.h | 18 | ||||
| -rw-r--r-- | src/wrapped32/generated/wrappedlibxcbtypes32.h | 26 | ||||
| -rw-r--r-- | src/wrapped32/generated/wrappedlibxcbundefs32.h | 18 | ||||
| -rw-r--r-- | src/wrapped32/generated/wrapper32.c | 63 | ||||
| -rw-r--r-- | src/wrapped32/generated/wrapper32.h | 30 | ||||
| -rw-r--r-- | src/wrapped32/wrappedlibxcb.c | 102 | ||||
| -rw-r--r-- | src/wrapped32/wrappedlibxcb_private.h | 681 |
12 files changed, 1082 insertions, 8 deletions
diff --git a/src/library_list_32.h b/src/library_list_32.h index 14a7ea99..0c713ae0 100644 --- a/src/library_list_32.h +++ b/src/library_list_32.h @@ -61,6 +61,8 @@ GO("libXinerama.so.1", xinerama) GO("libX11-xcb.so.1", libx11xcb) GO("libX11-xcb.so", libx11xcb) +GO("libxcb.so.1", libxcb) +GO("libxcb.so", libxcb) GO("libopenal.so.1", openal) GO("libopenal.so.0", openal) diff --git a/src/libtools/myalignxcb32.c b/src/libtools/myalignxcb32.c index e1b0e868..3bc8e5fe 100644 --- a/src/libtools/myalignxcb32.c +++ b/src/libtools/myalignxcb32.c @@ -72,7 +72,7 @@ typedef struct my_xcb_connection_32_s { #define NXCB 8 static my_xcb_connection_t* my_xcb_connects[NXCB] = {0}; -static my_xcb_connection_32_t x64_xcb_connects[NXCB] = {0}; +static my_xcb_connection_32_t i386_xcb_connects[NXCB] = {0}; void* align_xcb_connection32(void* src) { @@ -81,7 +81,7 @@ void* align_xcb_connection32(void* src) // find it my_xcb_connection_t * dest = NULL; for(int i=0; i<NXCB && !dest; ++i) - if(src==&x64_xcb_connects[i]) + if(src==&i386_xcb_connects[i]) dest = my_xcb_connects[i]; #if 1 if(!dest) @@ -180,15 +180,15 @@ void* add_xcb_connection32(void* src) // check if already exist for(int i=0; i<NXCB; ++i) if(my_xcb_connects[i] == src) { - unalign_xcb_connection32(src, &x64_xcb_connects[i]); - return &x64_xcb_connects[i]; + unalign_xcb_connection32(src, &i386_xcb_connects[i]); + return &i386_xcb_connects[i]; } // find a free slot for(int i=0; i<NXCB; ++i) if(!my_xcb_connects[i]) { my_xcb_connects[i] = src; - unalign_xcb_connection32(src, &x64_xcb_connects[i]); - return &x64_xcb_connects[i]; + unalign_xcb_connection32(src, &i386_xcb_connects[i]); + return &i386_xcb_connects[i]; } printf_log(LOG_NONE, "BOX64: Error, no more free xcb_connect 32bits slot for %p\n", src); return src; @@ -200,9 +200,9 @@ void del_xcb_connection32(void* src) return; // find it for(int i=0; i<NXCB; ++i) - if(src==&x64_xcb_connects[i]) { + if(src==&i386_xcb_connects[i]) { my_xcb_connects[i] = NULL; - memset(&x64_xcb_connects[i], 0, sizeof(my_xcb_connection_32_t)); + memset(&i386_xcb_connects[i], 0, sizeof(my_xcb_connection_32_t)); return; } printf_log(LOG_NONE, "BOX64: Error, 32bits xcb_connect %p not found for deletion\n", src); diff --git a/src/wrapped32/generated/converter32.c b/src/wrapped32/generated/converter32.c index 3757a934..407addd6 100644 --- a/src/wrapped32/generated/converter32.c +++ b/src/wrapped32/generated/converter32.c @@ -194,6 +194,22 @@ void to_struct_LLLLLLLLLLLLLLLLLL(ptr_t d, const struct_LLLLLLLLLLLLLLLLLL_t *sr *(ulong_t*)dest = to_ulong(src->L17); dest += 4; } +void from_struct_LpCC(struct_LpCC_t *dest, ptr_t s) { + uint8_t* src = (uint8_t*)from_ptrv(s); + dest->L0 = from_ulong(*(ulong_t*)src); src += 4; + dest->p1 = from_ptrv(*(ptr_t*)src); src += 4; + dest->C2 = *(uint8_t*)src; src += 1; + dest->C3 = *(uint8_t*)src; src += 1; +} +void to_struct_LpCC(ptr_t d, const struct_LpCC_t *src) { + if (!src) return; + uint8_t* dest = (uint8_t*)from_ptrv(d); + *(ulong_t*)dest = to_ulong(src->L0); dest += 4; + *(ptr_t*)dest = to_ptrv(src->p1); dest += 4; + *(uint8_t*)dest = src->C2; dest += 1; + *(uint8_t*)dest = src->C3; dest += 1; +} + void from_struct_h(struct_h_t *dest, ptr_t s) { uint8_t* src = (uint8_t*)from_ptrv(s); dest->h0 = from_hash(*(ulong_t*)src); src += 4; @@ -214,6 +230,18 @@ void to_struct_H(ptr_t d, const struct_H_t *src) { *(ulong_t*)dest = to_hash_d(src->H0); dest += 4; } +void from_struct_pL(struct_pL_t *dest, ptr_t s) { + uint8_t* src = (uint8_t*)from_ptrv(s); + dest->p0 = from_ptrv(*(ptr_t*)src); src += 4; + dest->L1 = from_ulong(*(long_t*)src); src += 4; +} +void to_struct_pL(ptr_t d, const struct_pL_t *src) { + if (!src) return; + uint8_t* dest = (uint8_t*)from_ptrv(d); + *(ptr_t*)dest = to_ptrv(src->p0); dest += 4; + *(ulong_t*)dest = to_ulong(src->L1); dest += 4; +} + void from_struct_ppppii(struct_ppppii_t *dest, ptr_t s) { uint8_t* src = (uint8_t*)from_ptrv(s); dest->p0 = from_ptrv(*(ptr_t*)src); src += 4; @@ -551,6 +579,20 @@ void to_struct_puu(ptr_t d, const struct_puu_t *src) { *(uint32_t*)dest = src->u2; dest += 4; } +void from_struct_pii(struct_pii_t *dest, ptr_t s) { + uint8_t* src = (uint8_t*)from_ptrv(s); + dest->p0 = from_ptrv(*(ptr_t*)src); src += 4; + dest->i1 = *(int*)src; src += 4; + dest->i2 = *(int*)src; src += 4; +} +void to_struct_pii(ptr_t d, const struct_pii_t *src) { + if (!src) return; + uint8_t* dest = (uint8_t*)from_ptrv(d); + *(ptr_t*)dest = to_ptrv(src->p0); dest += 4; + *(int*)dest = src->i1; dest += 4; + *(int*)dest = src->i2; dest += 4; +} + void from_struct_piiL(struct_piiL_t *dest, ptr_t s) { uint8_t* src = (uint8_t*)from_ptrv(s); dest->p0 = from_ptrv(*(ptr_t*)src); src += 4; @@ -567,6 +609,22 @@ void to_struct_piiL(ptr_t d, const struct_piiL_t *src) { *(ulong_t*)dest = to_ulong(src->L3); dest += 4; } +void from_struct_ipip(struct_ipip_t *dest, ptr_t s) { + uint8_t* src = (uint8_t*)from_ptrv(s); + dest->i0 = *(int*)src; src += 4; + dest->p1 = from_ptrv(*(ptr_t*)src); src += 4; + dest->i2 = *(int*)src; src += 4; + dest->p3 = from_ptrv(*(ptr_t*)src); src += 4; +} +void to_struct_ipip(ptr_t d, const struct_ipip_t *src) { + if (!src) return; + uint8_t* dest = (uint8_t*)from_ptrv(d); + *(int*)dest = src->i0; dest += 4; + *(ptr_t*)dest = to_ptrv(src->p1); dest += 4; + *(int*)dest = src->i2; dest += 4; + *(ptr_t*)dest = to_ptrv(src->p3); dest += 4; +} + void from_struct_piip(struct_piip_t *dest, ptr_t s) { uint8_t* src = (uint8_t*)from_ptrv(s); dest->p0 = from_ptrv(*(ptr_t*)src); src += 4; diff --git a/src/wrapped32/generated/converter32.h b/src/wrapped32/generated/converter32.h index 733f2c12..fe1e3eb4 100644 --- a/src/wrapped32/generated/converter32.h +++ b/src/wrapped32/generated/converter32.h @@ -96,6 +96,14 @@ typedef struct struct_LLLLLLLLLLLLLLLLLL_s { } struct_LLLLLLLLLLLLLLLLLL_t; void from_struct_LLLLLLLLLLLLLLLLLL(struct_LLLLLLLLLLLLLLLLLL_t *dest, ptr_t src); void to_struct_LLLLLLLLLLLLLLLLLL(ptr_t dest, const struct_LLLLLLLLLLLLLLLLLL_t *src); +typedef struct struct_LpCC_s { + unsigned long L0; + void* p1; + uint8_t C2; + uint8_t C3; +} struct_LpCC_t; +void from_struct_LpCC(struct_LpCC_t *dest, ptr_t src); +void to_struct_LpCC(ptr_t dest, const struct_LpCC_t *src); typedef struct struct_h_s { uintptr_t h0; } struct_h_t; @@ -106,6 +114,12 @@ typedef struct struct_H_s { } struct_H_t; void from_struct_H(struct_H_t *dest, ptr_t src); void to_struct_H(ptr_t dest, const struct_H_t *src); +typedef struct struct_pL_s { + void* p0; + unsigned long L1; +} struct_pL_t; +void from_struct_pL(struct_pL_t *dest, ptr_t src); +void to_struct_pL(ptr_t dest, const struct_pL_t *src); typedef struct struct_ppppii_s { void* p0; void* p1; @@ -277,6 +291,13 @@ typedef struct struct_puu_s { } struct_puu_t; void from_struct_puu(struct_puu_t *dest, ptr_t src); void to_struct_puu(ptr_t dest, const struct_puu_t *src); +typedef struct struct_pii_s { + void* p0; + int i1; + int i2; +} struct_pii_t; +void from_struct_pii(struct_pii_t *dest, ptr_t src); +void to_struct_pii(ptr_t dest, const struct_pii_t *src); typedef struct struct_piiL_s { void* p0; int i1; @@ -299,6 +320,14 @@ typedef struct struct_ppup_s { uint32_t u2; void* p3; } struct_ppup_t; +typedef struct struct_ipip_s { + int i0; + void* p1; + int i2; + void* p3; +} struct_ipip_t; +void from_struct_ipip(struct_ipip_t *dest, ptr_t src); +void to_struct_ipip(ptr_t dest, const struct_ipip_t *src); void from_struct_ppup(struct_ppup_t *dest, ptr_t src); void to_struct_ppup(ptr_t dest, const struct_ppup_t *src); typedef struct struct_iiiiiLi_s { diff --git a/src/wrapped32/generated/functions_list.txt b/src/wrapped32/generated/functions_list.txt index 19a7c1d6..25453a13 100644 --- a/src/wrapped32/generated/functions_list.txt +++ b/src/wrapped32/generated/functions_list.txt @@ -19,6 +19,7 @@ #() vES -> vES #() vFS -> vFS #() vFX -> vFX +#() vFn -> vFn #() cFc -> cFc #() cFi -> cFi #() cFu -> cFu @@ -42,6 +43,7 @@ #() iEh -> iEh #() iES -> iES #() iFX -> iFX +#() iFn -> iFn #() IEf -> IEf #() IEd -> IEd #() IEp -> IEp @@ -68,6 +70,7 @@ #() uFp -> uFp #() uES -> uES #() uFX -> uFX +#() uFn -> uFn #() UFv -> UFv #() UFi -> UFi #() UFu -> UFu @@ -111,6 +114,7 @@ #() pEp -> pEp #() pFp -> pFp #() pFX -> pFX +#() pFn -> pFn #() hEv -> hEv #() hFv -> hFv #() aEa -> aEa @@ -125,6 +129,7 @@ #() iFBp_ -> iFB #() LEBL_ -> LEB #() lFrll_ -> lFB +#() vFbpii_ -> vFB #() vFbLdd_ -> vFB #() vFbupi_ -> vFB #() iEBllll_ -> iEB @@ -182,6 +187,10 @@ #() vFXu -> vFXu #() vFXL -> vFXL #() vFXp -> vFXp +#() vFni -> vFni +#() vFnu -> vFnu +#() vFnU -> vFnU +#() vFnp -> vFnp #() cFpp -> cFpp #() wFpi -> wFpi #() iEEv -> iEEv @@ -213,6 +222,7 @@ #() iEpi -> iEpi #() iFpi -> iFpi #() iFpI -> iFpI +#() iFpW -> iFpW #() iEpu -> iEpu #() iFpu -> iFpu #() iFpU -> iFpU @@ -329,6 +339,8 @@ #() pFXu -> pFXu #() pFXL -> pFXL #() pFXp -> pFXp +#() pFnu -> pFnu +#() pFnp -> pFnp #() hFEp -> hFEp #() hEpa -> hEpa #() SEip -> SEip @@ -359,6 +371,7 @@ #() pEErl_ -> pEEB #() pErl_p -> pEBp #() vFBll_l -> vFBl +#() vFnbpi_ -> vFnB #() iEuBLL_ -> iEuB #() iEprll_ -> iEpB #() iEpbup_ -> iEpB @@ -366,6 +379,7 @@ #() iFbpi_i -> iFBi #() iEBll_p -> iEBp #() iFXbip_ -> iFXB +#() pFnbpi_ -> pFnB #() vFpbupi_ -> vFpB #() iESBliu_ -> iESB #() iFbppi_i -> iFBi @@ -520,6 +534,7 @@ #() iFpil -> iFpil #() iEpip -> iEpip #() iFpip -> iFpip +#() iFpWp -> iFpWp #() iFpuC -> iFpuC #() iEpuu -> iEpuu #() iFpuu -> iFpuu @@ -662,6 +677,7 @@ #() pFXLp -> pFXLp #() pFXpi -> pFXpi #() pFXpp -> pFXpp +#() pFnpL -> pFnpL #() aEipa -> aEipa #() SEEpp -> SEEpp #() SEppS -> SEppS @@ -684,6 +700,8 @@ #() iFppbL_ -> iFppB #() iFpbp_i -> iFpBi #() iFpbL_p -> iFpBp +#() iFbp_Wp -> iFBWp +#() iFbp_up -> iFBup #() iEBp_LL -> iEBLL #() iFbp_pi -> iFBpi #() iFbp_pI -> iFBpI @@ -713,6 +731,8 @@ #() pEppBp_ -> pEppB #() pFppbp_ -> pFppB #() pFXLbL_ -> pFXLB +#() pFnubp_ -> pFnuB +#() pFnUbp_ -> pFnUB #() iEpprLL_ -> iEppB #() iFXLbpp_ -> iFXLB #() iFXbLC_i -> iFXBi @@ -1021,6 +1041,7 @@ #() iFplibl_ -> iFpliB #() iFpppbp_ -> iFpppB #() iFppbL_p -> iFppBp +#() iFpbp_pp -> iFpBpp #() iFbp_pii -> iFBpii #() iFbp_pip -> iFBpip #() iFBp_pui -> iFBpui @@ -1038,6 +1059,8 @@ #() LEpbp_Lp -> LEpBLp #() iEEpprLL_ -> iEEppB #() iEpurLL_p -> iEpuBp +#() iFnbpL_iU -> iFnBiU +#() pFnbpi_up -> pFnBup #() vFppbp_bL_ -> vFppBB #() vFpbLdd_ip -> vFpBip #() iFppbL_bL_ -> iFppBB @@ -1045,6 +1068,8 @@ #() iEbp_bL_iS -> iEBBiS #() iFbp_bp_pi -> iFBBpi #() iFXbL_ibp_ -> iFXBiB +#() iFnubp_bp_ -> iFnuBB +#() iFnUbp_bp_ -> iFnUBB #() vFEpuBLLLL_ -> vFEpuB #() vFbp_ppbup_ -> vFBppB #() vFXLbpLiL_L -> vFXLBL @@ -1056,6 +1081,7 @@ #() pESBppppii_pi -> pESBpi #() iFEprllll_rll_ -> iFEpBB #() iFXLuriiiiiLi_ -> iFXLuB +#() uFnibpL_bLpCC_ -> uFniBB #() vFXLbLLLLLLLLLL_L -> vFXLBL #() iFXLbLLLLLLLLLL_L -> iFXLBL #() LEpLpriiiiiiiiilt_ -> LEpLpB @@ -1265,6 +1291,7 @@ #() pFpdddd -> pFpdddd #() pFppuup -> pFppuup #() pFppupp -> pFppupp +#() pFppnuu -> pFppnuu #() pFXLipp -> pFXLipp #() pFXpipi -> pFXpipi #() pFXppip -> pFXppip @@ -1435,6 +1462,7 @@ #() pFWCiWCi -> pFWCiWCi #() pFdddddd -> pFdddddd #() pFpiiiiu -> pFpiiiiu +#() pFppnCWp -> pFppnCWp #() XFpppppp -> XFpppppp #() iFpppibp_p -> iFpppiBp #() iFpppbp_pp -> iFpppBpp @@ -1691,6 +1719,7 @@ #() iFXuuLiuiiLL -> iFXuuLiuiiLL #() iFXLLpiiuuii -> iFXLLpiiuuii #() pFEpiiiiuuuu -> pFEpiiiiuuuu +#() pFEppnCuuuuu -> pFEppnCuuuuu #() pFpppppppppp -> pFpppppppppp #() pFXpuiipuuii -> pFXpuiipuuii #() iFXiiLiiibiip_ip -> iFXiiLiiiBip @@ -1715,6 +1744,7 @@ #() iFEXpLLiiLWpi -> iFEXpLLiiLWpi #() iFuiiiiuuiiip -> iFuiiiiuuiiip #() iFXLLpiiuuiiL -> iFXLLpiiuuiiL +#() pFEppnCuuuCup -> pFEppnCuuuCup #() pFEXpuiipuuii -> pFEXpuiipuuii #() iFXiiLLiiibiip_ip -> iFXiiLLiiiBip #() vFXiLLrLiiuL_iiiipi -> vFXiLLBiiiipi @@ -2617,6 +2647,23 @@ wrappedlibx11: wrappedlibx11xcb: - pFX: - XGetXCBConnection +wrappedlibxcb: +% Z my_xcb_XXX_iterator_t pii +% z my_xcb_cookie_t u +- vFp: + - xcb_disconnect +- pFpp: + - xcb_connect +- ZFpp: +- zFpnuu: +- zFpnCWp: +- zFpnCuuuuu: +- zFpnCuuuCup: +% ZFEpp -> pFEppp +% zFpnuu -> pFppnuu +% zFpnCWp -> pFppnCWp +% zFEpnCuuuuu -> pFEppnCuuuuu +% zFEpnCuuuCup -> pFEppnCuuuCup wrappedlibxcomposite: wrappedlibxcursor: - vFp: diff --git a/src/wrapped32/generated/wrappedlibxcbdefs32.h b/src/wrapped32/generated/wrappedlibxcbdefs32.h new file mode 100644 index 00000000..09822d48 --- /dev/null +++ b/src/wrapped32/generated/wrappedlibxcbdefs32.h @@ -0,0 +1,18 @@ +/********************************************************************* + * File automatically generated by rebuild_wrappers_32.py (v0.0.2.2) * + *********************************************************************/ +#ifndef __wrappedlibxcbDEFS32_H_ +#define __wrappedlibxcbDEFS32_H_ + +#define ZFEpp pFEppp +#define ZFEpp_32 pFEppp_32 +#define zFpnuu pFppnuu +#define zFpnuu_32 pFppnuu_32 +#define zFpnCWp pFppnCWp +#define zFpnCWp_32 pFppnCWp_32 +#define zFEpnCuuuuu pFEppnCuuuuu +#define zFEpnCuuuuu_32 pFEppnCuuuuu_32 +#define zFEpnCuuuCup pFEppnCuuuCup +#define zFEpnCuuuCup_32 pFEppnCuuuCup_32 + +#endif // __wrappedlibxcbDEFS32_H_ diff --git a/src/wrapped32/generated/wrappedlibxcbtypes32.h b/src/wrapped32/generated/wrappedlibxcbtypes32.h new file mode 100644 index 00000000..e4231f65 --- /dev/null +++ b/src/wrapped32/generated/wrappedlibxcbtypes32.h @@ -0,0 +1,26 @@ +/********************************************************************* + * File automatically generated by rebuild_wrappers_32.py (v0.0.2.2) * + *********************************************************************/ +#ifndef __wrappedlibxcbTYPES32_H_ +#define __wrappedlibxcbTYPES32_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*); +typedef void* (*pFpp_t)(void*, void*); +typedef my_xcb_XXX_iterator_t (*ZFpp_t)(void*, void*); +typedef my_xcb_cookie_t (*zFpnuu_t)(void*, void*, uint32_t, uint32_t); +typedef my_xcb_cookie_t (*zFpnCWp_t)(void*, void*, uint8_t, uint16_t, void*); +typedef my_xcb_cookie_t (*zFpnCuuuuu_t)(void*, void*, uint8_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t); +typedef my_xcb_cookie_t (*zFpnCuuuCup_t)(void*, void*, uint8_t, uint32_t, uint32_t, uint32_t, uint8_t, uint32_t, void*); + +#define SUPER() ADDED_FUNCTIONS() \ + GO(xcb_disconnect, vFp_t) \ + GO(xcb_connect, pFpp_t) + +#endif // __wrappedlibxcbTYPES32_H_ diff --git a/src/wrapped32/generated/wrappedlibxcbundefs32.h b/src/wrapped32/generated/wrappedlibxcbundefs32.h new file mode 100644 index 00000000..11c765c1 --- /dev/null +++ b/src/wrapped32/generated/wrappedlibxcbundefs32.h @@ -0,0 +1,18 @@ +/********************************************************************* + * File automatically generated by rebuild_wrappers_32.py (v0.0.2.2) * + *********************************************************************/ +#ifndef __wrappedlibxcbUNDEFS32_H_ +#define __wrappedlibxcbUNDEFS32_H_ + +#undef ZFEpp +#undef ZFEpp_32 +#undef zFpnuu +#undef zFpnuu_32 +#undef zFpnCWp +#undef zFpnCWp_32 +#undef zFEpnCuuuuu +#undef zFEpnCuuuuu_32 +#undef zFEpnCuuuCup +#undef zFEpnCuuuCup_32 + +#endif // __wrappedlibxcbUNDEFS32_H_ diff --git a/src/wrapped32/generated/wrapper32.c b/src/wrapped32/generated/wrapper32.c index b5bf8f48..b23687aa 100644 --- a/src/wrapped32/generated/wrapper32.c +++ b/src/wrapped32/generated/wrapper32.c @@ -89,6 +89,9 @@ int of_convert32(int); void* getDisplay(void*); void* addDisplay(void*); +void* align_xcb_connection32(void* src); +void unalign_xcb_connection32(void* src, void* dst); + typedef void (*vEv_t)(void); typedef void (*vFv_t)(void); typedef void (*vFc_t)(int8_t); @@ -110,6 +113,7 @@ typedef void (*vEA_t)(void*); typedef void (*vES_t)(void*); typedef void (*vFS_t)(void*); typedef void (*vFX_t)(void*); +typedef void (*vFn_t)(void*); typedef int8_t (*cFc_t)(int8_t); typedef int8_t (*cFi_t)(int32_t); typedef int8_t (*cFu_t)(uint32_t); @@ -133,6 +137,7 @@ typedef int32_t (*iFp_t)(void*); typedef int32_t (*iEh_t)(uintptr_t); typedef int32_t (*iES_t)(void*); typedef int32_t (*iFX_t)(void*); +typedef int32_t (*iFn_t)(void*); typedef int64_t (*IEf_t)(float); typedef int64_t (*IEd_t)(double); typedef int64_t (*IEp_t)(void*); @@ -159,6 +164,7 @@ typedef uint32_t (*uEp_t)(void*); typedef uint32_t (*uFp_t)(void*); typedef uint32_t (*uES_t)(void*); typedef uint32_t (*uFX_t)(void*); +typedef uint32_t (*uFn_t)(void*); typedef uint64_t (*UFv_t)(void); typedef uint64_t (*UFi_t)(int32_t); typedef uint64_t (*UFu_t)(uint32_t); @@ -202,6 +208,7 @@ typedef void* (*pFL_t)(uintptr_t); typedef void* (*pEp_t)(void*); typedef void* (*pFp_t)(void*); typedef void* (*pFX_t)(void*); +typedef void* (*pFn_t)(void*); typedef uintptr_t (*hEv_t)(void); typedef uintptr_t (*hFv_t)(void); typedef void* (*aEa_t)(void*); @@ -216,6 +223,7 @@ typedef int32_t (*iFbp__t)(struct_p_t*); typedef int32_t (*iFBp__t)(struct_p_t*); typedef uintptr_t (*LEBL__t)(struct_L_t*); typedef intptr_t (*lFrll__t)(struct_ll_t*); +typedef void (*vFbpii__t)(struct_pii_t*); typedef void (*vFbLdd__t)(struct_Ldd_t*); typedef void (*vFbupi__t)(struct_upi_t*); typedef int32_t (*iEBllll__t)(struct_llll_t*); @@ -273,6 +281,10 @@ typedef void (*vFXi_t)(void*, int32_t); typedef void (*vFXu_t)(void*, uint32_t); typedef void (*vFXL_t)(void*, uintptr_t); typedef void (*vFXp_t)(void*, void*); +typedef void (*vFni_t)(void*, int32_t); +typedef void (*vFnu_t)(void*, uint32_t); +typedef void (*vFnU_t)(void*, uint64_t); +typedef void (*vFnp_t)(void*, void*); typedef int8_t (*cFpp_t)(void*, void*); typedef int16_t (*wFpi_t)(void*, int32_t); typedef int32_t (*iEEv_t)(x64emu_t*); @@ -304,6 +316,7 @@ typedef int32_t (*iFpw_t)(void*, int16_t); typedef int32_t (*iEpi_t)(void*, int32_t); typedef int32_t (*iFpi_t)(void*, int32_t); typedef int32_t (*iFpI_t)(void*, int64_t); +typedef int32_t (*iFpW_t)(void*, uint16_t); typedef int32_t (*iEpu_t)(void*, uint32_t); typedef int32_t (*iFpu_t)(void*, uint32_t); typedef int32_t (*iFpU_t)(void*, uint64_t); @@ -420,6 +433,8 @@ typedef void* (*pFXi_t)(void*, int32_t); typedef void* (*pFXu_t)(void*, uint32_t); typedef void* (*pFXL_t)(void*, uintptr_t); typedef void* (*pFXp_t)(void*, void*); +typedef void* (*pFnu_t)(void*, uint32_t); +typedef void* (*pFnp_t)(void*, void*); typedef uintptr_t (*hFEp_t)(x64emu_t*, void*); typedef uintptr_t (*hEpa_t)(void*, void*); typedef void* (*SEip_t)(int32_t, void*); @@ -450,6 +465,7 @@ typedef uintptr_t (*LFpbL__t)(void*, struct_L_t*); typedef void* (*pEErl__t)(x64emu_t*, struct_l_t*); typedef void* (*pErl_p_t)(struct_l_t*, void*); typedef void (*vFBll_l_t)(struct_ll_t*, intptr_t); +typedef void (*vFnbpi__t)(void*, struct_pi_t*); typedef int32_t (*iEuBLL__t)(uint32_t, struct_LL_t*); typedef int32_t (*iEprll__t)(void*, struct_ll_t*); typedef int32_t (*iEpbup__t)(void*, struct_up_t*); @@ -457,6 +473,7 @@ typedef int32_t (*iEprLL__t)(void*, struct_LL_t*); typedef int32_t (*iFbpi_i_t)(struct_pi_t*, int32_t); typedef int32_t (*iEBll_p_t)(struct_ll_t*, void*); typedef int32_t (*iFXbip__t)(void*, struct_ip_t*); +typedef void* (*pFnbpi__t)(void*, struct_pi_t*); typedef void (*vFpbupi__t)(void*, struct_upi_t*); typedef int32_t (*iESBliu__t)(void*, struct_liu_t*); typedef int32_t (*iFbppi_i_t)(struct_ppi_t*, int32_t); @@ -611,6 +628,7 @@ typedef int32_t (*iFpiu_t)(void*, int32_t, uint32_t); typedef int32_t (*iFpil_t)(void*, int32_t, intptr_t); typedef int32_t (*iEpip_t)(void*, int32_t, void*); typedef int32_t (*iFpip_t)(void*, int32_t, void*); +typedef int32_t (*iFpWp_t)(void*, uint16_t, void*); typedef int32_t (*iFpuC_t)(void*, uint32_t, uint8_t); typedef int32_t (*iEpuu_t)(void*, uint32_t, uint32_t); typedef int32_t (*iFpuu_t)(void*, uint32_t, uint32_t); @@ -753,6 +771,7 @@ typedef void* (*pFXip_t)(void*, int32_t, void*); typedef void* (*pFXLp_t)(void*, uintptr_t, void*); typedef void* (*pFXpi_t)(void*, void*, int32_t); typedef void* (*pFXpp_t)(void*, void*, void*); +typedef void* (*pFnpL_t)(void*, void*, uintptr_t); typedef void* (*aEipa_t)(int32_t, void*, void*); typedef void* (*SEEpp_t)(x64emu_t*, void*, void*); typedef void* (*SEppS_t)(void*, void*, void*); @@ -775,6 +794,8 @@ typedef int32_t (*iFppbp__t)(void*, void*, struct_p_t*); typedef int32_t (*iFppbL__t)(void*, void*, struct_L_t*); typedef int32_t (*iFpbp_i_t)(void*, struct_p_t*, int32_t); typedef int32_t (*iFpbL_p_t)(void*, struct_L_t*, void*); +typedef int32_t (*iFbp_Wp_t)(struct_p_t*, uint16_t, void*); +typedef int32_t (*iFbp_up_t)(struct_p_t*, uint32_t, void*); typedef int32_t (*iEBp_LL_t)(struct_p_t*, uintptr_t, uintptr_t); typedef int32_t (*iFbp_pi_t)(struct_p_t*, void*, int32_t); typedef int32_t (*iFbp_pI_t)(struct_p_t*, void*, int64_t); @@ -804,6 +825,8 @@ typedef void* (*pEppbp__t)(void*, void*, struct_p_t*); typedef void* (*pEppBp__t)(void*, void*, struct_p_t*); typedef void* (*pFppbp__t)(void*, void*, struct_p_t*); typedef void* (*pFXLbL__t)(void*, uintptr_t, struct_L_t*); +typedef void* (*pFnubp__t)(void*, uint32_t, struct_p_t*); +typedef void* (*pFnUbp__t)(void*, uint64_t, struct_p_t*); typedef int32_t (*iEpprLL__t)(void*, void*, struct_LL_t*); typedef int32_t (*iFXLbpp__t)(void*, uintptr_t, struct_pp_t*); typedef int32_t (*iFXbLC_i_t)(void*, struct_LC_t*, int32_t); @@ -1112,6 +1135,7 @@ typedef void (*vFXLLbL__t)(void*, uintptr_t, uintptr_t, struct_L_t*); typedef int32_t (*iFplibl__t)(void*, intptr_t, int32_t, struct_l_t*); typedef int32_t (*iFpppbp__t)(void*, void*, void*, struct_p_t*); typedef int32_t (*iFppbL_p_t)(void*, void*, struct_L_t*, void*); +typedef int32_t (*iFpbp_pp_t)(void*, struct_p_t*, void*, void*); typedef int32_t (*iFbp_pii_t)(struct_p_t*, void*, int32_t, int32_t); typedef int32_t (*iFbp_pip_t)(struct_p_t*, void*, int32_t, void*); typedef int32_t (*iFBp_pui_t)(struct_p_t*, void*, uint32_t, int32_t); @@ -1129,6 +1153,8 @@ typedef uintptr_t (*LEpBp_ii_t)(void*, struct_p_t*, int32_t, int32_t); typedef uintptr_t (*LEpbp_Lp_t)(void*, struct_p_t*, uintptr_t, void*); typedef int32_t (*iEEpprLL__t)(x64emu_t*, void*, void*, struct_LL_t*); typedef int32_t (*iEpurLL_p_t)(void*, uint32_t, struct_LL_t*, void*); +typedef int32_t (*iFnbpL_iU_t)(void*, struct_pL_t*, int32_t, uint64_t); +typedef void* (*pFnbpi_up_t)(void*, struct_pi_t*, uint32_t, void*); typedef void (*vFppbp_bL__t)(void*, void*, struct_p_t*, struct_L_t*); typedef void (*vFpbLdd_ip_t)(void*, struct_Ldd_t*, int32_t, void*); typedef int32_t (*iFppbL_bL__t)(void*, void*, struct_L_t*, struct_L_t*); @@ -1136,6 +1162,8 @@ typedef int32_t (*iFrpuu_Lui_t)(struct_puu_t*, uintptr_t, uint32_t, int32_t); typedef int32_t (*iEbp_bL_iS_t)(struct_p_t*, struct_L_t*, int32_t, void*); typedef int32_t (*iFbp_bp_pi_t)(struct_p_t*, struct_p_t*, void*, int32_t); typedef int32_t (*iFXbL_ibp__t)(void*, struct_L_t*, int32_t, struct_p_t*); +typedef int32_t (*iFnubp_bp__t)(void*, uint32_t, struct_p_t*, struct_p_t*); +typedef int32_t (*iFnUbp_bp__t)(void*, uint64_t, struct_p_t*, struct_p_t*); typedef void (*vFEpuBLLLL__t)(x64emu_t*, void*, uint32_t, struct_LLLL_t*); typedef void (*vFbp_ppbup__t)(struct_p_t*, void*, void*, struct_up_t*); typedef void (*vFXLbpLiL_L_t)(void*, uintptr_t, struct_pLiL_t*, uintptr_t); @@ -1147,6 +1175,7 @@ typedef int32_t (*iFXLbLWWWcc_i_t)(void*, uintptr_t, struct_LWWWcc_t*, int32_t); typedef void* (*pESBppppii_pi_t)(void*, struct_ppppii_t*, void*, int32_t); typedef int32_t (*iFEprllll_rll__t)(x64emu_t*, void*, struct_llll_t*, struct_ll_t*); typedef int32_t (*iFXLuriiiiiLi__t)(void*, uintptr_t, uint32_t, struct_iiiiiLi_t*); +typedef uint32_t (*uFnibpL_bLpCC__t)(void*, int32_t, struct_pL_t*, struct_LpCC_t*); typedef void (*vFXLbLLLLLLLLLL_L_t)(void*, uintptr_t, struct_LLLLLLLLLL_t*, uintptr_t); typedef int32_t (*iFXLbLLLLLLLLLL_L_t)(void*, uintptr_t, struct_LLLLLLLLLL_t*, uintptr_t); typedef uintptr_t (*LEpLpriiiiiiiiilt__t)(void*, uintptr_t, void*, struct_iiiiiiiiilt_t*); @@ -1356,6 +1385,7 @@ typedef void* (*pFpuuip_t)(void*, uint32_t, uint32_t, int32_t, void*); typedef void* (*pFpdddd_t)(void*, double, double, double, double); typedef void* (*pFppuup_t)(void*, void*, uint32_t, uint32_t, void*); typedef void* (*pFppupp_t)(void*, void*, uint32_t, void*, void*); +typedef void* (*pFppnuu_t)(void*, void*, void*, uint32_t, uint32_t); typedef void* (*pFXLipp_t)(void*, uintptr_t, int32_t, void*, void*); typedef void* (*pFXpipi_t)(void*, void*, int32_t, void*, int32_t); typedef void* (*pFXppip_t)(void*, void*, void*, int32_t, void*); @@ -1526,6 +1556,7 @@ typedef void* (*pFEXpppp_t)(x64emu_t*, void*, void*, void*, void*, void*); typedef void* (*pFWCiWCi_t)(uint16_t, uint8_t, int32_t, uint16_t, uint8_t, int32_t); typedef void* (*pFdddddd_t)(double, double, double, double, double, double); typedef void* (*pFpiiiiu_t)(void*, int32_t, int32_t, int32_t, int32_t, uint32_t); +typedef void* (*pFppnCWp_t)(void*, void*, void*, uint8_t, uint16_t, void*); typedef void* (*XFpppppp_t)(void*, void*, void*, void*, void*, void*); typedef int32_t (*iFpppibp_p_t)(void*, void*, void*, int32_t, struct_p_t*, void*); typedef int32_t (*iFpppbp_pp_t)(void*, void*, void*, struct_p_t*, void*, void*); @@ -1782,6 +1813,7 @@ typedef int32_t (*iFXiLLdduudd_t)(void*, int32_t, uintptr_t, uintptr_t, double, typedef int32_t (*iFXuuLiuiiLL_t)(void*, uint32_t, uint32_t, uintptr_t, int32_t, uint32_t, int32_t, int32_t, uintptr_t, uintptr_t); typedef int32_t (*iFXLLpiiuuii_t)(void*, uintptr_t, uintptr_t, void*, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t); typedef void* (*pFEpiiiiuuuu_t)(x64emu_t*, void*, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, uint32_t, uint32_t); +typedef void* (*pFEppnCuuuuu_t)(x64emu_t*, void*, void*, void*, uint8_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t); typedef void* (*pFpppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef void* (*pFXpuiipuuii_t)(void*, void*, uint32_t, int32_t, int32_t, void*, uint32_t, uint32_t, int32_t, int32_t); typedef int32_t (*iFXiiLiiibiip_ip_t)(void*, int32_t, int32_t, uintptr_t, int32_t, int32_t, int32_t, struct_iip_t*, int32_t, void*); @@ -1806,6 +1838,7 @@ typedef int32_t (*iFEXLppiiiiuu_t)(x64emu_t*, void*, uintptr_t, void*, void*, in typedef int32_t (*iFEXpLLiiLWpi_t)(x64emu_t*, void*, void*, uintptr_t, uintptr_t, int32_t, int32_t, uintptr_t, uint16_t, void*, int32_t); typedef int32_t (*iFuiiiiuuiiip_t)(uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, void*); typedef int32_t (*iFXLLpiiuuiiL_t)(void*, uintptr_t, uintptr_t, void*, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, uintptr_t); +typedef void* (*pFEppnCuuuCup_t)(x64emu_t*, void*, void*, void*, uint8_t, uint32_t, uint32_t, uint32_t, uint8_t, uint32_t, void*); typedef void* (*pFEXpuiipuuii_t)(x64emu_t*, void*, void*, uint32_t, int32_t, int32_t, void*, uint32_t, uint32_t, int32_t, int32_t); typedef int32_t (*iFXiiLLiiibiip_ip_t)(void*, int32_t, int32_t, uintptr_t, uintptr_t, int32_t, int32_t, int32_t, struct_iip_t*, int32_t, void*); typedef void (*vFXiLLrLiiuL_iiiipi_t)(void*, int32_t, uintptr_t, uintptr_t, struct_LiiuL_t*, int32_t, int32_t, int32_t, int32_t, void*, int32_t); @@ -1883,6 +1916,7 @@ void vEA_32(x64emu_t *emu, uintptr_t fcn) { vEA_t fn = (vEA_t)fcn; errno = emu-> void vES_32(x64emu_t *emu, uintptr_t fcn) { vES_t fn = (vES_t)fcn; errno = emu->libc_err; fn(io_convert32(from_ptriv(R_ESP + 4))); emu->libc_err = errno; } void vFS_32(x64emu_t *emu, uintptr_t fcn) { vFS_t fn = (vFS_t)fcn; fn(io_convert32(from_ptriv(R_ESP + 4))); } void vFX_32(x64emu_t *emu, uintptr_t fcn) { vFX_t fn = (vFX_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4))); } +void vFn_32(x64emu_t *emu, uintptr_t fcn) { vFn_t fn = (vFn_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); fn(aligned_xcb); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); } void cFc_32(x64emu_t *emu, uintptr_t fcn) { cFc_t fn = (cFc_t)fcn; R_EAX = fn(from_ptri(int8_t, R_ESP + 4)); } void cFi_32(x64emu_t *emu, uintptr_t fcn) { cFi_t fn = (cFi_t)fcn; R_EAX = fn(from_ptri(int32_t, R_ESP + 4)); } void cFu_32(x64emu_t *emu, uintptr_t fcn) { cFu_t fn = (cFu_t)fcn; R_EAX = fn(from_ptri(uint32_t, R_ESP + 4)); } @@ -1906,6 +1940,7 @@ void iFp_32(x64emu_t *emu, uintptr_t fcn) { iFp_t fn = (iFp_t)fcn; R_EAX = fn(fr void iEh_32(x64emu_t *emu, uintptr_t fcn) { iEh_t fn = (iEh_t)fcn; errno = emu->libc_err; R_EAX = fn(from_hash(from_ptri(ptr_t, R_ESP + 4))); emu->libc_err = errno; } void iES_32(x64emu_t *emu, uintptr_t fcn) { iES_t fn = (iES_t)fcn; errno = emu->libc_err; R_EAX = fn(io_convert32(from_ptriv(R_ESP + 4))); emu->libc_err = errno; } void iFX_32(x64emu_t *emu, uintptr_t fcn) { iFX_t fn = (iFX_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4))); } +void iFn_32(x64emu_t *emu, uintptr_t fcn) { iFn_t fn = (iFn_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); R_EAX = fn(aligned_xcb); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); } void IEf_32(x64emu_t *emu, uintptr_t fcn) { IEf_t fn = (IEf_t)fcn; errno = emu->libc_err; ui64_t r; r.i = fn(from_ptri(float, R_ESP + 4)); R_EAX = r.d[0]; R_EDX = r.d[1]; emu->libc_err = errno; } void IEd_32(x64emu_t *emu, uintptr_t fcn) { IEd_t fn = (IEd_t)fcn; errno = emu->libc_err; ui64_t r; r.i = fn(from_ptri(double, R_ESP + 4)); R_EAX = r.d[0]; R_EDX = r.d[1]; emu->libc_err = errno; } void IEp_32(x64emu_t *emu, uintptr_t fcn) { IEp_t fn = (IEp_t)fcn; errno = emu->libc_err; ui64_t r; r.i = fn(from_ptriv(R_ESP + 4)); R_EAX = r.d[0]; R_EDX = r.d[1]; emu->libc_err = errno; } @@ -1932,6 +1967,7 @@ void uEp_32(x64emu_t *emu, uintptr_t fcn) { uEp_t fn = (uEp_t)fcn; errno = emu-> void uFp_32(x64emu_t *emu, uintptr_t fcn) { uFp_t fn = (uFp_t)fcn; R_EAX = (uint32_t)fn(from_ptriv(R_ESP + 4)); } void uES_32(x64emu_t *emu, uintptr_t fcn) { uES_t fn = (uES_t)fcn; errno = emu->libc_err; R_EAX = (uint32_t)fn(io_convert32(from_ptriv(R_ESP + 4))); emu->libc_err = errno; } void uFX_32(x64emu_t *emu, uintptr_t fcn) { uFX_t fn = (uFX_t)fcn; R_EAX = (uint32_t)fn(getDisplay(from_ptriv(R_ESP + 4))); } +void uFn_32(x64emu_t *emu, uintptr_t fcn) { uFn_t fn = (uFn_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); R_EAX = (uint32_t)fn(aligned_xcb); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); } void UFv_32(x64emu_t *emu, uintptr_t fcn) { UFv_t fn = (UFv_t)fcn; ui64_t r; r.u = (uint64_t)fn(); R_EAX = r.d[0]; R_EDX = r.d[1]; } void UFi_32(x64emu_t *emu, uintptr_t fcn) { UFi_t fn = (UFi_t)fcn; ui64_t r; r.u = (uint64_t)fn(from_ptri(int32_t, R_ESP + 4)); R_EAX = r.d[0]; R_EDX = r.d[1]; } void UFu_32(x64emu_t *emu, uintptr_t fcn) { UFu_t fn = (UFu_t)fcn; ui64_t r; r.u = (uint64_t)fn(from_ptri(uint32_t, R_ESP + 4)); R_EAX = r.d[0]; R_EDX = r.d[1]; } @@ -1975,6 +2011,7 @@ void pFL_32(x64emu_t *emu, uintptr_t fcn) { pFL_t fn = (pFL_t)fcn; R_EAX = to_pt void pEp_32(x64emu_t *emu, uintptr_t fcn) { pEp_t fn = (pEp_t)fcn; errno = emu->libc_err; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4))); emu->libc_err = errno; } void pFp_32(x64emu_t *emu, uintptr_t fcn) { pFp_t fn = (pFp_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4))); } void pFX_32(x64emu_t *emu, uintptr_t fcn) { pFX_t fn = (pFX_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)))); } +void pFn_32(x64emu_t *emu, uintptr_t fcn) { pFn_t fn = (pFn_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); R_EAX = to_ptrv(fn(aligned_xcb)); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); } void hEv_32(x64emu_t *emu, uintptr_t fcn) { hEv_t fn = (hEv_t)fcn; errno = emu->libc_err; R_EAX = to_hash(fn()); emu->libc_err = errno; } void hFv_32(x64emu_t *emu, uintptr_t fcn) { hFv_t fn = (hFv_t)fcn; R_EAX = to_hash(fn()); } void aEa_32(x64emu_t *emu, uintptr_t fcn) { aEa_t fn = (aEa_t)fcn; errno = emu->libc_err; R_EAX = to_locale(fn(from_locale(from_ptri(ptr_t, R_ESP + 4)))); emu->libc_err = errno; } @@ -1989,6 +2026,7 @@ void iFbp__32(x64emu_t *emu, uintptr_t fcn) { iFbp__t fn = (iFbp__t)fcn; struct_ void iFBp__32(x64emu_t *emu, uintptr_t fcn) { iFBp__t fn = (iFBp__t)fcn; struct_p_t arg_4={0}; R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void LEBL__32(x64emu_t *emu, uintptr_t fcn) { LEBL__t fn = (LEBL__t)fcn; errno = emu->libc_err; struct_L_t arg_4={0}; R_EAX = to_ulong(fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); emu->libc_err = errno; } void lFrll__32(x64emu_t *emu, uintptr_t fcn) { lFrll__t fn = (lFrll__t)fcn; struct_ll_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_ll(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = to_long(fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL)); } +void vFbpii__32(x64emu_t *emu, uintptr_t fcn) { vFbpii__t fn = (vFbpii__t)fcn; struct_pii_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_pii(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_pii(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void vFbLdd__32(x64emu_t *emu, uintptr_t fcn) { vFbLdd__t fn = (vFbLdd__t)fcn; struct_Ldd_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_Ldd(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_Ldd(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void vFbupi__32(x64emu_t *emu, uintptr_t fcn) { vFbupi__t fn = (vFbupi__t)fcn; struct_upi_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_upi(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_upi(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void iEBllll__32(x64emu_t *emu, uintptr_t fcn) { iEBllll__t fn = (iEBllll__t)fcn; errno = emu->libc_err; struct_llll_t arg_4={0}; R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_llll(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); emu->libc_err = errno; } @@ -2046,6 +2084,10 @@ void vFXi_32(x64emu_t *emu, uintptr_t fcn) { vFXi_t fn = (vFXi_t)fcn; fn(getDisp void vFXu_32(x64emu_t *emu, uintptr_t fcn) { vFXu_t fn = (vFXu_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(uint32_t, R_ESP + 8)); } void vFXL_32(x64emu_t *emu, uintptr_t fcn) { vFXL_t fn = (vFXL_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8))); } void vFXp_32(x64emu_t *emu, uintptr_t fcn) { vFXp_t fn = (vFXp_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8)); } +void vFni_32(x64emu_t *emu, uintptr_t fcn) { vFni_t fn = (vFni_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); fn(aligned_xcb, from_ptri(int32_t, R_ESP + 8)); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); } +void vFnu_32(x64emu_t *emu, uintptr_t fcn) { vFnu_t fn = (vFnu_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); fn(aligned_xcb, from_ptri(uint32_t, R_ESP + 8)); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); } +void vFnU_32(x64emu_t *emu, uintptr_t fcn) { vFnU_t fn = (vFnU_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); fn(aligned_xcb, from_ptri(uint64_t, R_ESP + 8)); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); } +void vFnp_32(x64emu_t *emu, uintptr_t fcn) { vFnp_t fn = (vFnp_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); fn(aligned_xcb, from_ptriv(R_ESP + 8)); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); } void cFpp_32(x64emu_t *emu, uintptr_t fcn) { cFpp_t fn = (cFpp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8)); } void wFpi_32(x64emu_t *emu, uintptr_t fcn) { wFpi_t fn = (wFpi_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8)); } void iEEv_32(x64emu_t *emu, uintptr_t fcn) { iEEv_t fn = (iEEv_t)fcn; errno = emu->libc_err; R_EAX = fn(emu); emu->libc_err = errno; } @@ -2077,6 +2119,7 @@ void iFpw_32(x64emu_t *emu, uintptr_t fcn) { iFpw_t fn = (iFpw_t)fcn; R_EAX = fn void iEpi_32(x64emu_t *emu, uintptr_t fcn) { iEpi_t fn = (iEpi_t)fcn; errno = emu->libc_err; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8)); emu->libc_err = errno; } void iFpi_32(x64emu_t *emu, uintptr_t fcn) { iFpi_t fn = (iFpi_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8)); } void iFpI_32(x64emu_t *emu, uintptr_t fcn) { iFpI_t fn = (iFpI_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(int64_t, R_ESP + 8)); } +void iFpW_32(x64emu_t *emu, uintptr_t fcn) { iFpW_t fn = (iFpW_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint16_t, R_ESP + 8)); } void iEpu_32(x64emu_t *emu, uintptr_t fcn) { iEpu_t fn = (iEpu_t)fcn; errno = emu->libc_err; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8)); emu->libc_err = errno; } void iFpu_32(x64emu_t *emu, uintptr_t fcn) { iFpu_t fn = (iFpu_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8)); } void iFpU_32(x64emu_t *emu, uintptr_t fcn) { iFpU_t fn = (iFpU_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint64_t, R_ESP + 8)); } @@ -2193,6 +2236,8 @@ void pFXi_32(x64emu_t *emu, uintptr_t fcn) { pFXi_t fn = (pFXi_t)fcn; R_EAX = to void pFXu_32(x64emu_t *emu, uintptr_t fcn) { pFXu_t fn = (pFXu_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(uint32_t, R_ESP + 8))); } void pFXL_32(x64emu_t *emu, uintptr_t fcn) { pFXL_t fn = (pFXL_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)))); } void pFXp_32(x64emu_t *emu, uintptr_t fcn) { pFXp_t fn = (pFXp_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8))); } +void pFnu_32(x64emu_t *emu, uintptr_t fcn) { pFnu_t fn = (pFnu_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); R_EAX = to_ptrv(fn(aligned_xcb, from_ptri(uint32_t, R_ESP + 8))); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); } +void pFnp_32(x64emu_t *emu, uintptr_t fcn) { pFnp_t fn = (pFnp_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); R_EAX = to_ptrv(fn(aligned_xcb, from_ptriv(R_ESP + 8))); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); } void hFEp_32(x64emu_t *emu, uintptr_t fcn) { hFEp_t fn = (hFEp_t)fcn; R_EAX = to_hash(fn(emu, from_ptriv(R_ESP + 4))); } void hEpa_32(x64emu_t *emu, uintptr_t fcn) { hEpa_t fn = (hEpa_t)fcn; errno = emu->libc_err; R_EAX = to_hash(fn(from_ptriv(R_ESP + 4), from_locale(from_ptri(ptr_t, R_ESP + 8)))); emu->libc_err = errno; } void SEip_32(x64emu_t *emu, uintptr_t fcn) { SEip_t fn = (SEip_t)fcn; errno = emu->libc_err; R_EAX = to_ptrv(io_convert_from(fn(from_ptri(int32_t, R_ESP + 4), from_ptriv(R_ESP + 8)))); emu->libc_err = errno; } @@ -2223,6 +2268,7 @@ void LFpbL__32(x64emu_t *emu, uintptr_t fcn) { LFpbL__t fn = (LFpbL__t)fcn; stru void pEErl__32(x64emu_t *emu, uintptr_t fcn) { pEErl__t fn = (pEErl__t)fcn; errno = emu->libc_err; struct_l_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_l(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = to_ptrv(fn(emu, *(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL)); emu->libc_err = errno; } void pErl_p_32(x64emu_t *emu, uintptr_t fcn) { pErl_p_t fn = (pErl_p_t)fcn; errno = emu->libc_err; struct_l_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_l(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = to_ptrv(fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8))); emu->libc_err = errno; } void vFBll_l_32(x64emu_t *emu, uintptr_t fcn) { vFBll_l_t fn = (vFBll_l_t)fcn; struct_ll_t arg_4={0}; fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_long(from_ptri(long_t, R_ESP + 8))); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_ll(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } +void vFnbpi__32(x64emu_t *emu, uintptr_t fcn) { vFnbpi__t fn = (vFnbpi__t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); struct_pi_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_pi(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); fn(aligned_xcb, *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_pi(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void iEuBLL__32(x64emu_t *emu, uintptr_t fcn) { iEuBLL__t fn = (iEuBLL__t)fcn; errno = emu->libc_err; struct_LL_t arg_8={0}; R_EAX = fn(from_ptri(uint32_t, R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_LL(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); emu->libc_err = errno; } void iEprll__32(x64emu_t *emu, uintptr_t fcn) { iEprll__t fn = (iEprll__t)fcn; errno = emu->libc_err; struct_ll_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_ll(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); emu->libc_err = errno; } void iEpbup__32(x64emu_t *emu, uintptr_t fcn) { iEpbup__t fn = (iEpbup__t)fcn; errno = emu->libc_err; struct_up_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_up(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_up(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); emu->libc_err = errno; } @@ -2230,6 +2276,7 @@ void iEprLL__32(x64emu_t *emu, uintptr_t fcn) { iEprLL__t fn = (iEprLL__t)fcn; e void iFbpi_i_32(x64emu_t *emu, uintptr_t fcn) { iFbpi_i_t fn = (iFbpi_i_t)fcn; struct_pi_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_pi(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptri(int32_t, R_ESP + 8)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_pi(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void iEBll_p_32(x64emu_t *emu, uintptr_t fcn) { iEBll_p_t fn = (iEBll_p_t)fcn; errno = emu->libc_err; struct_ll_t arg_4={0}; R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_ll(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); emu->libc_err = errno; } void iFXbip__32(x64emu_t *emu, uintptr_t fcn) { iFXbip__t fn = (iFXbip__t)fcn; struct_ip_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_ip(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_ip(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } +void pFnbpi__32(x64emu_t *emu, uintptr_t fcn) { pFnbpi__t fn = (pFnbpi__t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); struct_pi_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_pi(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = to_ptrv(fn(aligned_xcb, *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL)); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_pi(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void vFpbupi__32(x64emu_t *emu, uintptr_t fcn) { vFpbupi__t fn = (vFpbupi__t)fcn; struct_upi_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_upi(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_upi(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void iESBliu__32(x64emu_t *emu, uintptr_t fcn) { iESBliu__t fn = (iESBliu__t)fcn; errno = emu->libc_err; struct_liu_t arg_8={0}; R_EAX = fn(io_convert32(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_liu(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); emu->libc_err = errno; } void iFbppi_i_32(x64emu_t *emu, uintptr_t fcn) { iFbppi_i_t fn = (iFbppi_i_t)fcn; struct_ppi_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_ppi(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptri(int32_t, R_ESP + 8)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_ppi(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } @@ -2384,6 +2431,7 @@ void iFpiu_32(x64emu_t *emu, uintptr_t fcn) { iFpiu_t fn = (iFpiu_t)fcn; R_EAX = void iFpil_32(x64emu_t *emu, uintptr_t fcn) { iFpil_t fn = (iFpil_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_long(from_ptri(long_t, R_ESP + 12))); } void iEpip_32(x64emu_t *emu, uintptr_t fcn) { iEpip_t fn = (iEpip_t)fcn; errno = emu->libc_err; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptriv(R_ESP + 12)); emu->libc_err = errno; } void iFpip_32(x64emu_t *emu, uintptr_t fcn) { iFpip_t fn = (iFpip_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptriv(R_ESP + 12)); } +void iFpWp_32(x64emu_t *emu, uintptr_t fcn) { iFpWp_t fn = (iFpWp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint16_t, R_ESP + 8), from_ptriv(R_ESP + 12)); } void iFpuC_32(x64emu_t *emu, uintptr_t fcn) { iFpuC_t fn = (iFpuC_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptri(uint8_t, R_ESP + 12)); } void iEpuu_32(x64emu_t *emu, uintptr_t fcn) { iEpuu_t fn = (iEpuu_t)fcn; errno = emu->libc_err; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptri(uint32_t, R_ESP + 12)); emu->libc_err = errno; } void iFpuu_32(x64emu_t *emu, uintptr_t fcn) { iFpuu_t fn = (iFpuu_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptri(uint32_t, R_ESP + 12)); } @@ -2526,6 +2574,7 @@ void pFXip_32(x64emu_t *emu, uintptr_t fcn) { pFXip_t fn = (pFXip_t)fcn; R_EAX = void pFXLp_32(x64emu_t *emu, uintptr_t fcn) { pFXLp_t fn = (pFXLp_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12))); } void pFXpi_32(x64emu_t *emu, uintptr_t fcn) { pFXpi_t fn = (pFXpi_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12))); } void pFXpp_32(x64emu_t *emu, uintptr_t fcn) { pFXpp_t fn = (pFXpp_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12))); } +void pFnpL_32(x64emu_t *emu, uintptr_t fcn) { pFnpL_t fn = (pFnpL_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); R_EAX = to_ptrv(fn(aligned_xcb, from_ptriv(R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)))); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); } void aEipa_32(x64emu_t *emu, uintptr_t fcn) { aEipa_t fn = (aEipa_t)fcn; errno = emu->libc_err; R_EAX = to_locale(fn(from_ptri(int32_t, R_ESP + 4), from_ptriv(R_ESP + 8), from_locale(from_ptri(ptr_t, R_ESP + 12)))); emu->libc_err = errno; } void SEEpp_32(x64emu_t *emu, uintptr_t fcn) { SEEpp_t fn = (SEEpp_t)fcn; errno = emu->libc_err; R_EAX = to_ptrv(io_convert_from(fn(emu, from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8)))); emu->libc_err = errno; } void SEppS_32(x64emu_t *emu, uintptr_t fcn) { SEppS_t fn = (SEppS_t)fcn; errno = emu->libc_err; R_EAX = to_ptrv(io_convert_from(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), io_convert32(from_ptriv(R_ESP + 12))))); emu->libc_err = errno; } @@ -2548,6 +2597,8 @@ void iFppbp__32(x64emu_t *emu, uintptr_t fcn) { iFppbp__t fn = (iFppbp__t)fcn; s void iFppbL__32(x64emu_t *emu, uintptr_t fcn) { iFppbL__t fn = (iFppbL__t)fcn; struct_L_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_L(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void iFpbp_i_32(x64emu_t *emu, uintptr_t fcn) { iFpbp_i_t fn = (iFpbp_i_t)fcn; struct_p_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_p(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptri(int32_t, R_ESP + 12)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void iFpbL_p_32(x64emu_t *emu, uintptr_t fcn) { iFpbL_p_t fn = (iFpbL_p_t)fcn; struct_L_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_L(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptriv(R_ESP + 12)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } +void iFbp_Wp_32(x64emu_t *emu, uintptr_t fcn) { iFbp_Wp_t fn = (iFbp_Wp_t)fcn; struct_p_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_p(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptri(uint16_t, R_ESP + 8), from_ptriv(R_ESP + 12)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } +void iFbp_up_32(x64emu_t *emu, uintptr_t fcn) { iFbp_up_t fn = (iFbp_up_t)fcn; struct_p_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_p(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptri(uint32_t, R_ESP + 8), from_ptriv(R_ESP + 12)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void iEBp_LL_32(x64emu_t *emu, uintptr_t fcn) { iEBp_LL_t fn = (iEBp_LL_t)fcn; errno = emu->libc_err; struct_p_t arg_4={0}; R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ulong(from_ptri(ulong_t, R_ESP + 12))); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); emu->libc_err = errno; } void iFbp_pi_32(x64emu_t *emu, uintptr_t fcn) { iFbp_pi_t fn = (iFbp_pi_t)fcn; struct_p_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_p(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void iFbp_pI_32(x64emu_t *emu, uintptr_t fcn) { iFbp_pI_t fn = (iFbp_pI_t)fcn; struct_p_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_p(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8), from_ptri(int64_t, R_ESP + 12)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } @@ -2577,6 +2628,8 @@ void pEppbp__32(x64emu_t *emu, uintptr_t fcn) { pEppbp__t fn = (pEppbp__t)fcn; e void pEppBp__32(x64emu_t *emu, uintptr_t fcn) { pEppBp__t fn = (pEppBp__t)fcn; errno = emu->libc_err; struct_p_t arg_12={0}; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL)); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); emu->libc_err = errno; } void pFppbp__32(x64emu_t *emu, uintptr_t fcn) { pFppbp__t fn = (pFppbp__t)fcn; struct_p_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_p(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL)); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void pFXLbL__32(x64emu_t *emu, uintptr_t fcn) { pFXLbL__t fn = (pFXLbL__t)fcn; struct_L_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_L(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL)); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } +void pFnubp__32(x64emu_t *emu, uintptr_t fcn) { pFnubp__t fn = (pFnubp__t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); struct_p_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_p(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = to_ptrv(fn(aligned_xcb, from_ptri(uint32_t, R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL)); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } +void pFnUbp__32(x64emu_t *emu, uintptr_t fcn) { pFnUbp__t fn = (pFnUbp__t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); struct_p_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_p(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = to_ptrv(fn(aligned_xcb, from_ptri(uint64_t, R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL)); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } void iEpprLL__32(x64emu_t *emu, uintptr_t fcn) { iEpprLL__t fn = (iEpprLL__t)fcn; errno = emu->libc_err; struct_LL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL); emu->libc_err = errno; } void iFXLbpp__32(x64emu_t *emu, uintptr_t fcn) { iFXLbpp__t fn = (iFXLbpp__t)fcn; struct_pp_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_pp(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_pp(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void iFXbLC_i_32(x64emu_t *emu, uintptr_t fcn) { iFXbLC_i_t fn = (iFXbLC_i_t)fcn; struct_LC_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_LC(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptri(int32_t, R_ESP + 12)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_LC(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } @@ -2885,6 +2938,7 @@ void vFXLLbL__32(x64emu_t *emu, uintptr_t fcn) { vFXLLbL__t fn = (vFXLLbL__t)fcn void iFplibl__32(x64emu_t *emu, uintptr_t fcn) { iFplibl__t fn = (iFplibl__t)fcn; struct_l_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_l(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = fn(from_ptriv(R_ESP + 4), from_long(from_ptri(long_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_l(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } void iFpppbp__32(x64emu_t *emu, uintptr_t fcn) { iFpppbp__t fn = (iFpppbp__t)fcn; struct_p_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_p(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } void iFppbL_p_32(x64emu_t *emu, uintptr_t fcn) { iFppbL_p_t fn = (iFppbL_p_t)fcn; struct_L_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_L(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ptriv(R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } +void iFpbp_pp_32(x64emu_t *emu, uintptr_t fcn) { iFpbp_pp_t fn = (iFpbp_pp_t)fcn; struct_p_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_p(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void iFbp_pii_32(x64emu_t *emu, uintptr_t fcn) { iFbp_pii_t fn = (iFbp_pii_t)fcn; struct_p_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_p(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void iFbp_pip_32(x64emu_t *emu, uintptr_t fcn) { iFbp_pip_t fn = (iFbp_pip_t)fcn; struct_p_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_p(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptriv(R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void iFBp_pui_32(x64emu_t *emu, uintptr_t fcn) { iFBp_pui_t fn = (iFBp_pui_t)fcn; struct_p_t arg_4={0}; R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8), from_ptri(uint32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } @@ -2902,6 +2956,8 @@ void LEpBp_ii_32(x64emu_t *emu, uintptr_t fcn) { LEpBp_ii_t fn = (LEpBp_ii_t)fcn void LEpbp_Lp_32(x64emu_t *emu, uintptr_t fcn) { LEpbp_Lp_t fn = (LEpbp_Lp_t)fcn; errno = emu->libc_err; struct_p_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_p(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = to_ulong(fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ptriv(R_ESP + 16))); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); emu->libc_err = errno; } void iEEpprLL__32(x64emu_t *emu, uintptr_t fcn) { iEEpprLL__t fn = (iEEpprLL__t)fcn; errno = emu->libc_err; struct_LL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(emu, from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL); emu->libc_err = errno; } void iEpurLL_p_32(x64emu_t *emu, uintptr_t fcn) { iEpurLL_p_t fn = (iEpurLL_p_t)fcn; errno = emu->libc_err; struct_LL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ptriv(R_ESP + 16)); emu->libc_err = errno; } +void iFnbpL_iU_32(x64emu_t *emu, uintptr_t fcn) { iFnbpL_iU_t fn = (iFnbpL_iU_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); struct_pL_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_pL(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(aligned_xcb, *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptri(int32_t, R_ESP + 12), from_ptri(uint64_t, R_ESP + 16)); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_pL(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } +void pFnbpi_up_32(x64emu_t *emu, uintptr_t fcn) { pFnbpi_up_t fn = (pFnbpi_up_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); struct_pi_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_pi(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = to_ptrv(fn(aligned_xcb, *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptri(uint32_t, R_ESP + 12), from_ptriv(R_ESP + 16))); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_pi(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void vFppbp_bL__32(x64emu_t *emu, uintptr_t fcn) { vFppbp_bL__t fn = (vFppbp_bL__t)fcn; struct_p_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_p(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); struct_L_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_L(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } void vFpbLdd_ip_32(x64emu_t *emu, uintptr_t fcn) { vFpbLdd_ip_t fn = (vFpbLdd_ip_t)fcn; struct_Ldd_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_Ldd(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptri(int32_t, R_ESP + 12), from_ptriv(R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_Ldd(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void iFppbL_bL__32(x64emu_t *emu, uintptr_t fcn) { iFppbL_bL__t fn = (iFppbL_bL__t)fcn; struct_L_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_L(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); struct_L_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_L(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } @@ -2909,6 +2965,8 @@ void iFrpuu_Lui_32(x64emu_t *emu, uintptr_t fcn) { iFrpuu_Lui_t fn = (iFrpuu_Lui void iEbp_bL_iS_32(x64emu_t *emu, uintptr_t fcn) { iEbp_bL_iS_t fn = (iEbp_bL_iS_t)fcn; errno = emu->libc_err; struct_p_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_p(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); struct_L_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_L(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptri(int32_t, R_ESP + 12), io_convert32(from_ptriv(R_ESP + 16))); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); emu->libc_err = errno; } void iFbp_bp_pi_32(x64emu_t *emu, uintptr_t fcn) { iFbp_bp_pi_t fn = (iFbp_bp_pi_t)fcn; struct_p_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_p(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); struct_p_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_p(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void iFXbL_ibp__32(x64emu_t *emu, uintptr_t fcn) { iFXbL_ibp__t fn = (iFXbL_ibp__t)fcn; struct_L_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_L(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); struct_p_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_p(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptri(int32_t, R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } +void iFnubp_bp__32(x64emu_t *emu, uintptr_t fcn) { iFnubp_bp__t fn = (iFnubp_bp__t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); struct_p_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_p(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); struct_p_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_p(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = fn(aligned_xcb, from_ptri(uint32_t, R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } +void iFnUbp_bp__32(x64emu_t *emu, uintptr_t fcn) { iFnUbp_bp__t fn = (iFnUbp_bp__t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); struct_p_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_p(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); struct_p_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_p(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); R_EAX = fn(aligned_xcb, from_ptri(uint64_t, R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL, *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } void vFEpuBLLLL__32(x64emu_t *emu, uintptr_t fcn) { vFEpuBLLLL__t fn = (vFEpuBLLLL__t)fcn; struct_LLLL_t arg_12={0}; fn(emu, from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_LLLL(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void vFbp_ppbup__32(x64emu_t *emu, uintptr_t fcn) { vFbp_ppbup__t fn = (vFbp_ppbup__t)fcn; struct_p_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_p(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); struct_up_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_up(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_up(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } void vFXLbpLiL_L_32(x64emu_t *emu, uintptr_t fcn) { vFXLbpLiL_L_t fn = (vFXLbpLiL_L_t)fcn; struct_pLiL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_pLiL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ulong(from_ptri(ulong_t, R_ESP + 16))); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_pLiL(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } @@ -2920,6 +2978,7 @@ void iFXLbLWWWcc_i_32(x64emu_t *emu, uintptr_t fcn) { iFXLbLWWWcc_i_t fn = (iFXL void pESBppppii_pi_32(x64emu_t *emu, uintptr_t fcn) { pESBppppii_pi_t fn = (pESBppppii_pi_t)fcn; errno = emu->libc_err; struct_ppppii_t arg_8={0}; R_EAX = to_ptrv(fn(io_convert32(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16))); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_ppppii(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); emu->libc_err = errno; } void iFEprllll_rll__32(x64emu_t *emu, uintptr_t fcn) { iFEprllll_rll__t fn = (iFEprllll_rll__t)fcn; struct_llll_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_llll(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); struct_ll_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_ll(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(emu, from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL); } void iFXLuriiiiiLi__32(x64emu_t *emu, uintptr_t fcn) { iFXLuriiiiiLi__t fn = (iFXLuriiiiiLi__t)fcn; struct_iiiiiLi_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_iiiiiLi(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(uint32_t, R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); } +void uFnibpL_bLpCC__32(x64emu_t *emu, uintptr_t fcn) { uFnibpL_bLpCC__t fn = (uFnibpL_bLpCC__t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 4)); struct_pL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_pL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); struct_LpCC_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_LpCC(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = (uint32_t)fn(aligned_xcb, from_ptri(int32_t, R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 4)); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_pL(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_LpCC(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } void vFXLbLLLLLLLLLL_L_32(x64emu_t *emu, uintptr_t fcn) { vFXLbLLLLLLLLLL_L_t fn = (vFXLbLLLLLLLLLL_L_t)fcn; struct_LLLLLLLLLL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LLLLLLLLLL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ulong(from_ptri(ulong_t, R_ESP + 16))); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_LLLLLLLLLL(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void iFXLbLLLLLLLLLL_L_32(x64emu_t *emu, uintptr_t fcn) { iFXLbLLLLLLLLLL_L_t fn = (iFXLbLLLLLLLLLL_L_t)fcn; struct_LLLLLLLLLL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LLLLLLLLLL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ulong(from_ptri(ulong_t, R_ESP + 16))); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_LLLLLLLLLL(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void LEpLpriiiiiiiiilt__32(x64emu_t *emu, uintptr_t fcn) { LEpLpriiiiiiiiilt__t fn = (LEpLpriiiiiiiiilt__t)fcn; errno = emu->libc_err; struct_iiiiiiiiilt_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_iiiiiiiiilt(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = to_ulong(fn(from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL)); emu->libc_err = errno; } @@ -3129,6 +3188,7 @@ void pFpuuip_32(x64emu_t *emu, uintptr_t fcn) { pFpuuip_t fn = (pFpuuip_t)fcn; R void pFpdddd_32(x64emu_t *emu, uintptr_t fcn) { pFpdddd_t fn = (pFpdddd_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptri(double, R_ESP + 8), from_ptri(double, R_ESP + 16), from_ptri(double, R_ESP + 24), from_ptri(double, R_ESP + 32))); } void pFppuup_32(x64emu_t *emu, uintptr_t fcn) { pFppuup_t fn = (pFppuup_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(uint32_t, R_ESP + 12), from_ptri(uint32_t, R_ESP + 16), from_ptriv(R_ESP + 20))); } void pFppupp_32(x64emu_t *emu, uintptr_t fcn) { pFppupp_t fn = (pFppupp_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(uint32_t, R_ESP + 12), from_ptriv(R_ESP + 16), from_ptriv(R_ESP + 20))); } +void pFppnuu_32(x64emu_t *emu, uintptr_t fcn) { pFppnuu_t fn = (pFppnuu_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 12)); R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), aligned_xcb, from_ptri(uint32_t, R_ESP + 16), from_ptri(uint32_t, R_ESP + 20))); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 12)); } void pFXLipp_32(x64emu_t *emu, uintptr_t fcn) { pFXLipp_t fn = (pFXLipp_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12), from_ptriv(R_ESP + 16), from_ptriv(R_ESP + 20))); } void pFXpipi_32(x64emu_t *emu, uintptr_t fcn) { pFXpipi_t fn = (pFXpipi_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptriv(R_ESP + 16), from_ptri(int32_t, R_ESP + 20))); } void pFXppip_32(x64emu_t *emu, uintptr_t fcn) { pFXppip_t fn = (pFXppip_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptriv(R_ESP + 20))); } @@ -3299,6 +3359,7 @@ void pFEXpppp_32(x64emu_t *emu, uintptr_t fcn) { pFEXpppp_t fn = (pFEXpppp_t)fcn void pFWCiWCi_32(x64emu_t *emu, uintptr_t fcn) { pFWCiWCi_t fn = (pFWCiWCi_t)fcn; R_EAX = to_ptrv(fn(from_ptri(uint16_t, R_ESP + 4), from_ptri(uint8_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(uint16_t, R_ESP + 16), from_ptri(uint8_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24))); } void pFdddddd_32(x64emu_t *emu, uintptr_t fcn) { pFdddddd_t fn = (pFdddddd_t)fcn; R_EAX = to_ptrv(fn(from_ptri(double, R_ESP + 4), from_ptri(double, R_ESP + 12), from_ptri(double, R_ESP + 20), from_ptri(double, R_ESP + 28), from_ptri(double, R_ESP + 36), from_ptri(double, R_ESP + 44))); } void pFpiiiiu_32(x64emu_t *emu, uintptr_t fcn) { pFpiiiiu_t fn = (pFpiiiiu_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24))); } +void pFppnCWp_32(x64emu_t *emu, uintptr_t fcn) { pFppnCWp_t fn = (pFppnCWp_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 12)); R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), aligned_xcb, from_ptri(uint8_t, R_ESP + 16), from_ptri(uint16_t, R_ESP + 20), from_ptriv(R_ESP + 24))); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 12)); } void XFpppppp_32(x64emu_t *emu, uintptr_t fcn) { XFpppppp_t fn = (XFpppppp_t)fcn; R_EAX = to_ptrv(addDisplay(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16), from_ptriv(R_ESP + 20), from_ptriv(R_ESP + 24)))); } void iFpppibp_p_32(x64emu_t *emu, uintptr_t fcn) { iFpppibp_p_t fn = (iFpppibp_p_t)fcn; struct_p_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_p(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16), *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL, from_ptriv(R_ESP + 24)); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } void iFpppbp_pp_32(x64emu_t *emu, uintptr_t fcn) { iFpppbp_pp_t fn = (iFpppbp_pp_t)fcn; struct_p_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_p(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL, from_ptriv(R_ESP + 20), from_ptriv(R_ESP + 24)); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } @@ -3555,6 +3616,7 @@ void iFXiLLdduudd_32(x64emu_t *emu, uintptr_t fcn) { iFXiLLdduudd_t fn = (iFXiLL void iFXuuLiuiiLL_32(x64emu_t *emu, uintptr_t fcn) { iFXuuLiuiiLL_t fn = (iFXuuLiuiiLL_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(uint32_t, R_ESP + 8), from_ptri(uint32_t, R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptri(int32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28), from_ptri(int32_t, R_ESP + 32), from_ulong(from_ptri(ulong_t, R_ESP + 36)), from_ulong(from_ptri(ulong_t, R_ESP + 40))); } void iFXLLpiiuuii_32(x64emu_t *emu, uintptr_t fcn) { iFXLLpiiuuii_t fn = (iFXLLpiiuuii_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ptriv(R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(uint32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptri(int32_t, R_ESP + 40)); } void pFEpiiiiuuuu_32(x64emu_t *emu, uintptr_t fcn) { pFEpiiiiuuuu_t fn = (pFEpiiiiuuuu_t)fcn; R_EAX = to_ptrv(fn(emu, from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(uint32_t, R_ESP + 32), from_ptri(uint32_t, R_ESP + 36))); } +void pFEppnCuuuuu_32(x64emu_t *emu, uintptr_t fcn) { pFEppnCuuuuu_t fn = (pFEppnCuuuuu_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 12)); R_EAX = to_ptrv(fn(emu, from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), aligned_xcb, from_ptri(uint8_t, R_ESP + 16), from_ptri(uint32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(uint32_t, R_ESP + 32), from_ptri(uint32_t, R_ESP + 36))); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 12)); } void pFpppppppppp_32(x64emu_t *emu, uintptr_t fcn) { pFpppppppppp_t fn = (pFpppppppppp_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16), from_ptriv(R_ESP + 20), from_ptriv(R_ESP + 24), from_ptriv(R_ESP + 28), from_ptriv(R_ESP + 32), from_ptriv(R_ESP + 36), from_ptriv(R_ESP + 40))); } void pFXpuiipuuii_32(x64emu_t *emu, uintptr_t fcn) { pFXpuiipuuii_t fn = (pFXpuiipuuii_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptri(uint32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptriv(R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(uint32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptri(int32_t, R_ESP + 40))); } void iFXiiLiiibiip_ip_32(x64emu_t *emu, uintptr_t fcn) { iFXiiLiiibiip_ip_t fn = (iFXiiLiiibiip_ip_t)fcn; struct_iip_t arg_32={0}; if (*(ptr_t*)(from_ptr((R_ESP + 32)))) from_struct_iip(&arg_32, *(ptr_t*)(from_ptr((R_ESP + 32)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptri(int32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28), *(ptr_t*)(from_ptr((R_ESP + 32))) ? &arg_32 : NULL, from_ptri(int32_t, R_ESP + 36), from_ptriv(R_ESP + 40)); if (*(ptr_t*)(from_ptr((R_ESP + 32)))) to_struct_iip(*(ptr_t*)(from_ptr((R_ESP + 32))), &arg_32); } @@ -3579,6 +3641,7 @@ void iFEXLppiiiiuu_32(x64emu_t *emu, uintptr_t fcn) { iFEXLppiiiiuu_t fn = (iFEX void iFEXpLLiiLWpi_32(x64emu_t *emu, uintptr_t fcn) { iFEXpLLiiLWpi_t fn = (iFEXpLLiiLWpi_t)fcn; R_EAX = fn(emu, getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptri(int32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ulong(from_ptri(ulong_t, R_ESP + 28)), from_ptri(uint16_t, R_ESP + 32), from_ptriv(R_ESP + 36), from_ptri(int32_t, R_ESP + 40)); } void iFuiiiiuuiiip_32(x64emu_t *emu, uintptr_t fcn) { iFuiiiiuuiiip_t fn = (iFuiiiiuuiiip_t)fcn; R_EAX = fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(int32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptri(int32_t, R_ESP + 40), from_ptriv(R_ESP + 44)); } void iFXLLpiiuuiiL_32(x64emu_t *emu, uintptr_t fcn) { iFXLLpiiuuiiL_t fn = (iFXLLpiiuuiiL_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ptriv(R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(uint32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptri(int32_t, R_ESP + 40), from_ulong(from_ptri(ulong_t, R_ESP + 44))); } +void pFEppnCuuuCup_32(x64emu_t *emu, uintptr_t fcn) { pFEppnCuuuCup_t fn = (pFEppnCuuuCup_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 12)); R_EAX = to_ptrv(fn(emu, from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), aligned_xcb, from_ptri(uint8_t, R_ESP + 16), from_ptri(uint32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(uint8_t, R_ESP + 32), from_ptri(uint32_t, R_ESP + 36), from_ptriv(R_ESP + 40))); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 12)); } void pFEXpuiipuuii_32(x64emu_t *emu, uintptr_t fcn) { pFEXpuiipuuii_t fn = (pFEXpuiipuuii_t)fcn; R_EAX = to_ptrv(fn(emu, getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptri(uint32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptriv(R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(uint32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptri(int32_t, R_ESP + 40))); } void iFXiiLLiiibiip_ip_32(x64emu_t *emu, uintptr_t fcn) { iFXiiLLiiibiip_ip_t fn = (iFXiiLLiiibiip_ip_t)fcn; struct_iip_t arg_36={0}; if (*(ptr_t*)(from_ptr((R_ESP + 36)))) from_struct_iip(&arg_36, *(ptr_t*)(from_ptr((R_ESP + 36)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ulong(from_ptri(ulong_t, R_ESP + 20)), from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28), from_ptri(int32_t, R_ESP + 32), *(ptr_t*)(from_ptr((R_ESP + 36))) ? &arg_36 : NULL, from_ptri(int32_t, R_ESP + 40), from_ptriv(R_ESP + 44)); if (*(ptr_t*)(from_ptr((R_ESP + 36)))) to_struct_iip(*(ptr_t*)(from_ptr((R_ESP + 36))), &arg_36); } void vFXiLLrLiiuL_iiiipi_32(x64emu_t *emu, uintptr_t fcn) { vFXiLLrLiiuL_iiiipi_t fn = (vFXiLLrLiiuL_iiiipi_t)fcn; struct_LiiuL_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_LiiuL(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)), *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL, from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28), from_ptri(int32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptriv(R_ESP + 40), from_ptri(int32_t, R_ESP + 44)); } diff --git a/src/wrapped32/generated/wrapper32.h b/src/wrapped32/generated/wrapper32.h index 7351a273..746c2d6b 100644 --- a/src/wrapped32/generated/wrapper32.h +++ b/src/wrapped32/generated/wrapper32.h @@ -60,6 +60,7 @@ void vEA_32(x64emu_t *emu, uintptr_t fnc); void vES_32(x64emu_t *emu, uintptr_t fnc); void vFS_32(x64emu_t *emu, uintptr_t fnc); void vFX_32(x64emu_t *emu, uintptr_t fnc); +void vFn_32(x64emu_t *emu, uintptr_t fnc); void cFc_32(x64emu_t *emu, uintptr_t fnc); void cFi_32(x64emu_t *emu, uintptr_t fnc); void cFu_32(x64emu_t *emu, uintptr_t fnc); @@ -83,6 +84,7 @@ void iFp_32(x64emu_t *emu, uintptr_t fnc); void iEh_32(x64emu_t *emu, uintptr_t fnc); void iES_32(x64emu_t *emu, uintptr_t fnc); void iFX_32(x64emu_t *emu, uintptr_t fnc); +void iFn_32(x64emu_t *emu, uintptr_t fnc); void IEf_32(x64emu_t *emu, uintptr_t fnc); void IEd_32(x64emu_t *emu, uintptr_t fnc); void IEp_32(x64emu_t *emu, uintptr_t fnc); @@ -109,6 +111,7 @@ void uEp_32(x64emu_t *emu, uintptr_t fnc); void uFp_32(x64emu_t *emu, uintptr_t fnc); void uES_32(x64emu_t *emu, uintptr_t fnc); void uFX_32(x64emu_t *emu, uintptr_t fnc); +void uFn_32(x64emu_t *emu, uintptr_t fnc); void UFv_32(x64emu_t *emu, uintptr_t fnc); void UFi_32(x64emu_t *emu, uintptr_t fnc); void UFu_32(x64emu_t *emu, uintptr_t fnc); @@ -152,6 +155,7 @@ void pFL_32(x64emu_t *emu, uintptr_t fnc); void pEp_32(x64emu_t *emu, uintptr_t fnc); void pFp_32(x64emu_t *emu, uintptr_t fnc); void pFX_32(x64emu_t *emu, uintptr_t fnc); +void pFn_32(x64emu_t *emu, uintptr_t fnc); void hEv_32(x64emu_t *emu, uintptr_t fnc); void hFv_32(x64emu_t *emu, uintptr_t fnc); void aEa_32(x64emu_t *emu, uintptr_t fnc); @@ -166,6 +170,7 @@ void iFbp__32(x64emu_t *emu, uintptr_t fnc); void iFBp__32(x64emu_t *emu, uintptr_t fnc); void LEBL__32(x64emu_t *emu, uintptr_t fnc); void lFrll__32(x64emu_t *emu, uintptr_t fnc); +void vFbpii__32(x64emu_t *emu, uintptr_t fnc); void vFbLdd__32(x64emu_t *emu, uintptr_t fnc); void vFbupi__32(x64emu_t *emu, uintptr_t fnc); void iEBllll__32(x64emu_t *emu, uintptr_t fnc); @@ -223,6 +228,10 @@ void vFXi_32(x64emu_t *emu, uintptr_t fnc); void vFXu_32(x64emu_t *emu, uintptr_t fnc); void vFXL_32(x64emu_t *emu, uintptr_t fnc); void vFXp_32(x64emu_t *emu, uintptr_t fnc); +void vFni_32(x64emu_t *emu, uintptr_t fnc); +void vFnu_32(x64emu_t *emu, uintptr_t fnc); +void vFnU_32(x64emu_t *emu, uintptr_t fnc); +void vFnp_32(x64emu_t *emu, uintptr_t fnc); void cFpp_32(x64emu_t *emu, uintptr_t fnc); void wFpi_32(x64emu_t *emu, uintptr_t fnc); void iEEv_32(x64emu_t *emu, uintptr_t fnc); @@ -254,6 +263,7 @@ void iFpw_32(x64emu_t *emu, uintptr_t fnc); void iEpi_32(x64emu_t *emu, uintptr_t fnc); void iFpi_32(x64emu_t *emu, uintptr_t fnc); void iFpI_32(x64emu_t *emu, uintptr_t fnc); +void iFpW_32(x64emu_t *emu, uintptr_t fnc); void iEpu_32(x64emu_t *emu, uintptr_t fnc); void iFpu_32(x64emu_t *emu, uintptr_t fnc); void iFpU_32(x64emu_t *emu, uintptr_t fnc); @@ -370,6 +380,8 @@ void pFXi_32(x64emu_t *emu, uintptr_t fnc); void pFXu_32(x64emu_t *emu, uintptr_t fnc); void pFXL_32(x64emu_t *emu, uintptr_t fnc); void pFXp_32(x64emu_t *emu, uintptr_t fnc); +void pFnu_32(x64emu_t *emu, uintptr_t fnc); +void pFnp_32(x64emu_t *emu, uintptr_t fnc); void hFEp_32(x64emu_t *emu, uintptr_t fnc); void hEpa_32(x64emu_t *emu, uintptr_t fnc); void SEip_32(x64emu_t *emu, uintptr_t fnc); @@ -400,6 +412,7 @@ void LFpbL__32(x64emu_t *emu, uintptr_t fnc); void pEErl__32(x64emu_t *emu, uintptr_t fnc); void pErl_p_32(x64emu_t *emu, uintptr_t fnc); void vFBll_l_32(x64emu_t *emu, uintptr_t fnc); +void vFnbpi__32(x64emu_t *emu, uintptr_t fnc); void iEuBLL__32(x64emu_t *emu, uintptr_t fnc); void iEprll__32(x64emu_t *emu, uintptr_t fnc); void iEpbup__32(x64emu_t *emu, uintptr_t fnc); @@ -407,6 +420,7 @@ void iEprLL__32(x64emu_t *emu, uintptr_t fnc); void iFbpi_i_32(x64emu_t *emu, uintptr_t fnc); void iEBll_p_32(x64emu_t *emu, uintptr_t fnc); void iFXbip__32(x64emu_t *emu, uintptr_t fnc); +void pFnbpi__32(x64emu_t *emu, uintptr_t fnc); void vFpbupi__32(x64emu_t *emu, uintptr_t fnc); void iESBliu__32(x64emu_t *emu, uintptr_t fnc); void iFbppi_i_32(x64emu_t *emu, uintptr_t fnc); @@ -561,6 +575,7 @@ void iFpiu_32(x64emu_t *emu, uintptr_t fnc); void iFpil_32(x64emu_t *emu, uintptr_t fnc); void iEpip_32(x64emu_t *emu, uintptr_t fnc); void iFpip_32(x64emu_t *emu, uintptr_t fnc); +void iFpWp_32(x64emu_t *emu, uintptr_t fnc); void iFpuC_32(x64emu_t *emu, uintptr_t fnc); void iEpuu_32(x64emu_t *emu, uintptr_t fnc); void iFpuu_32(x64emu_t *emu, uintptr_t fnc); @@ -703,6 +718,7 @@ void pFXip_32(x64emu_t *emu, uintptr_t fnc); void pFXLp_32(x64emu_t *emu, uintptr_t fnc); void pFXpi_32(x64emu_t *emu, uintptr_t fnc); void pFXpp_32(x64emu_t *emu, uintptr_t fnc); +void pFnpL_32(x64emu_t *emu, uintptr_t fnc); void aEipa_32(x64emu_t *emu, uintptr_t fnc); void SEEpp_32(x64emu_t *emu, uintptr_t fnc); void SEppS_32(x64emu_t *emu, uintptr_t fnc); @@ -725,6 +741,8 @@ void iFppbp__32(x64emu_t *emu, uintptr_t fnc); void iFppbL__32(x64emu_t *emu, uintptr_t fnc); void iFpbp_i_32(x64emu_t *emu, uintptr_t fnc); void iFpbL_p_32(x64emu_t *emu, uintptr_t fnc); +void iFbp_Wp_32(x64emu_t *emu, uintptr_t fnc); +void iFbp_up_32(x64emu_t *emu, uintptr_t fnc); void iEBp_LL_32(x64emu_t *emu, uintptr_t fnc); void iFbp_pi_32(x64emu_t *emu, uintptr_t fnc); void iFbp_pI_32(x64emu_t *emu, uintptr_t fnc); @@ -754,6 +772,8 @@ void pEppbp__32(x64emu_t *emu, uintptr_t fnc); void pEppBp__32(x64emu_t *emu, uintptr_t fnc); void pFppbp__32(x64emu_t *emu, uintptr_t fnc); void pFXLbL__32(x64emu_t *emu, uintptr_t fnc); +void pFnubp__32(x64emu_t *emu, uintptr_t fnc); +void pFnUbp__32(x64emu_t *emu, uintptr_t fnc); void iEpprLL__32(x64emu_t *emu, uintptr_t fnc); void iFXLbpp__32(x64emu_t *emu, uintptr_t fnc); void iFXbLC_i_32(x64emu_t *emu, uintptr_t fnc); @@ -1062,6 +1082,7 @@ void vFXLLbL__32(x64emu_t *emu, uintptr_t fnc); void iFplibl__32(x64emu_t *emu, uintptr_t fnc); void iFpppbp__32(x64emu_t *emu, uintptr_t fnc); void iFppbL_p_32(x64emu_t *emu, uintptr_t fnc); +void iFpbp_pp_32(x64emu_t *emu, uintptr_t fnc); void iFbp_pii_32(x64emu_t *emu, uintptr_t fnc); void iFbp_pip_32(x64emu_t *emu, uintptr_t fnc); void iFBp_pui_32(x64emu_t *emu, uintptr_t fnc); @@ -1079,6 +1100,8 @@ void LEpBp_ii_32(x64emu_t *emu, uintptr_t fnc); void LEpbp_Lp_32(x64emu_t *emu, uintptr_t fnc); void iEEpprLL__32(x64emu_t *emu, uintptr_t fnc); void iEpurLL_p_32(x64emu_t *emu, uintptr_t fnc); +void iFnbpL_iU_32(x64emu_t *emu, uintptr_t fnc); +void pFnbpi_up_32(x64emu_t *emu, uintptr_t fnc); void vFppbp_bL__32(x64emu_t *emu, uintptr_t fnc); void vFpbLdd_ip_32(x64emu_t *emu, uintptr_t fnc); void iFppbL_bL__32(x64emu_t *emu, uintptr_t fnc); @@ -1086,6 +1109,8 @@ void iFrpuu_Lui_32(x64emu_t *emu, uintptr_t fnc); void iEbp_bL_iS_32(x64emu_t *emu, uintptr_t fnc); void iFbp_bp_pi_32(x64emu_t *emu, uintptr_t fnc); void iFXbL_ibp__32(x64emu_t *emu, uintptr_t fnc); +void iFnubp_bp__32(x64emu_t *emu, uintptr_t fnc); +void iFnUbp_bp__32(x64emu_t *emu, uintptr_t fnc); void vFEpuBLLLL__32(x64emu_t *emu, uintptr_t fnc); void vFbp_ppbup__32(x64emu_t *emu, uintptr_t fnc); void vFXLbpLiL_L_32(x64emu_t *emu, uintptr_t fnc); @@ -1097,6 +1122,7 @@ void iFXLbLWWWcc_i_32(x64emu_t *emu, uintptr_t fnc); void pESBppppii_pi_32(x64emu_t *emu, uintptr_t fnc); void iFEprllll_rll__32(x64emu_t *emu, uintptr_t fnc); void iFXLuriiiiiLi__32(x64emu_t *emu, uintptr_t fnc); +void uFnibpL_bLpCC__32(x64emu_t *emu, uintptr_t fnc); void vFXLbLLLLLLLLLL_L_32(x64emu_t *emu, uintptr_t fnc); void iFXLbLLLLLLLLLL_L_32(x64emu_t *emu, uintptr_t fnc); void LEpLpriiiiiiiiilt__32(x64emu_t *emu, uintptr_t fnc); @@ -1306,6 +1332,7 @@ void pFpuuip_32(x64emu_t *emu, uintptr_t fnc); void pFpdddd_32(x64emu_t *emu, uintptr_t fnc); void pFppuup_32(x64emu_t *emu, uintptr_t fnc); void pFppupp_32(x64emu_t *emu, uintptr_t fnc); +void pFppnuu_32(x64emu_t *emu, uintptr_t fnc); void pFXLipp_32(x64emu_t *emu, uintptr_t fnc); void pFXpipi_32(x64emu_t *emu, uintptr_t fnc); void pFXppip_32(x64emu_t *emu, uintptr_t fnc); @@ -1476,6 +1503,7 @@ void pFEXpppp_32(x64emu_t *emu, uintptr_t fnc); void pFWCiWCi_32(x64emu_t *emu, uintptr_t fnc); void pFdddddd_32(x64emu_t *emu, uintptr_t fnc); void pFpiiiiu_32(x64emu_t *emu, uintptr_t fnc); +void pFppnCWp_32(x64emu_t *emu, uintptr_t fnc); void XFpppppp_32(x64emu_t *emu, uintptr_t fnc); void iFpppibp_p_32(x64emu_t *emu, uintptr_t fnc); void iFpppbp_pp_32(x64emu_t *emu, uintptr_t fnc); @@ -1732,6 +1760,7 @@ void iFXiLLdduudd_32(x64emu_t *emu, uintptr_t fnc); void iFXuuLiuiiLL_32(x64emu_t *emu, uintptr_t fnc); void iFXLLpiiuuii_32(x64emu_t *emu, uintptr_t fnc); void pFEpiiiiuuuu_32(x64emu_t *emu, uintptr_t fnc); +void pFEppnCuuuuu_32(x64emu_t *emu, uintptr_t fnc); void pFpppppppppp_32(x64emu_t *emu, uintptr_t fnc); void pFXpuiipuuii_32(x64emu_t *emu, uintptr_t fnc); void iFXiiLiiibiip_ip_32(x64emu_t *emu, uintptr_t fnc); @@ -1756,6 +1785,7 @@ void iFEXLppiiiiuu_32(x64emu_t *emu, uintptr_t fnc); void iFEXpLLiiLWpi_32(x64emu_t *emu, uintptr_t fnc); void iFuiiiiuuiiip_32(x64emu_t *emu, uintptr_t fnc); void iFXLLpiiuuiiL_32(x64emu_t *emu, uintptr_t fnc); +void pFEppnCuuuCup_32(x64emu_t *emu, uintptr_t fnc); void pFEXpuiipuuii_32(x64emu_t *emu, uintptr_t fnc); void iFXiiLLiiibiip_ip_32(x64emu_t *emu, uintptr_t fnc); void vFXiLLrLiiuL_iiiipi_32(x64emu_t *emu, uintptr_t fnc); diff --git a/src/wrapped32/wrappedlibxcb.c b/src/wrapped32/wrappedlibxcb.c new file mode 100644 index 00000000..a2d8171d --- /dev/null +++ b/src/wrapped32/wrappedlibxcb.c @@ -0,0 +1,102 @@ +#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 "wrapper32.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" +#include "callback.h" +#include "librarian.h" +#include "box32context.h" +#include "emu/x64emu_private.h" +#include "myalign32.h" +#include "converter32.h" + +static const char* libxcbName = "libxcb.so.1"; +#define ALTNAME "libxcb.so" + +#define LIBNAME libxcb + +typedef struct my_xcb_XXX_iterator_s { + void* data; + int rem; + int index; +} my_xcb_XXX_iterator_t; +// xcb_visualtype_iterator_t is like my_xcb_XXX_iterator_t +// xcb_depth_iterator_t is similar to my_xcb_XXX_iterator_t +// xcb_format_iterator_t is similar to my_xcb_XXX_iterator_t + +typedef struct my_xcb_cookie_s { + uint32_t data; +} my_xcb_cookie_t; + +typedef my_xcb_cookie_t (*zFppp_t)(void*, void*, void*); +typedef my_xcb_cookie_t (*zFpCWp_t)(void*, uint8_t, uint16_t, void*); +typedef my_xcb_cookie_t (*zFpCuuuuu_t)(void*, uint8_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t); +typedef my_xcb_cookie_t (*zFpCuuuCup_t)(void*, uint8_t, uint32_t, uint32_t, uint32_t, uint8_t, uint32_t, void*); +typedef my_xcb_XXX_iterator_t (*ZFp_t)(void*); + +#define ADDED_FUNCTIONS() \ +GO(xcb_change_property, zFpCuuuCup_t) \ +GO(xcb_delete_property, zFppp_t) \ +GO(xcb_get_property, zFpCuuuuu_t) \ +GO(xcb_intern_atom, zFpCWp_t) \ +GO(xcb_setup_roots_iterator, ZFp_t) \ + +#include "generated/wrappedlibxcbtypes32.h" + +#include "wrappercallback32.h" + +EXPORT void* my32_xcb_connect(x64emu_t* emu, void* dispname, void* screen) +{ + return add_xcb_connection32(my->xcb_connect(dispname, screen)); +} + +EXPORT void my32_xcb_disconnect(x64emu_t* emu, void* conn) +{ + my->xcb_disconnect(align_xcb_connection32(conn)); + del_xcb_connection32(conn); +} + +#define SUPER(F, P, ...) \ + EXPORT void* my32_##F P \ + { \ + (void)emu; \ + *ret = my->F(__VA_ARGS__); \ + return ret; \ + } + +SUPER(xcb_change_property, (x64emu_t* emu, my_xcb_cookie_t* ret, void* c, uint8_t mode, uint32_t w, uint32_t prop, uint32_t type, uint8_t f, uint32_t len, void* data), c, mode, w, prop, type, f, len, data) +SUPER(xcb_delete_property, (x64emu_t* emu, my_xcb_cookie_t* ret, void* c, void* w, void* p), c, w, p) +SUPER(xcb_get_property, (x64emu_t* emu, my_xcb_cookie_t* ret, void* c, uint8_t _del, uint32_t w, uint32_t p, uint32_t type, uint32_t off, uint32_t len), c, _del, w, p, type, off, len) +SUPER(xcb_intern_atom, (x64emu_t* emu, my_xcb_cookie_t* ret, void* c, uint8_t only, uint16_t len, void* name), c, only, len, name) + +#undef SUPER + +#define SUPER(F) \ + EXPORT void* my32_##F(x64emu_t* emu, my_xcb_XXX_iterator_t* ret, void* R) \ + { \ + (void)emu; \ + *ret = my->F(R); \ + return ret; \ + } + +SUPER(xcb_setup_roots_iterator) + +#undef SUPER + +#if 0 +#ifdef ANDROID +#define NEEDED_LIBS "libXau.so", "libXdmcp.so" +#else +#define NEEDED_LIBS "libXau.so.6", "libXdmcp.so.6" +#endif +#endif + +#include "wrappedlib_init32.h" diff --git a/src/wrapped32/wrappedlibxcb_private.h b/src/wrapped32/wrappedlibxcb_private.h new file mode 100644 index 00000000..a2fef5ca --- /dev/null +++ b/src/wrapped32/wrappedlibxcb_private.h @@ -0,0 +1,681 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error Meh... +#endif + +//%S z my_xcb_cookie_t u +//%S Z my_xcb_XXX_iterator_t pii + +//GOS(xcb_alloc_color, pFpnuWWW) +//GOS(xcb_alloc_color_cells, pFpnCuWW) +GO(xcb_alloc_color_cells_masks, pFp) +//GOS(xcb_alloc_color_cells_masks_end, pFpp) +GO(xcb_alloc_color_cells_masks_length, iFp) +GO(xcb_alloc_color_cells_pixels, pFp) +//GOS(xcb_alloc_color_cells_pixels_end, pFpp) +GO(xcb_alloc_color_cells_pixels_length, iFp) +GO(xcb_alloc_color_cells_reply, pFnubp_) +GO(xcb_alloc_color_cells_sizeof, iFp) +//GOS(xcb_alloc_color_cells_unchecked, pFpnCuWW) +//GOS(xcb_alloc_color_planes, pFpnCuWWWW) +GO(xcb_alloc_color_planes_pixels, pFp) +//GOS(xcb_alloc_color_planes_pixels_end, pFpp) +GO(xcb_alloc_color_planes_pixels_length, iFp) +GO(xcb_alloc_color_planes_reply, pFnubp_) +GO(xcb_alloc_color_planes_sizeof, iFp) +//GOS(xcb_alloc_color_planes_unchecked, pFpnCuWWWW) +GO(xcb_alloc_color_reply, pFnubp_) +//GOS(xcb_alloc_color_unchecked, pFpnuWWW) +//GOS(xcb_alloc_named_color, pFpnuWp) +GO(xcb_alloc_named_color_reply, pFnubp_) +GO(xcb_alloc_named_color_sizeof, iFp) +//GOS(xcb_alloc_named_color_unchecked, pFpnuWp) +//GOS(xcb_allow_events, pFpnCu) +//GOS(xcb_allow_events_checked, pFpnCu) +//GO(xcb_arc_end, +GO(xcb_arc_next, vFbpii_) +//GO(xcb_atom_end, +GO(xcb_atom_next, vFbpii_) +//GOS(xcb_bell, pFpnc) +//GOS(xcb_bell_checked, pFpnc) +//GO(xcb_big_requests_enable, +//GO(xcb_big_requests_enable_reply, +//GO(xcb_big_requests_enable_unchecked, +DATA(xcb_big_requests_id, 4) // Warning: failed to confirm +//GO(xcb_bool32_end, +GO(xcb_bool32_next, vFbpii_) +//GO(xcb_button_end, +GO(xcb_button_next, vFbpii_) +//GOS(xcb_change_active_pointer_grab, pFpnuuW) +//GOS(xcb_change_active_pointer_grab_checked, pFpnuuW) +//GOS(xcb_change_gc, pFpnuup) +//GOS(xcb_change_gc_aux, pFpnuup) +//GOS(xcb_change_gc_aux_checked, pFpnuup) +//GOS(xcb_change_gc_checked, pFpnuup) +GO(xcb_change_gc_sizeof, iFp) +GO(xcb_change_gc_value_list, pFp) +GO(xcb_change_gc_value_list_serialize, iFbp_up) +GO(xcb_change_gc_value_list_sizeof, iFpu) +GO(xcb_change_gc_value_list_unpack, iFpup) +//GOS(xcb_change_hosts, pFpnCCWp) +GO(xcb_change_hosts_address, pFp) +//GOS(xcb_change_hosts_address_end, pFpp) +GO(xcb_change_hosts_address_length, iFp) +//GOS(xcb_change_hosts_checked, pFpnCCWp) +GO(xcb_change_hosts_sizeof, iFp) +//GOS(xcb_change_keyboard_control, pFpnup) +//GOS(xcb_change_keyboard_control_aux, pFpnup) +//GOS(xcb_change_keyboard_control_aux_checked, pFpnup) +//GOS(xcb_change_keyboard_control_checked, pFpnup) +GO(xcb_change_keyboard_control_sizeof, iFp) +GO(xcb_change_keyboard_control_value_list, pFp) +GO(xcb_change_keyboard_control_value_list_serialize, iFbp_up) +GO(xcb_change_keyboard_control_value_list_sizeof, iFpu) +GO(xcb_change_keyboard_control_value_list_unpack, iFpup) +//GOS(xcb_change_keyboard_mapping, pFpnCCCp) +//GOS(xcb_change_keyboard_mapping_checked, pFpnCCCp) +GO(xcb_change_keyboard_mapping_keysyms, pFp) +//GOS(xcb_change_keyboard_mapping_keysyms_end, pFpp) +GO(xcb_change_keyboard_mapping_keysyms_length, iFp) +GO(xcb_change_keyboard_mapping_sizeof, iFp) +//GOS(xcb_change_pointer_control, pFpnwwwCC) +//GOS(xcb_change_pointer_control_checked, pFpnwwwCC) +GOS(xcb_change_property, zFEpnCuuuCup) //%% +//GOS(xcb_change_property_checked, pFpnCuuuCup) +GO(xcb_change_property_data, pFp) +//GOS(xcb_change_property_data_end, pFpp) +GO(xcb_change_property_data_length, iFp) +GO(xcb_change_property_sizeof, iFp) +//GOS(xcb_change_save_set, pFpnCu) +//GOS(xcb_change_save_set_checked, pFpnCu) +//GOS(xcb_change_window_attributes, pFpnuup) +//GOS(xcb_change_window_attributes_aux, pFpnuup) +//GOS(xcb_change_window_attributes_aux_checked, pFpnuup) +//GOS(xcb_change_window_attributes_checked, pFpnuup) +GO(xcb_change_window_attributes_sizeof, iFp) +GO(xcb_change_window_attributes_value_list, pFp) +GO(xcb_change_window_attributes_value_list_serialize, iFbp_up) +GO(xcb_change_window_attributes_value_list_sizeof, iFpu) +GO(xcb_change_window_attributes_value_list_unpack, iFpup) +//GO(xcb_char2b_end, +GO(xcb_char2b_next, vFbpii_) +//GO(xcb_charinfo_end, +GO(xcb_charinfo_next, vFbpii_) +//GOS(xcb_circulate_window, pFpnCu) +//GOS(xcb_circulate_window_checked, pFpnCu) +//GOS(xcb_clear_area, pFpnCuwwWW) +//GOS(xcb_clear_area_checked, pFpnCuwwWW) +//GO(xcb_client_message_data_end, +GO(xcb_client_message_data_next, vFbpii_) +//GOS(xcb_close_font, pFpnu) +//GOS(xcb_close_font_checked, pFpnu) +//GO(xcb_coloritem_end, +GO(xcb_coloritem_next, vFbpii_) +//GO(xcb_colormap_end, +GO(xcb_colormap_next, vFbpii_) +//GOS(xcb_configure_window, pFpnuWp) +//GOS(xcb_configure_window_aux, pFpnuWp) +//GOS(xcb_configure_window_aux_checked, pFpnuWp) +//GOS(xcb_configure_window_checked, pFpnuWp) +GO(xcb_configure_window_sizeof, iFp) +GO(xcb_configure_window_value_list, pFp) +GO(xcb_configure_window_value_list_serialize, iFbp_Wp) +GO(xcb_configure_window_value_list_sizeof, iFpW) +GO(xcb_configure_window_value_list_unpack, iFpWp) +GOM(xcb_connect, pFEpp) +GO(xcb_connection_has_error, iFn) +//GO(xcb_connect_to_display_with_auth_info, nFpbipip_p) +//GO(xcb_connect_to_fd, nFibipip_) +//GOS(xcb_convert_selection, pFpnuuuuu) +//GOS(xcb_convert_selection_checked, pFpnuuuuu) +//GOS(xcb_copy_area, pFpnuuuwwwwWW) +//GOS(xcb_copy_area_checked, pFpnuuuwwwwWW) +//GOS(xcb_copy_colormap_and_free, pFpnuu) +//GOS(xcb_copy_colormap_and_free_checked, pFpnuu) +//GOS(xcb_copy_gc, pFpnuuu) +//GOS(xcb_copy_gc_checked, pFpnuuu) +//GOS(xcb_copy_plane, pFpnuuuwwwwWWu) +//GOS(xcb_copy_plane_checked, pFpnuuuwwwwWWu) +//GOS(xcb_create_colormap, pFpnCuuu) +//GOS(xcb_create_colormap_checked, pFpnCuuu) +//GOS(xcb_create_cursor, pFpnuuuWWWWWWWW) +//GOS(xcb_create_cursor_checked, pFpnuuuWWWWWWWW) +//GOS(xcb_create_gc, pFpnuuup) +//GOS(xcb_create_gc_aux, pFpnuuup) +//GOS(xcb_create_gc_aux_checked, pFpnuuup) +//GOS(xcb_create_gc_checked, pFpnuuup) +GO(xcb_create_gc_sizeof, iFp) +GO(xcb_create_gc_value_list, pFp) +GO(xcb_create_gc_value_list_serialize, iFbp_up) +GO(xcb_create_gc_value_list_sizeof, iFpu) +GO(xcb_create_gc_value_list_unpack, iFpup) +//GOS(xcb_create_glyph_cursor, pFpnuuuWWWWWWWW) +//GOS(xcb_create_glyph_cursor_checked, pFpnuuuWWWWWWWW) +//GOS(xcb_create_pixmap, pFpnCuuWW) +//GOS(xcb_create_pixmap_checked, pFpnCuuWW) +//GOS(xcb_create_window, pFpnCuuwwWWWWuup) +//GOS(xcb_create_window_aux, pFpnCuuwwWWWWuup) +//GOS(xcb_create_window_aux_checked, pFpnCuuwwWWWWuup) +//GOS(xcb_create_window_checked, pFpnCuuwwWWWWuup) +GO(xcb_create_window_sizeof, iFp) +GO(xcb_create_window_value_list, pFp) +GO(xcb_create_window_value_list_serialize, iFbp_up) +GO(xcb_create_window_value_list_sizeof, iFpu) +GO(xcb_create_window_value_list_unpack, iFpup) +//GO(xcb_cursor_end, +GO(xcb_cursor_next, vFbpii_) +GOS(xcb_delete_property, zFpnuu) //%% +//GOS(xcb_delete_property_checked, pFpnuu) +//GO(xcb_depth_end, +GO(xcb_depth_next, vFbpii_) +GO(xcb_depth_sizeof, iFp) +GO(xcb_depth_visuals, pFp) +//GOS(xcb_depth_visuals_iterator, pFpp) +GO(xcb_depth_visuals_length, iFp) +//GOS(xcb_destroy_subwindows, pFpnu) +//GOS(xcb_destroy_subwindows_checked, pFpnu) +//GOS(xcb_destroy_window, pFpnu) +//GOS(xcb_destroy_window_checked, pFpnu) +GO(xcb_discard_reply, vFnu) +GO(xcb_discard_reply64, vFnU) +GOM(xcb_disconnect, vFEp) +//GO(xcb_drawable_end, +GO(xcb_drawable_next, vFbpii_) +//GOS(xcb_fill_poly, pFpnuuCCup) +//GOS(xcb_fill_poly_checked, pFpnuuCCup) +GO(xcb_fill_poly_points, pFp) +//GOS(xcb_fill_poly_points_iterator, pFpp) +GO(xcb_fill_poly_points_length, iFp) +GO(xcb_fill_poly_sizeof, iFpu) +GO(xcb_flush, iFn) +//GO(xcb_fontable_end, +GO(xcb_fontable_next, vFbpii_) +//GO(xcb_font_end, +GO(xcb_font_next, vFbpii_) +//GO(xcb_fontprop_end, +GO(xcb_fontprop_next, vFbpii_) +//GOS(xcb_force_screen_saver, pFpnC) +//GOS(xcb_force_screen_saver_checked, pFpnC) +//GO(xcb_format_end, +GO(xcb_format_next, vFbpii_) +//GOS(xcb_free_colormap, pFpnu) +//GOS(xcb_free_colormap_checked, pFpnu) +//GOS(xcb_free_colors, pFpnuuup) +//GOS(xcb_free_colors_checked, pFpnuuup) +GO(xcb_free_colors_pixels, pFp) +//GOS(xcb_free_colors_pixels_end, pFpp) +GO(xcb_free_colors_pixels_length, iFp) +GO(xcb_free_colors_sizeof, iFpu) +//GOS(xcb_free_cursor, pFpnu) +//GOS(xcb_free_cursor_checked, pFpnu) +//GOS(xcb_free_gc, pFpnu) +//GOS(xcb_free_gc_checked, pFpnu) +//GOS(xcb_free_pixmap, pFpnu) +//GOS(xcb_free_pixmap_checked, pFpnu) +//GO(xcb_gcontext_end, +GO(xcb_gcontext_next, vFbpii_) +GO(xcb_generate_id, uFn) +//GOS(xcb_get_atom_name, pFpnu) +GO(xcb_get_atom_name_name, pFp) +//GOS(xcb_get_atom_name_name_end, pFpp) +GO(xcb_get_atom_name_name_length, iFp) +GO(xcb_get_atom_name_reply, pFnubp_) +GO(xcb_get_atom_name_sizeof, iFp) +//GOS(xcb_get_atom_name_unchecked, pFpnu) +GO(xcb_get_extension_data, pFnbpi_) +GO(xcb_get_file_descriptor, iFn) +//GOS(xcb_get_font_path, pFpn) +//GOS(xcb_get_font_path_path_iterator, pFpp) +GO(xcb_get_font_path_path_length, iFp) +GO(xcb_get_font_path_reply, pFnubp_) +GO(xcb_get_font_path_sizeof, iFp) +//GOS(xcb_get_font_path_unchecked, pFpn) +//GOS(xcb_get_geometry, pFpnu) +GO(xcb_get_geometry_reply, pFnubp_) +//GOS(xcb_get_geometry_unchecked, pFpnu) +//GOS(xcb_get_image, pFpnCuwwWWu) +GO(xcb_get_image_data, pFp) +//GOS(xcb_get_image_data_end, pFpp) +GO(xcb_get_image_data_length, iFp) +GO(xcb_get_image_reply, pFnubp_) +GO(xcb_get_image_sizeof, iFp) +//GOS(xcb_get_image_unchecked, pFpnCuwwWWu) +//GOS(xcb_get_input_focus, pFpn) +GO(xcb_get_input_focus_reply, pFnubp_) +//GOS(xcb_get_input_focus_unchecked, pFpn) +//GOS(xcb_get_keyboard_control, pFpn) +GO(xcb_get_keyboard_control_reply, pFnubp_) +//GOS(xcb_get_keyboard_control_unchecked, pFpn) +//GOS(xcb_get_keyboard_mapping, pFpnCC) +GO(xcb_get_keyboard_mapping_keysyms, pFp) +//GOS(xcb_get_keyboard_mapping_keysyms_end, pFpp) +GO(xcb_get_keyboard_mapping_keysyms_length, iFp) +GO(xcb_get_keyboard_mapping_reply, pFnubp_) +GO(xcb_get_keyboard_mapping_sizeof, iFp) +//GOS(xcb_get_keyboard_mapping_unchecked, pFpnCC) +GO(xcb_get_maximum_request_length, uFn) +//GOS(xcb_get_modifier_mapping, pFpn) +GO(xcb_get_modifier_mapping_keycodes, pFp) +//GOS(xcb_get_modifier_mapping_keycodes_end, pFpp) +GO(xcb_get_modifier_mapping_keycodes_length, iFp) +GO(xcb_get_modifier_mapping_reply, pFnubp_) +GO(xcb_get_modifier_mapping_sizeof, iFp) +//GOS(xcb_get_modifier_mapping_unchecked, pFpn) +//GOS(xcb_get_motion_events, pFpnuuu) +GO(xcb_get_motion_events_events, pFp) +//GOS(xcb_get_motion_events_events_iterator, pFpp) +GO(xcb_get_motion_events_events_length, iFp) +GO(xcb_get_motion_events_reply, pFnubp_) +GO(xcb_get_motion_events_sizeof, iFp) +//GOS(xcb_get_motion_events_unchecked, pFpnuuu) +//GOS(xcb_get_pointer_control, pFpn) +GO(xcb_get_pointer_control_reply, pFnubp_) +//GOS(xcb_get_pointer_control_unchecked, pFpn) +//GOS(xcb_get_pointer_mapping, pFpn) +GO(xcb_get_pointer_mapping_map, pFp) +//GOS(xcb_get_pointer_mapping_map_end, pFpp) +GO(xcb_get_pointer_mapping_map_length, iFp) +GO(xcb_get_pointer_mapping_reply, pFnubp_) +GO(xcb_get_pointer_mapping_sizeof, iFp) +//GOS(xcb_get_pointer_mapping_unchecked, pFpn) +GOS(xcb_get_property, zFEpnCuuuuu) //%% +GO(xcb_get_property_reply, pFnubp_) +GO(xcb_get_property_sizeof, iFp) +//GOS(xcb_get_property_unchecked, pFpnCuuuuu) +GO(xcb_get_property_value, pFp) +//GOS(xcb_get_property_value_end, pFpp) +GO(xcb_get_property_value_length, iFp) +GO(xcb_get_reply_fds, pFnpL) +//GOS(xcb_get_screen_saver, pFpn) +GO(xcb_get_screen_saver_reply, pFnubp_) +//GOS(xcb_get_screen_saver_unchecked, pFpn) +//GOS(xcb_get_selection_owner, pFpnu) +GO(xcb_get_selection_owner_reply, pFnubp_) +//GOS(xcb_get_selection_owner_unchecked, pFpnu) +GO(xcb_get_setup, pFn) +//GOS(xcb_get_window_attributes, pFpnu) +GO(xcb_get_window_attributes_reply, pFnubp_) +//GOS(xcb_get_window_attributes_unchecked, pFpnu) +//GOS(xcb_grab_button, pFpnCuWCCuuCW) +//GOS(xcb_grab_button_checked, pFpnCuWCCuuCW) +//GOS(xcb_grab_key, pFpnCuWCCC) +//GOS(xcb_grab_keyboard, pFpnCuuCC) +GO(xcb_grab_keyboard_reply, pFnubp_) +//GOS(xcb_grab_keyboard_unchecked, pFpnCuuCC) +//GOS(xcb_grab_key_checked, pFpnCuWCCC) +//GOS(xcb_grab_pointer, pFpnCuWCCuuu) +GO(xcb_grab_pointer_reply, pFnubp_) +//GOS(xcb_grab_pointer_unchecked, pFpnCuWCCuuu) +//GOS(xcb_grab_server, pFpn) +//GOS(xcb_grab_server_checked, pFpn) +GO(xcb_host_address, pFp) +//GOS(xcb_host_address_end, pFpp) +GO(xcb_host_address_length, iFp) +//GO(xcb_host_end, +GO(xcb_host_next, vFbpii_) +GO(xcb_host_sizeof, iFp) +//GOS(xcb_image_text_16, pFpnCuuwwp) +//GOS(xcb_image_text_16_checked, pFpnCuuwwp) +GO(xcb_image_text_16_sizeof, iFp) +GO(xcb_image_text_16_string, pFp) +//GOS(xcb_image_text_16_string_iterator, pFpp) +GO(xcb_image_text_16_string_length, iFp) +//GOS(xcb_image_text_8, pFpnCuuwwp) +//GOS(xcb_image_text_8_checked, pFpnCuuwwp) +GO(xcb_image_text_8_sizeof, iFp) +GO(xcb_image_text_8_string, pFp) +//GOS(xcb_image_text_8_string_end, pFpp) +GO(xcb_image_text_8_string_length, iFp) +//GOS(xcb_install_colormap, pFpnu) +//GOS(xcb_install_colormap_checked, pFpnu) +GOS(xcb_intern_atom, zFpnCWp) //%% +GO(xcb_intern_atom_reply, pFnubp_) +GO(xcb_intern_atom_sizeof, iFp) +//GOS(xcb_intern_atom_unchecked, pFpnCWp) +//GO(xcb_keycode32_end, +GO(xcb_keycode32_next, vFbpii_) +//GO(xcb_keycode_end, +GO(xcb_keycode_next, vFbpii_) +//GO(xcb_keysym_end, +GO(xcb_keysym_next, vFbpii_) +//GOS(xcb_kill_client, pFpnu) +//GOS(xcb_kill_client_checked, pFpnu) +//GOS(xcb_list_extensions, pFpn) +//GOS(xcb_list_extensions_names_iterator, pFpp) +GO(xcb_list_extensions_names_length, iFp) +GO(xcb_list_extensions_reply, pFnubp_) +GO(xcb_list_extensions_sizeof, iFp) +//GOS(xcb_list_extensions_unchecked, pFpn) +//GOS(xcb_list_fonts, pFpnWWp) +//GOS(xcb_list_fonts_names_iterator, pFpp) +GO(xcb_list_fonts_names_length, iFp) +GO(xcb_list_fonts_reply, pFnubp_) +GO(xcb_list_fonts_sizeof, iFp) +//GOS(xcb_list_fonts_unchecked, pFpnWWp) +//GOS(xcb_list_fonts_with_info, pFpnWWp) +GO(xcb_list_fonts_with_info_name, pFp) +//GOS(xcb_list_fonts_with_info_name_end, pFpp) +GO(xcb_list_fonts_with_info_name_length, iFp) +GO(xcb_list_fonts_with_info_properties, pFp) +//GOS(xcb_list_fonts_with_info_properties_iterator, pFpp) +GO(xcb_list_fonts_with_info_properties_length, iFp) +GO(xcb_list_fonts_with_info_reply, pFnubp_) +GO(xcb_list_fonts_with_info_sizeof, iFp) +//GOS(xcb_list_fonts_with_info_unchecked, pFpnWWp) +//GOS(xcb_list_hosts, pFpn) +//GOS(xcb_list_hosts_hosts_iterator, pFpp) +GO(xcb_list_hosts_hosts_length, iFp) +GO(xcb_list_hosts_reply, pFnubp_) +GO(xcb_list_hosts_sizeof, iFp) +//GOS(xcb_list_hosts_unchecked, pFpn) +//GOS(xcb_list_installed_colormaps, pFpnu) +GO(xcb_list_installed_colormaps_cmaps, pFp) +//GOS(xcb_list_installed_colormaps_cmaps_end, pFpp) +GO(xcb_list_installed_colormaps_cmaps_length, iFp) +GO(xcb_list_installed_colormaps_reply, pFnubp_) +GO(xcb_list_installed_colormaps_sizeof, iFp) +//GOS(xcb_list_installed_colormaps_unchecked, pFpnu) +//GOS(xcb_list_properties, pFpnu) +GO(xcb_list_properties_atoms, pFp) +//GOS(xcb_list_properties_atoms_end, pFpp) +GO(xcb_list_properties_atoms_length, iFp) +GO(xcb_list_properties_reply, pFnubp_) +GO(xcb_list_properties_sizeof, iFp) +//GOS(xcb_list_properties_unchecked, pFpnu) +//GOS(xcb_lookup_color, pFpnuWp) +GO(xcb_lookup_color_reply, pFnubp_) +GO(xcb_lookup_color_sizeof, iFp) +//GOS(xcb_lookup_color_unchecked, pFpnuWp) +//GOS(xcb_map_subwindows, pFpnu) +//GOS(xcb_map_subwindows_checked, pFpnu) +//GOS(xcb_map_window, pFpnu) +//GOS(xcb_map_window_checked, pFpnu) +//GOS(xcb_no_operation, pFpn) +//GOS(xcb_no_operation_checked, pFpn) +//GOS(xcb_open_font, pFpnuWp) +//GOS(xcb_open_font_checked, pFpnuWp) +GO(xcb_open_font_name, pFp) +//GOS(xcb_open_font_name_end, pFpp) +GO(xcb_open_font_name_length, iFp) +GO(xcb_open_font_sizeof, iFp) +GO(xcb_parse_display, iFpbp_pp) +//GO(xcb_pixmap_end, +GO(xcb_pixmap_next, vFbpii_) +//GO(xcb_point_end, +GO(xcb_point_next, vFbpii_) +GO(xcb_poll_for_event, pFn) +GO(xcb_poll_for_queued_event, pFn) +GO(xcb_poll_for_reply, iFnubp_bp_) +GO(xcb_poll_for_reply64, iFnUbp_bp_) +GO(xcb_poll_for_special_event, pFnp) +//GOS(xcb_poly_arc, pFpnuuup) +GO(xcb_poly_arc_arcs, pFp) +//GOS(xcb_poly_arc_arcs_iterator, pFpp) +GO(xcb_poly_arc_arcs_length, iFp) +//GOS(xcb_poly_arc_checked, pFpnuuup) +GO(xcb_poly_arc_sizeof, iFpu) +//GOS(xcb_poly_fill_arc, pFpnuuup) +GO(xcb_poly_fill_arc_arcs, pFp) +//GOS(xcb_poly_fill_arc_arcs_iterator, pFpp) +GO(xcb_poly_fill_arc_arcs_length, iFp) +//GOS(xcb_poly_fill_arc_checked, pFpnuuup) +GO(xcb_poly_fill_arc_sizeof, iFpu) +//GOS(xcb_poly_fill_rectangle, pFpnuuup) +//GOS(xcb_poly_fill_rectangle_checked, pFpnuuup) +GO(xcb_poly_fill_rectangle_rectangles, pFp) +//GOS(xcb_poly_fill_rectangle_rectangles_iterator, pFpp) +GO(xcb_poly_fill_rectangle_rectangles_length, iFp) +GO(xcb_poly_fill_rectangle_sizeof, iFpu) +//GOS(xcb_poly_line, pFpnCuuup) +//GOS(xcb_poly_line_checked, pFpnCuuup) +GO(xcb_poly_line_points, pFp) +//GOS(xcb_poly_line_points_iterator, pFpp) +GO(xcb_poly_line_points_length, iFp) +GO(xcb_poly_line_sizeof, iFpu) +//GOS(xcb_poly_point, pFpnCuuup) +//GOS(xcb_poly_point_checked, pFpnCuuup) +GO(xcb_poly_point_points, pFp) +//GOS(xcb_poly_point_points_iterator, pFpp) +GO(xcb_poly_point_points_length, iFp) +GO(xcb_poly_point_sizeof, iFpu) +//GOS(xcb_poly_rectangle, pFpnuuup) +//GOS(xcb_poly_rectangle_checked, pFpnuuup) +GO(xcb_poly_rectangle_rectangles, pFp) +//GOS(xcb_poly_rectangle_rectangles_iterator, pFpp) +GO(xcb_poly_rectangle_rectangles_length, iFp) +GO(xcb_poly_rectangle_sizeof, iFpu) +//GOS(xcb_poly_segment, pFpnuuup) +//GOS(xcb_poly_segment_checked, pFpnuuup) +GO(xcb_poly_segment_segments, pFp) +//GOS(xcb_poly_segment_segments_iterator, pFpp) +GO(xcb_poly_segment_segments_length, iFp) +GO(xcb_poly_segment_sizeof, iFpu) +//GOS(xcb_poly_text_16, pFpnuuwwup) +//GOS(xcb_poly_text_16_checked, pFpnuuwwup) +GO(xcb_poly_text_16_items, pFp) +//GOS(xcb_poly_text_16_items_end, pFpp) +GO(xcb_poly_text_16_items_length, iFp) +GO(xcb_poly_text_16_sizeof, iFpu) +//GOS(xcb_poly_text_8, pFpnuuwwup) +//GOS(xcb_poly_text_8_checked, pFpnuuwwup) +GO(xcb_poly_text_8_items, pFp) +//GOS(xcb_poly_text_8_items_end, pFpp) +GO(xcb_poly_text_8_items_length, iFp) +GO(xcb_poly_text_8_sizeof, iFpu) +GO(xcb_popcount, iFu) +GO(xcb_prefetch_extension_data, vFnbpi_) +GO(xcb_prefetch_maximum_request_length, vFn) +//GOS(xcb_put_image, pFpnCuuWWwwCCup) +//GOS(xcb_put_image_checked, pFpnCuuWWwwCCup) +GO(xcb_put_image_data, pFp) +//GOS(xcb_put_image_data_end, pFpp) +GO(xcb_put_image_data_length, iFp) +GO(xcb_put_image_sizeof, iFpu) +//GOS(xcb_query_best_size, pFpnCuWW) +GO(xcb_query_best_size_reply, pFnubp_) +//GOS(xcb_query_best_size_unchecked, pFpnCuWW) +//GOS(xcb_query_colors, pFpnuup) +GO(xcb_query_colors_colors, pFp) +//GOS(xcb_query_colors_colors_iterator, pFpp) +GO(xcb_query_colors_colors_length, iFp) +GO(xcb_query_colors_reply, pFnubp_) +GO(xcb_query_colors_sizeof, iFpu) +//GOS(xcb_query_colors_unchecked, pFpnuup) +//GOS(xcb_query_extension, pFpnWp) +GO(xcb_query_extension_reply, pFnubp_) +GO(xcb_query_extension_sizeof, iFp) +//GOS(xcb_query_extension_unchecked, pFpnWp) +//GOS(xcb_query_font, pFpnu) +GO(xcb_query_font_char_infos, pFp) +//GOS(xcb_query_font_char_infos_iterator, pFpp) +GO(xcb_query_font_char_infos_length, iFp) +GO(xcb_query_font_properties, pFp) +//GOS(xcb_query_font_properties_iterator, pFpp) +GO(xcb_query_font_properties_length, iFp) +GO(xcb_query_font_reply, pFnubp_) +GO(xcb_query_font_sizeof, iFp) +//GOS(xcb_query_font_unchecked, pFpnu) +//GOS(xcb_query_keymap, pFpn) +GO(xcb_query_keymap_reply, pFnubp_) +//GOS(xcb_query_keymap_unchecked, pFpn) +//GOS(xcb_query_pointer, pFpnu) +GO(xcb_query_pointer_reply, pFnubp_) +//GOS(xcb_query_pointer_unchecked, pFpnu) +//GOS(xcb_query_text_extents, pFpnuup) +GO(xcb_query_text_extents_reply, pFnubp_) +GO(xcb_query_text_extents_sizeof, iFpu) +//GOS(xcb_query_text_extents_unchecked, pFpnuup) +//GOS(xcb_query_tree, pFpnu) +GO(xcb_query_tree_children, pFp) +//GOS(xcb_query_tree_children_end, pFpp) +GO(xcb_query_tree_children_length, iFp) +GO(xcb_query_tree_reply, pFnubp_) +GO(xcb_query_tree_sizeof, iFp) +//GOS(xcb_query_tree_unchecked, pFpnu) +//GOS(xcb_recolor_cursor, pFpnuWWWWWW) +//GOS(xcb_recolor_cursor_checked, pFpnuWWWWWW) +//GO(xcb_rectangle_end, +GO(xcb_rectangle_next, vFbpii_) +GO(xcb_register_for_special_xge, pFnbpi_up) +//GOS(xcb_reparent_window, pFpnuuww) +//GOS(xcb_reparent_window_checked, pFpnuuww) +GO(xcb_request_check, pFnu) +//GO(xcb_rgb_end, +GO(xcb_rgb_next, vFbpii_) +//GOS(xcb_rotate_properties, pFpnuWwp) +GO(xcb_rotate_properties_atoms, pFp) +//GOS(xcb_rotate_properties_atoms_end, pFpp) +GO(xcb_rotate_properties_atoms_length, iFp) +//GOS(xcb_rotate_properties_checked, pFpnuWwp) +GO(xcb_rotate_properties_sizeof, iFp) +//GOS(xcb_screen_allowed_depths_iterator, pFpp) +GO(xcb_screen_allowed_depths_length, iFp) +//GO(xcb_screen_end, +GO(xcb_screen_next, vFbpii_) +GO(xcb_screen_sizeof, iFp) +//GO(xcb_segment_end, +GO(xcb_segment_next, vFbpii_) +//GOS(xcb_send_event, pFpnCuup) +//GOS(xcb_send_event_checked, pFpnCuup) +GO(xcb_send_fd, vFni) +GO(xcb_send_request, uFnibpL_bLpCC_) +//GOM(xcb_send_request64, UFEnibpL_bLpCC_) +//GOM(xcb_send_request_with_fds, uFEnibpL_bLpCC_up) +//GOM(xcb_send_request_with_fds64, UFEnibpL_bLpCC_up) +//GOS(xcb_set_access_control, pFpnC) +//GOS(xcb_set_access_control_checked, pFpnC) +//GOS(xcb_set_clip_rectangles, pFpnCuwwup) +//GOS(xcb_set_clip_rectangles_checked, pFpnCuwwup) +GO(xcb_set_clip_rectangles_rectangles, pFp) +//GOS(xcb_set_clip_rectangles_rectangles_iterator, pFpp) +GO(xcb_set_clip_rectangles_rectangles_length, iFp) +GO(xcb_set_clip_rectangles_sizeof, iFpu) +//GOS(xcb_set_close_down_mode, pFpnC) +//GOS(xcb_set_close_down_mode_checked, pFpnC) +//GOS(xcb_set_dashes, pFpnuWWp) +//GOS(xcb_set_dashes_checked, pFpnuWWp) +GO(xcb_set_dashes_dashes, pFp) +//GOS(xcb_set_dashes_dashes_end, pFpp) +GO(xcb_set_dashes_dashes_length, iFp) +GO(xcb_set_dashes_sizeof, iFp) +//GOS(xcb_set_font_path, pFpnWp) +//GOS(xcb_set_font_path_checked, pFpnWp) +//GOS(xcb_set_font_path_font_iterator, pFpp) +GO(xcb_set_font_path_font_length, iFp) +GO(xcb_set_font_path_sizeof, iFp) +//GOS(xcb_set_input_focus, pFpnCuu) +//GOS(xcb_set_input_focus_checked, pFpnCuu) +//GOS(xcb_set_modifier_mapping, pFpnCp) +GO(xcb_set_modifier_mapping_reply, pFnubp_) +GO(xcb_set_modifier_mapping_sizeof, iFp) +//GOS(xcb_set_modifier_mapping_unchecked, pFpnCp) +//GOS(xcb_set_pointer_mapping, pFpnCp) +GO(xcb_set_pointer_mapping_reply, pFnubp_) +GO(xcb_set_pointer_mapping_sizeof, iFp) +//GOS(xcb_set_pointer_mapping_unchecked, pFpnCp) +//GOS(xcb_set_screen_saver, pFpnwwCC) +//GOS(xcb_set_screen_saver_checked, pFpnwwCC) +//GOS(xcb_set_selection_owner, pFpnuuu) +//GOS(xcb_set_selection_owner_checked, pFpnuuu) +//GO(xcb_setup_authenticate_end, +GO(xcb_setup_authenticate_next, vFbpii_) +GO(xcb_setup_authenticate_reason, pFp) +//GOS(xcb_setup_authenticate_reason_end, pFpp) +GO(xcb_setup_authenticate_reason_length, iFp) +GO(xcb_setup_authenticate_sizeof, iFp) +//GO(xcb_setup_end, +//GO(xcb_setup_failed_end, +GO(xcb_setup_failed_next, vFbpii_) +GO(xcb_setup_failed_reason, pFp) +//GOS(xcb_setup_failed_reason_end, pFpp) +GO(xcb_setup_failed_reason_length, iFp) +GO(xcb_setup_failed_sizeof, iFp) +GO(xcb_setup_next, vFbpii_) +GO(xcb_setup_pixmap_formats, pFp) +//GOS(xcb_setup_pixmap_formats_iterator, pFpp) +GO(xcb_setup_pixmap_formats_length, iFp) +GO(xcb_setup_request_authorization_protocol_data, pFp) +//GOS(xcb_setup_request_authorization_protocol_data_end, pFpp) +GO(xcb_setup_request_authorization_protocol_data_length, iFp) +GO(xcb_setup_request_authorization_protocol_name, pFp) +//GOS(xcb_setup_request_authorization_protocol_name_end, pFpp) +GO(xcb_setup_request_authorization_protocol_name_length, iFp) +//GO(xcb_setup_request_end, +GO(xcb_setup_request_next, vFbpii_) +GO(xcb_setup_request_sizeof, iFp) +GOS(xcb_setup_roots_iterator, ZFEpp) //%% +GO(xcb_setup_roots_length, iFp) +GO(xcb_setup_sizeof, iFp) +GO(xcb_setup_vendor, pFp) +//GOS(xcb_setup_vendor_end, pFpp) +GO(xcb_setup_vendor_length, iFp) +//GOS(xcb_store_colors, pFpnuup) +//GOS(xcb_store_colors_checked, pFpnuup) +GO(xcb_store_colors_items, pFp) +//GOS(xcb_store_colors_items_iterator, pFpp) +GO(xcb_store_colors_items_length, iFp) +GO(xcb_store_colors_sizeof, iFpu) +//GOS(xcb_store_named_color, pFpnCuuWp) +//GOS(xcb_store_named_color_checked, pFpnCuuWp) +GO(xcb_store_named_color_name, pFp) +//GOS(xcb_store_named_color_name_end, pFpp) +GO(xcb_store_named_color_name_length, iFp) +GO(xcb_store_named_color_sizeof, iFp) +//GO(xcb_str_end, +GO(xcb_str_name, pFp) +//GOS(xcb_str_name_end, pFpp) +GO(xcb_str_name_length, iFp) +GO(xcb_str_next, vFbpii_) +GO(xcb_str_sizeof, iFp) +GO(xcb_sumof, iFpi) +//GOM(xcb_take_socket, iFEnppip) +//GO(xcb_timecoord_end, +GO(xcb_timecoord_next, vFbpii_) +//GO(xcb_timestamp_end, +GO(xcb_timestamp_next, vFbpii_) +//GOS(xcb_translate_coordinates, pFpnuuww) +GO(xcb_translate_coordinates_reply, pFnubp_) +//GOS(xcb_translate_coordinates_unchecked, pFpnuuww) +//GOS(xcb_ungrab_button, pFpnCuW) +//GOS(xcb_ungrab_button_checked, pFpnCuW) +//GOS(xcb_ungrab_key, pFpnCuW) +//GOS(xcb_ungrab_keyboard, pFpnu) +//GOS(xcb_ungrab_keyboard_checked, pFpnu) +//GOS(xcb_ungrab_key_checked, pFpnCuW) +//GOS(xcb_ungrab_pointer, pFpnu) +//GOS(xcb_ungrab_pointer_checked, pFpnu) +//GOS(xcb_ungrab_server, pFpn) +//GOS(xcb_ungrab_server_checked, pFpn) +//GOS(xcb_uninstall_colormap, pFpnu) +//GOS(xcb_uninstall_colormap_checked, pFpnu) +//GOS(xcb_unmap_subwindows, pFpnu) +//GOS(xcb_unmap_subwindows_checked, pFpnu) +//GOS(xcb_unmap_window, pFpnu) +//GOS(xcb_unmap_window_checked, pFpnu) +GO(xcb_unregister_for_special_event, vFnp) +//GO(xcb_visualid_end, +GO(xcb_visualid_next, vFbpii_) +//GO(xcb_visualtype_end, +GO(xcb_visualtype_next, vFbpii_) +GO(xcb_wait_for_event, pFn) +GO(xcb_wait_for_reply, pFnubp_) +GO(xcb_wait_for_reply64, pFnUbp_) +GO(xcb_wait_for_special_event, pFnp) +//GOS(xcb_warp_pointer, pFpnuuwwWWww) +//GOS(xcb_warp_pointer_checked, pFpnuuwwWWww) +//GO(xcb_window_end, +GO(xcb_window_next, vFbpii_) +GO(xcb_writev, iFnbpL_iU) +//GO(xcb_xc_misc_get_version, +//GO(xcb_xc_misc_get_version_reply, +//GO(xcb_xc_misc_get_version_unchecked, +//GO(xcb_xc_misc_get_xid_list, +//GO(xcb_xc_misc_get_xid_list_ids, +//GO(xcb_xc_misc_get_xid_list_ids_end, +//GO(xcb_xc_misc_get_xid_list_ids_length, +//GO(xcb_xc_misc_get_xid_list_reply, +//GO(xcb_xc_misc_get_xid_list_sizeof, +//GO(xcb_xc_misc_get_xid_list_unchecked, +//GO(xcb_xc_misc_get_xid_range, +//GO(xcb_xc_misc_get_xid_range_reply, +//GO(xcb_xc_misc_get_xid_range_unchecked, +DATA(xcb_xc_misc_id, 4) // Warning: failed to confirm |