I chose the basic email icon that is in the WP dashicons, but there are a couple of dashicon alternatives. And certainly, you could modify this code snippet to use any type of image/icon, such as font awesome. I used the WP dashicons because they are already loaded.
Adding the icon itself (without the link) is nothing more than adding the following span tag to the user profile:
<span class="dashicons dashicons-email"></span>Adding to the user list view can be done with the wpmem_ul_user_rows filter. There is a verbose example below.
add_filter( 'wpmem_ul_user_rows', function( $rows, $list_id ) {
// User ID is a field in the $rows array, get it as $user_id.
$user_id = $rows['ID'];
// User email will be in the $rows array by its meta key (see WP-Members Fields tab).
// HOWEVER, it will have a div wrapper, so we'll strip that out first. (I put them
// in variables to reuse later when we rewrap the field before returnning).
$user_email = $rows['user_email'];
$wrapper_start = '<div class="user_email">';
$wrapper_end = '</div>';
$raw_email = str_replace( array( $wrapper_start, $wrapper_end ), array( '', '' ), $user_email );
// Get the dashicon.
$icon = '<span class="dashicons dashicons-email"></span>';
// Linked icon with the email text.
$email_w_icon = '<a href="mailto:' . $raw_email . '">' . $icon . '</a> ' . $raw_email;
// Put the div tag back.
$rows['user_email'] = $wrapper_start . $email_w_icon . $wrapper_end;
// Return the filtered result.
return $rows;
}, 10, 2 );