XmScasOp
INT64 __fastcall XmScasOp(INT64 a1){
int v2;
INT64 result;
INT64 *StringAddress;
INT64 v5;
v2 = 1;
if( *(_BYTE *)(a1 + 139) )
{
if( *(_BYTE *)(a1 + 137) )
v2 = *(_DWORD *)(a1 + 28);
else
v2 = *(unsigned __int16 *)(a1 + 28);
}
result = XmSetSourceValue(a1, (UINT16 *)(a1 + 24));
do
{
if( !v2 )
break;
StringAddress = XmGetStringAddress(a1, 0i64, 7ui64);
XmSetDestinationValue(a1, (UINT16 *)StringAddress);
result = XmCompareOperands(v5);
--v2;
}
while( ((*(_DWORD *)(a1 + 16) & 0x40) != 0) == *(_BYTE *)(a1 + 141) );
if( *(_BYTE *)(a1 + 139) )
{
if( *(_BYTE *)(a1 + 137) )
*(_DWORD *)(a1 + 28) = v2;
else
*(_WORD *)(a1 + 28) = v2;
}
return result;
}Referenced by:
No references.