func: static CVE_2012_5237_PATCHED_dissect_hsrp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) gchar dst [ 16 ] ; if ( pinfo -> destport != UDP_PORT_HSRP && pinfo -> destport != UDP_PORT_HSRP2_V6 )  if ( pinfo -> dst . type == AT_IPv4 && strcmp ( dst , HSRP_DST_IP_ADDR ) == 0 )  if ( ( pinfo -> dst . type == AT_IPv4 && strcmp ( dst , HSRP2_DST_IP_ADDR ) == 0 ) || ( pinfo -> dst . type == AT_IPv6 && pinfo -> destport == UDP_PORT_HSRP2_V6 ) )  guint offset = 0 , offset2 ; proto_tree * hsrp_tree = NULL ; guint8 type , len ; if ( tree )  ti = proto_tree_add_item ( tree , proto_hsrp , tvb , offset , - 1 , ENC_NA ); hsrp_tree = proto_item_add_subtree ( ti , ett_hsrp ); while ( tvb_reported_length_remaining ( tvb , offset ) > 0 )  type = tvb_get_guint8 ( tvb , offset ); len = tvb_get_guint8 ( tvb , offset + 1 ); offset2 = offset; if ( type == 1 && len == 40 )  offset += 2; if ( tree )  offset ++; offset ++; offset ++; ipver = tvb_get_guint8 ( tvb , offset ); if ( ipver == 4 )  if ( ipver == 6 )  if ( type == 2 && len == 4 )  if ( type == 3 && len == 8 )  if ( tree )  proto_tree * text_auth_tlv ; gchar auth_buf [ 8 + 1 ] ; ti = proto_tree_add_uint_format ( hsrp_tree , hf_hsrp2_text_auth_tlv , tvb , offset , 1 , type , "Text Authentication TLV: Type=%d Len=%d" , type , len ); offset += 2; text_auth_tlv = proto_item_add_subtree ( ti , ett_hsrp2_text_auth_tlv ); auth_buf [ sizeof auth_buf - 1 ] = '\0'; proto_tree_add_string_format ( text_auth_tlv , hf_hsrp2_auth_data , tvb , offset , 8 , auth_buf , "Authentication Data: %sDefault (%s)" , ( tvb_strneql ( tvb , offset , "cisco" , strlen ( "cisco" ) ) ) == 0 ? "" : "Non-" , auth_buf ); if ( type == 4 && len == 28 )  offset = offset2 + len + 2; 