XmLoopOp
INT64 __fastcall XmLoopOp(INT64 a1){
int v1;
unsigned int v2;
char v3;
__int64 v4;
int v5;
unsigned int v6;
INT64 result;
unsigned int v8;
v1 = *(_DWORD *)(a1 + 28);
*(_QWORD *)(a1 + 88) = a1 + 28;
v2 = v1 - 1;
v3 = *(_BYTE *)(a1 + 137);
if( !v3 )
v2 = (unsigned __int16)v2;
*(_DWORD *)(a1 + 120) = v3 != 0 ? 3 : 1;
XmStoreResult(a1, v2);
if( (*(_DWORD *)(v4 + 112) & 3) != 0 )
{
if( (*(_DWORD *)(v4 + 112) & 3) != v6 )
{
result = v6;
goto LABEL_6;
}
v8 = *(_DWORD *)(v4 + 16) >> 6;
}
else
{
v8 = ~(*(_DWORD *)(v4 + 16) >> 6);
}
result = v6 & v8;
LABEL_6:
if( (_DWORD)result )
{
if( v5 )
{
result = *(unsigned __int16 *)(v4 + 104);
*(_DWORD *)(v4 + 20) = result;
}
}
return result;
}Referenced by:
No references.