This message is not limited to Old Norse, but I'll post it anyway.
"The traditional zero-hypothesis is that the meaning of words
moves from concrete (a specific type of animal) to more abstract
(a man out of accordance with the community) and especially that
primitive societies had (have) a very concrete vocabulary." (Haukur
Thorgeirsson (2003), message 3872)
Both 'ulfr' and 'vargr' are believed to have PIE ancestors (maybe
*wlkwos and *wergh- respectively). But even if our ancestors the Indo-
Europeans lived in a primitive society, their language was apparently
far from primitive (8 cases, 3 numbers, 3 genders).
As far as I understand, the word ulfr, its cognates (Germ Wolf etc.),
and its ancestors (PGmc. *wulfaz-, PIE *wlkwos) have all had the core
sense 'wolf' throughout their history. But the Sanskrit
cognate `vrka' actually has the literal meaning 'tearer'. This fact
seems to suggest two possibilities: 1) the original or literal
meaning of *wlkwos was 'tearer'(/something similar to 'tearer') or 2)
the Sanskrit word `vrka' does not stem from the IE root *wlkw-.
Unless my reasoning is faulty, then, it could be that the PIE sources
of the words 'ulfr' and 'vargr' both had an original meaning other
than 'wolf'.
*wergh- might have meant 'to turn' (alt. 'to strangle') and *wlkw-
'to tear'?