El codigo es este:
Código:
y este otro tamb me da problemastypedef int ( *PBPerformCheck_t )( int iArg1, int iArg2, int iArg3 ); PBPerformCheck_t pPBPerformCheck = 0; char *pszCheckString; int _PBPerformCheck( int iArg1, int iArg2, int iArg3 ) { // _asm mov pszCheckString, edi; _asm mov pszCheckString, esi; // if the pszCheckString's first char is |: Files white list check // if the pszCheckString's first char is B: Cvar check // if the pszCheckString's first char is N: MD5 check // if the pszCheckString's first char is E: Key bind check // Remove modifications int iReturn = pPBPerformCheck( iArg1 , iArg2, iArg3 ); // Apply modifications return iReturn; } pPBPerformCheck = ( PBPerformCheck_t )DetourFunction( ( PBYTE )( g_dwPbclBase + 0x250E0 ), ( PBYTE )_PBPerformCheck );
Código:
bool g_bSafeScreen = true; int _PBScreenshotSetup( int iArg1 , int iArg2, int iArg3, int iArg4, unsigned int uiArg5 ) { g_bSafeScreen = false; static int iRequest = 0; iRequest++; int iReturn; if( iRequest <= 1 ) iReturn = 2; else { iReturn = 2; if( iRequest % 16 == 1 ) { iReturn = pPBScreenshotSetup( iArg1 , iArg2, iArg3, iArg4, uiArg5 ); g_bSafeScreen = true; iRequest = 0; } } return iReturn; } pPBScreenshotSetup = ( PBScreenshotSetup_t )DetourFunction( ( PBYTE )( g_dwPbclBase + 0xE030 ), ( PBYTE )_PBScreenshotSetup ); // Usage if( g_bSafeScreen ) { // Apply your visual modifications }