SdbpCheckRuntimePlatformV2Impl

NTSTATUS __stdcall SdbpCheckRuntimePlatformV2Impl(INT64 *a1, UINT64 a2, UINT64 a3){
  int v3; 
  unsigned int v4; 
  int v6; 
  unsigned int v7; 
  unsigned int v8; 
  unsigned int v9; 
  unsigned int v10; 
  unsigned int v11; 
  unsigned int v12; 

  v3 = 0;
  v4 = a2;
  if( (_DWORD)a3 != -1073741824 )
  {
    v6 = 0;
    while( (((unsigned int)a3 >> v6) & 0x40) == 0 )
    {
LABEL_17:
      v6 += 8;
      if( v6 >= 24 )
        goto LABEL_20;
    }
    v7 = ((unsigned int)a3 >> v6) & 0x3F;
    if( v7 )
    {
      v8 = v7 - 5;
      if( !v8 )
      {
        v12 = v4 >> 3;
        goto LABEL_11;
      }
      v9 = v8 - 4;
      if( !v9 )
        goto LABEL_10;
      v10 = v9 - 2;
      if( !v10 || (v11 = v10 - 1) == 0 )
      {
        v12 = v4 >> 2;
        goto LABEL_11;
      }
      if( v11 == 1 )
      {
LABEL_10:
        v12 = v4 >> 1;
LABEL_11:
        v3 = v12 & 1;
        goto LABEL_16;
      }
    }
    else if( (v4 & 1) != 0 )
    {
      goto LABEL_19;
    }
    v3 = 0;
LABEL_16:
    if( v3 )
      goto LABEL_20;
    goto LABEL_17;
  }
LABEL_19:
  v3 = 1;
LABEL_20:
  *(_DWORD *)a1 = v3;
  return 1;
}

Referenced by:

SdbpCheckRuntimePlatformImpl