There are 2 types of user menu- both are generated by the same function wpestate_generate_user_menu(). The function is located in   libs/design_functions.php , function wpestate_generate_user_menu at line 2

The top menu is in templates/user_menu.php . It uses the wpestate_generate_user_menu to show the menu

<div class="user_tab_menu">

<ul class="user_dashboard_links">
<?php wpestate_generate_user_menu(); ?>
</ul>
</div>

The menu on right part (appears when you click the picture or submit property ). This menu is located in templates/top_user_menu.php

The “Submit Property” (when the user is not logged in) and the user image (when the user is logged in) can be found around line 15 .
<?php if(is_user_logged_in()){ ?>
<div class="user_menu user_loged" id="user_menu_u">
<a class="menu_user_tools dropdown" id="user_menu_trigger" data-toggle="dropdown">
<a class="navicon-button x">
<div class="navicon"></div>
</a>
<div class="menu_user_picture" style="background-image: url('<?php print $user_small_picture[0]; ?>');"></div>
<?php }else{ ?>
<div class="user_menu" id="user_menu_u">
<a class="menu_user_tools dropdown" id="user_menu_trigger" data-toggle="dropdown">
<a class="navicon-button x">
<div class="navicon"></div>
</a>
<div class="submit_action"><?php _e('Submit Property','wpestate');?></div>
<?php } ?>

In there we do a check to see if the user is logged in.

if ( 0 != $current_user->ID  && is_user_logged_in() ) {

if yes we show the user dashboard links , if no we show the login & register forms.

The show/hide functionality is made via javascript in control.js around line 1050

$('#user_menu_u').click(function(event){

if( $(‘#user_menu_open’).is(“:visible”)){

We also check for WooCommerce and enable the the show cart via

if( class_exists( 'WooCommerce' ) ){
$wpestate_global_payments->show_cart();
}