INT64 __fastcall CmpTryAcquireIXLockWithRollbackPacket(UINT64 *a1, CHAR a2, UINT64 *a3){
int v3;
INT64 result;
bool v5;
v3 = *(_DWORD *)a1;
if( a2 )
{
if( !v3 )
return 0i64;
v5 = 0;
}
else
{
v5 = v3 >= 0;
}
if( v5 )
return 0i64;
result = CmpSnapshotTxOwnerArrayToRollbackPacket(a1, a3);
if( (int)result >= 0 )
return 3221226029i64;
return result;
}