SmKmStoreHelperCommandCleanup
VOID __stdcall SmKmStoreHelperCommandCleanup(
_SMKM_STORE_HELPER *Helper,
_SMKM_STORE_HELPER_COMMAND Command,
_SMKM_STORE_HELPER_PARAMS *Params){
__int32 v5;
__int32 v6;
__int32 v7;
_SMKM_STORE_HELPER_PARAMS v8;
_SMKM_STORE_HELPER_PARAMS Paramsa[2];
__int64 v10;
__int128 v11;
__int128 v12;
v11 = 0i64;
v12 = 0i64;
v5 = Command - 2;
if( v5 )
{
v6 = v5 - 1;
if( v6 )
{
v7 = v6 - 1;
if( v7 )
{
if( v7 == 1 )
(*(void(__fastcall **)(_SMKM_STORE_HELPER *, _QWORD, __int64))Params)(Helper, *((_QWORD *)Params + 1), 1i64);
}
else if( Params[10] >= 0 )
{
SmKmUnlockMdl(*((PMDL *)Params + 3), *((_SM_FORWARD_PROGRESS_CTX **)Helper + 15), Helper);
SmFpFree(*((_SM_FORWARD_PROGRESS_CTX **)Helper + 15), SmFpResourceLockMdl, Helper, *((VOID **)Params + 3));
}
}
}
else if( Params[10] >= 0 )
{
v8 = Params[8];
*(_QWORD *)Paramsa = *((_QWORD *)Params + 3);
v10 = *((_QWORD *)Params + 1);
LODWORD(v11) = ((unsigned __int8)v11 ^ (unsigned __int8)v8) & 1 ^ v11;
SmKmStoreHelperCommandProcess(Helper, SmKmHelperFree, Paramsa);
}
}Referenced by:
SmKmStoreHelperWorker