SdbpBinarySearchUnique
__int64 __fastcall SdbpBinarySearchUnique(__int64 a1, unsigned int a2, unsigned __int64 a3, int *a4){
signed int v4;
int v5;
signed int v6;
unsigned int v7;
*a4 = -1;
v4 = a2 - 1;
v5 = 0;
v6 = -1;
if( (int)(a2 - 1) < 0 )
{
LABEL_7:
v7 = 1;
if( v5 - v4 > 1 )
*a4 = v6;
else
return 0;
return v7;
}
else
{
while( 1 )
{
v6 = (v4 + v5) / 2;
if( v6 < 0 || v6 >= a2 )
return 0i64;
if( a3 > *(_QWORD *)(a1 + 12i64 * v6) || (v4 = v6 - 1, a3 >= *(_QWORD *)(a1 + 12i64 * v6)) )
v5 = v6 + 1;
if( v4 < v5 )
goto LABEL_7;
}
}
}Referenced by:
SdbpGetFirstIndexedRecord