diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper
index c530ea754c5c374f6f4fc27ae843cd3b23dfd1eb..880dc825c3b68a2dbb5b55ed64538019d36c4a5c 100755
--- a/data_from_portwine/scripts/functions_helper
+++ b/data_from_portwine/scripts/functions_helper
@@ -1428,11 +1428,19 @@ edit_user_conf_from_gui () {
 
 pw_create_gui_png () {
     if [ ! -z "${PORTWINE_CREATE_SHORTCUT_NAME}" ] ; then
-        PORTPROTON_NAME="${PORTWINE_CREATE_SHORTCUT_NAME}"
+        export PORTPROTON_NAME="${PORTWINE_CREATE_SHORTCUT_NAME}"
     else
-        PORTPROTON_NAME="$(basename "${portwine_exe}" | sed s/".exe"/""/gi )"
+        PW_PRODUCTNAME=$(env PERL5LIB="${PW_PLUGINS_PATH}/portable/lib/perl5" "${PW_PLUGINS_PATH}/portable/bin/exiftool" -ProductName "${portwine_exe}" 2>/dev/null | sed -n 's/^Product Name\s*:\s*//p')
+        if [[ "$PW_PRODUCTNAME" =~ "Launcher" ]] || [[ "$PW_PRODUCTNAME" =~ "RU" ]] ; then
+            PW_PRODUCTNAME=$(echo "$PW_PRODUCTNAME" | sed 's/Launcher\|RU//g')
+        fi
+
+        if [[ ! -z "$PW_PRODUCTNAME" ]] ; then
+            export PORTPROTON_NAME="$PW_PRODUCTNAME"
+        else
+            export PORTPROTON_NAME="$(basename "$(dirname "${portwine_exe}")")"
+        fi
     fi
-    export PORTPROTON_NAME
     PW_RESIZE_TO=128
     try_remove_file "${PORT_WINE_PATH}/data/img/setup.png"
     try_remove_file "${PORT_WINE_PATH}/data/img/Setup.png"