SQL Server 2008r2 won't start after windows updates, error log & wmi provider errors
The official solution as per Microsoft article is:


  To work around this problem, add the domain user account to the SQLServer2005MSSQLUser$ComputerName$InstanceName domain group.
  
  To do this, follow these steps:
  1. Click Start, point to Administrative Tools, and then click Active Directory Users and Computers.
  2. In the Active Directory Users and Computers snap-in, click Users.
  3. Double-click SQLServer2005MSSQLUser$ComputerName$InstanceName.
  4. In the Properties dialog box, click the Members tab.
  5. On the Members tab, click Add.
  6. In the Select Users, Contacts, Computers, or Groups dialog box, type the user in the DomainName\UserName format under Enter the object names to select, and then click OK.
  7. In the Properties dialog box, click OK.


References 


Error message when you change the service account of SQL Server 2008 components to a non-domain administrator account on a Windows Server 2008 domain controller: "The service did not start due to a logon failure" or "WMI Provider Error" (Microsoft Support)  
WMI Provider Error - When Changing SQL Services Account (SQLServerCentral)  


SQL Server Configuration Manager

When you run the SQL Server Configuration Manager and modify settings the configuration manager will add and remove permissions on files and directories based on the configuration changes made. 

This is why Microsoft states, that configuration changes should always be made with the SQL Server Configuration Manager. 


  Important
  Always use SQL Server tools such as SQL Server Configuration Manager to change the account used by the SQL Server or SQL Server Agent services, or to change the password for the account. In addition to changing the account name, SQL Server Configuration Manager performs additional configuration such as setting permissions in the Windows Registry so that the new account can read the SQL Server settings. Other tools such as the Windows Services Control Manager can change the account name but do not change associated settings. If the service cannot access the SQL Server portion of the registry the service may not start properly.


Reference: SQL Server Configuration Manager (Microsoft Docs)

Actual Steps To Perform

In your case you might have performed several of the steps, but not in the correct order. Try the following:


Open SQL Server Configuration Manager
Set the SQL Server (INSTANCE) service account to a user you don't want the service to run under
Restart the SQL Server (INSTANCE) service for your instance (should fail)
Close SQL Server Configuration Manager
Add the service account that you want the SQL Server service to run under to the specified group (as detailed at the beginning of the post; steps 1-7)
Open SQL Server Configuration Manager
Set the SQL Server (INSTANCE) service account to the user you just added to the SQLServer2005MSSQLUser$ComputerName$InstanceName group.
Restart SQL Server (INSTANCE) service for your instance


In the case that this doesn't work you may have broken ACLs (permissions) at some level in the SQL Server Program Files structure.

SQL Server Accounts And ACLs

Your service still isn't starting and it could still be an issue with permissions (ACLs)? 

Then you might have to fix the file/folder permissions. The full list of SQL Server Account and the required permissions are listed in the following exhaustive documentations:


Setting Up Windows Service Accounts (Microsoft Technet / 2008R2)   
Configure Windows Service Accounts and Permissions (Microsoft SQL Docs / 2012)  


Everywhere where MSSQLServer is referenced in the documentation, replace with the account you wish to run your SQL Server (INSTANCE) with.

For example when checking the Reviewing Access Control Lists Created for SQL Server Service Accounts section of the document, ensure that your YourServiceAccount has access to:


Service Account for | Files and Folders        | Access
--------------------+--------------------------+---------------
MSSQLServer         | Instid\MSSQL\backup      | Full control
                    | Instid\MSSQL\binn        | Read, Execute
                    | Instid\MSSQL\data        | Full control
....


Instead of MSSQLServer use YourServiceAccount.

References:  


Setting Up Windows Service Accounts (Microsoft Technet / 2008R2)  
Configure Windows Service Accounts and Permissions (Microsoft SQL Docs / 2016+)