(1) I had hopes your Lfsvc.dll would be missing. Are you sure it is in the proper folder: "C:\Windows\System32"? If so, there's nothing to fix. And I can't understand that error message you got...
...What file on earth can it be referring to? We've looked at a bigly bunch now!
OTOH, if the file is not in the proper folder, then R-Clk it, & select "Copy". Then, go & paste it into System32. Reboot. See whether you can now set Geolocation Service to manual.
(2) A little research says the following is the proper registry key to look at, though likely it is the same as the other...
...The difference is this one mentions "CurrentControlSet", & it is a pointer to either of two others (the one last booted or the one last booted successfully). This is the one being used.
The main difference so far between us is the value of "Start". Mine is "3" & yours probably is "4". But see what I've circled up there? That is all part of this registry key, &, if you click those ">"'s you'll see especially "Components" has a lot more data. In addition, there are a lot more registry keys involved, such as the one you don't have. It would have shown in your left pane under "12", if you had it.
I'm thinking your "4" means "disabled" & my "3" means "manual". I wanted to ask that you change yours to mine & reboot - but hold off -until I can discover what file is missing. I want to look through more of the registry keys, for another important-looking one & for any mentioning of another file. EDIT 7:52 PM: And now I see changing that key wouldn't do it, going by a TechNet article**...**
https://technet.microsoft.com/en-us/library/cc959920.aspx
OK, I'll go looking for a file.