SymCryptSha256Result
void __fastcall SymCryptSha256Result(PVOID pbData, _QWORD *a2){
__int64 v3;
unsigned int v5;
__int64 *v6;
__int64 v7;
__int64 v8;
UINT64 v9;
v9 = 0i64;
v3 = *(unsigned int *)pbData;
*((_BYTE *)pbData + v3 + 32) = 0x80;
v5 = v3 + 1;
if( v5 > 0x38 )
{
SymCryptWipe((char *)pbData + v5 + 32, 64 - v5);
SymCryptSha256AppendBlocks((__m128i *)pbData + 6, (const __m128i *)pbData + 2, 0x40ui64, &v9);
v5 = 0;
}
SymCryptWipe((char *)pbData + v5 + 32, 64 - v5);
*((_QWORD *)pbData + 11) = _byteswap_uint64(8i64 * *((_QWORD *)pbData + 2));
SymCryptSha256AppendBlocks((__m128i *)pbData + 6, (const __m128i *)pbData + 2, 0x40ui64, &v9);
v6 = (__int64 *)((char *)pbData + 96);
v7 = 4i64;
do
{
v8 = *v6++;
*a2++ = _byteswap_uint64(__ROL8__(v8, 32));
--v7;
}
while( v7 );
SymCryptWipe(pbData, 0x80ui64);
*((_OWORD *)pbData + 6) = xmmword_14000F498;
*((_OWORD *)pbData + 7) = xmmword_14000F4A8;
}Referenced by:
SymCryptSha256