Towards a Verified Reference Implementation of a Trusted Platform Module