#pragma once class CVobDec { int m_lfsr0, m_lfsr1; void ClockLfsr0Forward(int& lfsr0); void ClockLfsr1Forward(int& lfsr1); void ClockBackward(int& lfsr0, int& lfsr1); void Salt(const BYTE salt[5], int& lfsr0, int& lfsr1); int FindLfsr(const BYTE* crypt, int offset, const BYTE* plain); public: CVobDec(); virtual ~CVobDec(); bool m_fFoundKey; bool FindKey(BYTE* buff); void Decrypt(BYTE* buff); };