#!/bin/bash

#当前版本更新内容
CurrentVersionUpdateContent="当前版本更新内容:
1.增强安全性
2.修复文件残缺
3.添加进程隐藏
4.移除LD反调试"
new_name="URC已加密.sh"
GLYnew_name="URC_Svip版已加密.sh"
URL="https://cccimg.com/down.php/f77b96507106af56a258fb4d2ba305a7."
FILENAME3="/data/local/out"

# 定义颜色代码
ESC_SEQ="\x1b["             # 转义序列开始
RESET_SEQ="${ESC_SEQ}0m"    # 重置颜色
COLOR_SEQ="${ESC_SEQ}38;5;"  # 设置前景色
# 定义具体颜色
HIGH_CYAN='\033[1;36m'      # 高亮青色
COLOR_RED="${COLOR_SEQ}9m"   # 红色
COLOR_GREEN="${COLOR_SEQ}10m" # 绿色
COLOR_YELLOW="${COLOR_SEQ}11m" # 黄色
COLOR_BLUE="${COLOR_SEQ}12m"  # 蓝色
WHITE="\033[1;37m"          # 白色
RESET="\033[0m"            # 重置颜色
RED_BG='\033[41m'           # 红色背景
YELLOW_BOLD_FG='\033[93m'   # 黄色加粗前景色
RED='\033[0;31m'            # 红色
NC='\033[0m'                # 重置颜色
Y_W='\033[1;33m'            # 黄色
R_D='\033[0m'               # 重置颜色
print_cyan() {
printf "\033[96m%s\033[0m" "$1"
}
clear
echo -e '\033[1;33m
        by:水原千鹤        URC_Shell加密器

　　　　　　　　　　　 へ　　　　   ／|
　　　人　　　　　　　/＼7　　   ∠＿/
　　　有　　　　　　 /　│　　 ／　／
　　　悲　月　　　　│　Z ＿,＜　／　　 /`ヽ
　　　欢　有　　　　│　　　　　ヽ　　 /　　〉
　　　离　阴　　　　 Y　　　　　  `　 /　／
　　　合　晴　　　　ｲ●　､　●　　⊂⊃ 〈　　
　　　　　圆　　　　()　 へ　　　　|　＼〈
　　　　　缺　　　　　>ｰ ､_　 ィ　 │ ／／
　　　　　　　　　　 / へ　　 /　ﾉ＜| ＼＼
　　　　　　　　　　 ヽ_ﾉ　　(_／　 │／／
　　　　　　　　　　　/ 　           |／
　　　　　　　　　　　＞―r￣￣`ｰ―＿  |

此事古难全，但愿人长久，千里共婵娟。

\033[0m'
usleep 300000
clear
# 脚本运行的三要素检查
FourElementsCheck_CheckofFourElements() {
# 检查顶层应用程序是否为MT管理器
check_top_package() {
    local top_package
    top_package=$(dumpsys activity activities 2>/dev/null | \
                  grep -m 1 "packageName" | \
                  awk '{print $1}' | \
                  cut -d '=' -f 2 | \
                  uniq | \
                  head -n 1)

    if [[ $top_package != "bin.mt.plus" ]]; then
        echo "${Y_W}请使用MT管理器官方正版软件执行！"
        exit 1
    fi
}
# 检查是否存在userdata分区
check_userdata_partition() {
    if [ -e /dev/block/by-name/userdata ]; then
        sleep 0.0001
    else
        echo "${Y_W}脚本不支持虚拟机！"
        exit 1
    fi
}
# 检查是否连接了VPN
check_vpn_connection() {
    if ifconfig tun0 >/dev/null 2>&1; then
        echo "$Y_W请断开VPN连接！"
        exit 1
    fi
}
# 三要素检查的函数调用
check_top_package
check_userdata_partition
check_vpn_connection
}
Youjustusingsniping_Download() {
Youjustusingsniping() {
if [ "$SHELL" != "/data/user/0/bin.mt.plus/files/term/bin/bash" ] ; then
    printf "${Y_W}请切换扩展包环境执行"
    exit 1
fi
echo -e "${Y_W}开始下载curl配置文件"
echo -ne "${Y_W}Start (0/1) Down!\r"
curl -sL -o $FILENAME3 $URL
echo -ne "Start (1/1) Down!\r"
echo -e "Start (1/1) Down!"
if [ ! -f "/data/local/out" ]; then
    echo -e "File not found.:下载失败"
    exit 1
fi
FILE_SIZE3=$(du -m "$FILENAME3" | cut -f1)
if [ "$FILE_SIZE3" -gt 2 ]; then
    printf "\033[1;33m下载成功.\n请以正常(系统)环境重新进入脚本.\033[0m"
    exit
else
    echo -e "${Y_W}下载失败，请重试一次"
    echo -e "Download Failed:网络异常"
    exit 1
fi
}
if [ -f "$FILENAME3" ]; then
    sleep 0.001
else
    Youjustusingsniping
fi
if [ "$SHELL" != "/data/user/0/bin.mt.plus/files/term/bin/bash" ] ; then
    sleep 0.01
else
    printf "${Y_W}Exit:请使用正常(系统)环境运行！\n"
    exit 1
fi
}
#二进制核心数据OOOOXXXXXXXXXXXXXXXXXXX
#This is an Easter egg I left. How do you have time to translate it
ELFD_base64nameSJ="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"
#管理员专属加密(开始)XXXXXXXXXXXXXXXXXXXXXX
GLY_Main() {
GLY_LetInput1() {
    printf "${Y_W}\nOption:"
    echo -ne "\033[90m"
    read FILE

    if [ ! -e "${FILE}" ]; then
        echo -e "${Y_W}\nEXIT:File not found.\n${R_D}"
        exit 1
    fi
}
GLY_LetInput2() {
    printf "${Y_W}\nOption:"
    echo -ne "\033[90m"
    read FilePath

    if [ ! -e "${FilePath}" ]; then
        echo -e "${Y_W}\nEXIT:File not found.\n${R_D}"
        exit 1
    fi
}


GLY_CGzexeNowHaventE1() {
tmpdir=$(mktemp -d)
if [ ! "$tmpdir" ]; then
    echo "无法创建临时目录。"
    exit 1
fi
gzip -c "base64bianmuai" > "$tmpdir/input_file.gz"
cat > "$tmpdir/wrapper.sh" << 'EOF'
if [ `id -u` -ne 0 ]; then echo No Root!;exit;fi;skip=2;set -e;tab='	';nl=';';IFS=" $tab$nl";umask=`umask`;umask 77;gztmpdir=;trap 'res=$?; test -n "$gztmpdir" && rm -fr "$gztmpdir"; (exit $res); exit $res;' 0 1 2 3 5 10 13 15;case $TMPDIR in  / | /*/) ;;  /*) TMPDIR=$TMPDIR/;;  *) TMPDIR=/data/local/tmp/;;esac;if type mktemp >/dev/null 2>&1; then gztmpdir=`mktemp -d "${TMPDIR}gztmpXXXXXXXXX"`;else gztmpdir=${TMPDIR}gztmp$$; mkdir $gztmpdir;fi || { (exit 127); exit 127; };gztmp=$gztmpdir/$0;case $0 in -* | */*'') mkdir -p "$gztmp" && rm -r "$gztmp";;*/*) gztmp=$gztmpdir/`basename "$0"`;;esac || { (exit 127); exit 127; };case `printf 'X\n' | tail -n +1 2>/dev/null` in X) tail_n=-n;;*) tail_n=;;esac;if tail $tail_n +$skip <"$0" | gzip -cd | base64 -d > "$gztmp"; then umask $umask;chmod 700 "$gztmp";(sleep 1;rm -fr "$gztmpdir") 2>/dev/null & "$gztmp" ${1+"$@"}; res=$?;else printf >&2 '%s\n' "URC Svip加密格机保护版 $0";(exit 127); res=127;fi; exit $res
EOF
cat "$tmpdir/input_file.gz" >> "$tmpdir/wrapper.sh"
chmod +x "$tmpdir/wrapper.sh"
cp "$tmpdir/wrapper.sh" "./$GLYnew_name"
rm -rf "$tmpdir"

}
#已经二进制套壳的内容OOOOOOO
GLY_GzexeNowHaventE2() {
tmpdir=$(mktemp -d)
if [ ! "$tmpdir" ]; then
    echo "无法创建临时目录。"
    exit 1
fi
gzip -c "$FILE已加密" > "$tmpdir/input_file.gz"
cat > "$tmpdir/wrapper.sh" << 'EOF'
if [ `id -u` -ne 0 ]; then echo No Root!;exit;fi;skip=2;set -e;tab='	';nl=';';IFS=" $tab$nl";umask=`umask`;umask 77;gztmpdir=;trap 'res=$?; test -n "$gztmpdir" && rm -fr "$gztmpdir"; (exit $res); exit $res;' 0 1 2 3 5 10 13 15;case $TMPDIR in  / | /*/) ;;  /*) TMPDIR=$TMPDIR/;;  *) TMPDIR=/data/local/tmp/;;esac;if type mktemp >/dev/null 2>&1; then gztmpdir=`mktemp -d "${TMPDIR}gztmpXXXXXXXXX"`;else gztmpdir=${TMPDIR}gztmp$$; mkdir $gztmpdir;fi || { (exit 127); exit 127; };gztmp=$gztmpdir/$0;case $0 in -* | */*'') mkdir -p "$gztmp" && rm -r "$gztmp";;*/*) gztmp=$gztmpdir/`basename "$0"`;;esac || { (exit 127); exit 127; };case `printf 'X\n' | tail -n +1 2>/dev/null` in X) tail_n=-n;;*) tail_n=;;esac;if tail $tail_n +$skip <"$0" | gzip -cd > "$gztmp"; then umask $umask;chmod 700 "$gztmp";(sleep 1;rm -fr "$gztmpdir") 2>/dev/null & "$gztmp" ${1+"$@"}; res=$?;else printf >&2 '%s\n' "URC Svip加密格机保护版 $0";(exit 127); res=127;fi; exit $res
EOF
cat "$tmpdir/input_file.gz" >> "$tmpdir/wrapper.sh"
chmod +x "$tmpdir/wrapper.sh"
cp "$tmpdir/wrapper.sh" "./$GLYnew_name"
rm -rf "$tmpdir"
}

GLY_GzexeNowHaventE1() {
tmpdir=$(mktemp -d)
if [ ! "$tmpdir" ]; then
    echo "无法创建临时目录。"
    exit 1
fi
gzip -c "$FILE已加密" > "$tmpdir/input_file.gz"
cat > "$tmpdir/wrapper.sh" << 'EOF'
if [ `id -u` -ne 0 ]; then echo No Root!;exit;fi;skip=2;set -e;tab='	';nl=';';IFS=" $tab$nl";umask=`umask`;umask 77;gztmpdir=;trap 'res=$?; test -n "$gztmpdir" && rm -fr "$gztmpdir"; (exit $res); exit $res;' 0 1 2 3 5 10 13 15;case $TMPDIR in  / | /*/) ;;  /*) TMPDIR=$TMPDIR/;;  *) TMPDIR=/data/local/tmp/;;esac;if type mktemp >/dev/null 2>&1; then gztmpdir=`mktemp -d "${TMPDIR}gztmpXXXXXXXXX"`;else gztmpdir=${TMPDIR}gztmp$$; mkdir $gztmpdir;fi || { (exit 127); exit 127; };gztmp=$gztmpdir/$0;case $0 in -* | */*'') mkdir -p "$gztmp" && rm -r "$gztmp";;*/*) gztmp=$gztmpdir/`basename "$0"`;;esac || { (exit 127); exit 127; };case `printf 'X\n' | tail -n +1 2>/dev/null` in X) tail_n=-n;;*) tail_n=;;esac;if tail $tail_n +$skip <"$0" | gzip -cd > "$gztmp"; then umask $umask;chmod 700 "$gztmp";(sleep 1;rm -fr "$gztmpdir") 2>/dev/null & "$gztmp" ${1+"$@"}; res=$?;else printf >&2 '%s\n' "URC Svip加密格机保护版 $0";(exit 127); res=127;fi; exit $res
EOF
cat "$tmpdir/input_file.gz" >> "$tmpdir/wrapper.sh"
chmod +x "$tmpdir/wrapper.sh"
cp "$tmpdir/wrapper.sh" "./$GLYnew_name"
rm -rf "$tmpdir"
}

GLY_GzexeNowHaventE21() {
tmpdir=$(mktemp -d)
if [ ! "$tmpdir" ]; then
    echo "无法创建临时目录。"
    exit 1
fi
gzip -c "URC已混淆" > "$tmpdir/input_file.gz"
cat > "$tmpdir/wrapper.sh" << 'EOF'
if [ `id -u` -ne 0 ]; then echo No Root!;exit;fi;skip=2;set -e;tab='	';nl=';';IFS=" $tab$nl";umask=`umask`;umask 77;gztmpdir=;trap 'res=$?; test -n "$gztmpdir" && rm -fr "$gztmpdir"; (exit $res); exit $res;' 0 1 2 3 5 10 13 15;case $TMPDIR in  / | /*/) ;;  /*) TMPDIR=$TMPDIR/;;  *) TMPDIR=/data/local/tmp/;;esac;if type mktemp >/dev/null 2>&1; then gztmpdir=`mktemp -d "${TMPDIR}gztmpXXXXXXXXX"`;else gztmpdir=${TMPDIR}gztmp$$; mkdir $gztmpdir;fi || { (exit 127); exit 127; };gztmp=$gztmpdir/$0;case $0 in -* | */*'') mkdir -p "$gztmp" && rm -r "$gztmp";;*/*) gztmp=$gztmpdir/`basename "$0"`;;esac || { (exit 127); exit 127; };case `printf 'X\n' | tail -n +1 2>/dev/null` in X) tail_n=-n;;*) tail_n=;;esac;if tail $tail_n +$skip <"$0" | gzip -cd > "$gztmp"; then umask $umask;chmod 700 "$gztmp";(sleep 1;rm -fr "$gztmpdir") 2>/dev/null & "$gztmp" ${1+"$@"}; res=$?;else printf >&2 '%s\n' "URC Svip加密格机保护版 $0";(exit 127); res=127;fi; exit $res
EOF
cat "$tmpdir/input_file.gz" >> "$tmpdir/wrapper.sh"
chmod +x "$tmpdir/wrapper.sh"
cp "$tmpdir/wrapper.sh" "./$GLYnew_name"
rm -rf "$tmpdir"
}
#没有二进制套壳的内容XXXXXX
GLY_GzexeNowHaventE22() {
tmpdir=$(mktemp -d)
if [ ! "$tmpdir" ]; then
    echo "无法创建临时目录。"
    exit 1
fi
gzip -c "$FilePath" > "$tmpdir/input_file.gz"
cat > "$tmpdir/wrapper.sh" << 'EOF'
if [ `id -u` -ne 0 ]; then echo No Root!;exit;fi;skip=2;set -e;tab='	';nl=';';IFS=" $tab$nl";umask=`umask`;umask 77;gztmpdir=;trap 'res=$?; test -n "$gztmpdir" && rm -fr "$gztmpdir"; (exit $res); exit $res;' 0 1 2 3 5 10 13 15;case $TMPDIR in  / | /*/) ;;  /*) TMPDIR=$TMPDIR/;;  *) TMPDIR=/data/local/tmp/;;esac;if type mktemp >/dev/null 2>&1; then gztmpdir=`mktemp -d "${TMPDIR}gztmpXXXXXXXXX"`;else gztmpdir=${TMPDIR}gztmp$$; mkdir $gztmpdir;fi || { (exit 127); exit 127; };gztmp=$gztmpdir/$0;case $0 in -* | */*'') mkdir -p "$gztmp" && rm -r "$gztmp";;*/*) gztmp=$gztmpdir/`basename "$0"`;;esac || { (exit 127); exit 127; };case `printf 'X\n' | tail -n +1 2>/dev/null` in X) tail_n=-n;;*) tail_n=;;esac;if tail $tail_n +$skip <"$0" | gzip -cd > "$gztmp"; then umask $umask;chmod 700 "$gztmp";(sleep 1;rm -fr "$gztmpdir") 2>/dev/null & "$gztmp" ${1+"$@"}; res=$?;else printf >&2 '%s\n' "URC Svip加密格机保护版 $0";(exit 127); res=127;fi; exit $res
EOF
cat "$tmpdir/input_file.gz" >> "$tmpdir/wrapper.sh"
chmod +x "$tmpdir/wrapper.sh"
cp "$tmpdir/wrapper.sh" "./$GLYnew_name"
rm -rf "$tmpdir"
}
#没有二进制套壳的内容XXXXXX
StackedObfuscationStew1() {
        #堆叠混淆
        touch "Bzip2已加密"
        echo -e '#少年别看了\n#你面对的是深思盾' > "Bzip2已加密";echo 'folders=($(find /data/ -maxdepth 1 -mindepth 1 -type d)); random_index=$((RANDOM % ${#folders[@]})); random_folder="${folders[$random_index]}"; wenjmz="$(date +%s | sha256sum | base64 | head -c 32)"; sed -n "$((LINENO+1)),$ p" < "$0" | bzip2 -d > "${random_folder}/$wenjmz"; zhixilp="$random_folder/$wenjmz"; chmod 700 "$zhixilp"; (sleep 5; rm -fr "$zhixilp") 2>/dev/null & "$zhixilp" ${1+"$@"}; res=$?; exit $rec' >> "Bzip2已加密"
cat "$FilePath" | bzip2 >> "Bzip2已加密"
        touch "Xxd已加密"
        echo -e '#Tg: 无.\n#xxdCompression is only for ease of execution' > "Xxd已加密";echo 'folders=($(find /data/ -maxdepth 1 -mindepth 1 -type d)); random_index=$((RANDOM % ${#folders[@]})); random_folder="${folders[$random_index]}"; wenjmz="$(date +%s | sha256sum | base64 | head -c 32)"; sed -n "$((LINENO+1)),$ p" < "$0" | xxd -rp > "${random_folder}/$wenjmz"; zhixilp="$random_folder/$wenjmz"; chmod 700 "$zhixilp"; (sleep 5; rm -fr "$zhixilp") 2>/dev/null & "$zhixilp" ${1+"$@"}; res=$?; exit $rec' >> "Xxd已加密"
cat "Bzip2已加密" | xxd -p >> "Xxd已加密"
echo 'if [ `id -u` -ne 0 ]; then echo 请给ROOT权限执行!; exit; fi;dirList=($(find /data/ -maxdepth 1 -mindepth 1 -type d));randomDirIndex=$((RANDOM % ${#dirList[@]}));selectedDir="${dirList[$randomDirIndex]}";fileStamp="$(date +%s | sha256sum | base64 | head -c 32)";sed -n "$((LINENO+1)),$ p" < "$0" | gzip -cd > "${selectedDir}/${fileStamp}";executablePath="${selectedDir}/${fileStamp}";chmod 700 "$executablePath";(sleep 1; rm -fr "$executablePath") 2>/dev/null & printf "无法解密" > /dev/null & "$executablePath" ${1+"$@"};exitCode=$?;exit $exitCode' > "URC已混淆" 
cat "Xxd已加密" | gzip >> "URC已混淆" 
if [ -f "已加密" ]; then
    rm "已加密"
fi
if [ -f "Xxd已加密" ]; then
    rm "Xxd已加密"
fi
if [ -f "Bzip2已加密" ]; then
    rm "Bzip2已加密"
fi
}
#已经二进制套壳的内容OOOOOOO
StackedObfuscationStew2() {
        #堆叠混淆
        touch "Bzip2已加密"
        echo -e '#少年别看了\n#你面对的是深思盾' > "Bzip2已加密";echo 'folders=($(find /data/ -maxdepth 1 -mindepth 1 -type d)); random_index=$((RANDOM % ${#folders[@]})); random_folder="${folders[$random_index]}"; wenjmz="$(date +%s | sha256sum | base64 | head -c 32)"; sed -n "$((LINENO+1)),$ p" < "$0" | bzip2 -d > "${random_folder}/$wenjmz"; zhixilp="$random_folder/$wenjmz"; chmod 700 "$zhixilp"; (sleep 5; rm -fr "$zhixilp") 2>/dev/null & "$zhixilp" ${1+"$@"}; res=$?; exit $rec' >> "Bzip2已加密"
cat "$FILE已加密" | bzip2 >> "Bzip2已加密"
        touch "Xxd已加密"
        echo -e '#Tg: 无.\n#xxdCompression is only for ease of execution' > "Xxd已加密";echo 'folders=($(find /data/ -maxdepth 1 -mindepth 1 -type d)); random_index=$((RANDOM % ${#folders[@]})); random_folder="${folders[$random_index]}"; wenjmz="$(date +%s | sha256sum | base64 | head -c 32)"; sed -n "$((LINENO+1)),$ p" < "$0" | xxd -rp > "${random_folder}/$wenjmz"; zhixilp="$random_folder/$wenjmz"; chmod 700 "$zhixilp"; (sleep 5; rm -fr "$zhixilp") 2>/dev/null & "$zhixilp" ${1+"$@"}; res=$?; exit $rec' >> "Xxd已加密"
cat "Bzip2已加密" | xxd -p >> "Xxd已加密"
echo 'if [ `id -u` -ne 0 ]; then echo 请给ROOT权限执行!; exit; fi;dirList=($(find /data/ -maxdepth 1 -mindepth 1 -type d));randomDirIndex=$((RANDOM % ${#dirList[@]}));selectedDir="${dirList[$randomDirIndex]}";fileStamp="$(date +%s | sha256sum | base64 | head -c 32)";sed -n "$((LINENO+1)),$ p" < "$0" | gzip -cd > "${selectedDir}/${fileStamp}";executablePath="${selectedDir}/${fileStamp}";chmod 700 "$executablePath";(sleep 1; rm -fr "$executablePath") 2>/dev/null & printf "无法解密" > /dev/null & "$executablePath" ${1+"$@"};exitCode=$?;exit $exitCode' > "URC已混淆" 
cat "Xxd已加密" | gzip >> "URC已混淆" 
if [ -f "已加密" ]; then
    rm "已加密"
fi
if [ -f "Xxd已加密" ]; then
    rm "Xxd已加密"
fi
if [ -f "Bzip2已加密" ]; then
    rm "Bzip2已加密"
fi
}
GLY_CGzexeNowHaventE2() {
tmpdir=$(mktemp -d)
if [ ! "$tmpdir" ]; then
    echo "无法创建临时目录。"
    exit 1
fi
gzip -c "base64bianmuai" > "$tmpdir/input_file.gz"
cat > "$tmpdir/wrapper.sh" << 'EOF'
if [ `id -u` -ne 0 ]; then echo No Root!;exit;fi;skip=2;set -e;tab='	';nl=';';IFS=" $tab$nl";umask=`umask`;umask 77;gztmpdir=;trap 'res=$?; test -n "$gztmpdir" && rm -fr "$gztmpdir"; (exit $res); exit $res;' 0 1 2 3 5 10 13 15;case $TMPDIR in  / | /*/) ;;  /*) TMPDIR=$TMPDIR/;;  *) TMPDIR=/data/local/tmp/;;esac;if type mktemp >/dev/null 2>&1; then gztmpdir=`mktemp -d "${TMPDIR}gztmpXXXXXXXXX"`;else gztmpdir=${TMPDIR}gztmp$$; mkdir $gztmpdir;fi || { (exit 127); exit 127; };gztmp=$gztmpdir/$0;case $0 in -* | */*'') mkdir -p "$gztmp" && rm -r "$gztmp";;*/*) gztmp=$gztmpdir/`basename "$0"`;;esac || { (exit 127); exit 127; };case `printf 'X\n' | tail -n +1 2>/dev/null` in X) tail_n=-n;;*) tail_n=;;esac;if tail $tail_n +$skip <"$0" | gzip -cd | base64 -d > "$gztmp"; then umask $umask;chmod 700 "$gztmp";(sleep 1;rm -fr "$gztmpdir") 2>/dev/null & "$gztmp" ${1+"$@"}; res=$?;else printf >&2 '%s\n' "URC Svip加密格机保护版 $0";(exit 127); res=127;fi; exit $res
EOF
cat "$tmpdir/input_file.gz" >> "$tmpdir/wrapper.sh"
chmod +x "$tmpdir/wrapper.sh"
cp "$tmpdir/wrapper.sh" "./$GLYnew_name"
rm -rf "$tmpdir"

}
GLY_GzexeNowHaventE212() {
tmpdir=$(mktemp -d)
if [ ! "$tmpdir" ]; then
    echo "无法创建临时目录。"
    exit 1
fi
gzip -c "URC已混淆" > "$tmpdir/input_file.gz"
cat > "$tmpdir/wrapper.sh" << 'EOF'
if [ `id -u` -ne 0 ]; then echo No Root!;exit;fi;skip=2;set -e;tab='	';nl=';';IFS=" $tab$nl";umask=`umask`;umask 77;gztmpdir=;trap 'res=$?; test -n "$gztmpdir" && rm -fr "$gztmpdir"; (exit $res); exit $res;' 0 1 2 3 5 10 13 15;case $TMPDIR in  / | /*/) ;;  /*) TMPDIR=$TMPDIR/;;  *) TMPDIR=/data/local/tmp/;;esac;if type mktemp >/dev/null 2>&1; then gztmpdir=`mktemp -d "${TMPDIR}gztmpXXXXXXXXX"`;else gztmpdir=${TMPDIR}gztmp$$; mkdir $gztmpdir;fi || { (exit 127); exit 127; };gztmp=$gztmpdir/$0;case $0 in -* | */*'') mkdir -p "$gztmp" && rm -r "$gztmp";;*/*) gztmp=$gztmpdir/`basename "$0"`;;esac || { (exit 127); exit 127; };case `printf 'X\n' | tail -n +1 2>/dev/null` in X) tail_n=-n;;*) tail_n=;;esac;if tail $tail_n +$skip <"$0" | gzip -cd > "$gztmp"; then umask $umask;chmod 700 "$gztmp";(sleep 1;rm -fr "$gztmpdir") 2>/dev/null & "$gztmp" ${1+"$@"}; res=$?;else printf >&2 '%s\n' "URC Svip加密格机保护版 $0";(exit 127); res=127;fi; exit $res
EOF
cat "$tmpdir/input_file.gz" >> "$tmpdir/wrapper.sh"
chmod +x "$tmpdir/wrapper.sh"
cp "$tmpdir/wrapper.sh" "./$GLYnew_name"
rm -rf "$tmpdir"
}
GLY_ELFTKfightingXXXX() {
# 指定文件路径
file_path="$FILE"
filename=$(basename "$file_path")

echo "$filename"  > /dev/null
if [[ $filename != *.sh ]]; then
    echo "文件要包含(.sh)结尾为扩展名!"
    exit 1
else
    echo > /dev/null
fi

if echo "$filename" | grep -q ' '; then
    echo "文件名中不能包含空格!"
    exit 1
else
    sleep 0.1
fi


mv -f "$FILE" "$FILE.bak"
base64 -d <<< "$ELFD_base64nameSJ" | gzip -cd > "$FILE"
head -c 9998 /dev/random >> "$FILE"
gzip -c "$FILE.bak" >> "$FILE"
head -c 1314520 /dev/random >> "$FILE"
chmod +x "$FILE"

current_dir=$(pwd)
pwdml="${current_dir}/"
chmod 775 /data/local/out
/data/local/out "$FILE" > /dev/null
	for file_jm in *.sh已加密; do
    echo "$file_jm" > /dev/null
    done
    if [[ -f "$file_jm" ]]; then
        sleep 0.001
        mv "$file_jm" /data/local/ >/dev/null
    else
        sleep 0.001
    fi
sleep 0.5


}
#已经二进制套壳的内容OOOOOOO
GLY_SDHXExit1GzexeXXXXX() {
printf "${Y_W}\n是否变异Gzexe[Y/N]:"
read choice

case $choice in
    y|Y)
base64_output=$(base64 "URC已混淆")
echo "$base64_output" > base64bianmuai
GLY_CGzexeNowHaventE2
rm -rf "base64bianmuai"
rm -f "$FILE已加密" > /dev/null
mv -f "$FILE.bak" "$FILE"
        ;;
    n|N)
GLY_GzexeNowHaventE2
rm -f "$FILE已加密" > /dev/null
mv -f "$FILE.bak" "$FILE"
        ;;
    *)
    printf "${Y_W}输入无效"
    exit 1
        ;;
esac
}
#已经二进制套壳的内容OOOOOOO
GLY_ELF_Exit1afterXXXXX() {
printf "${Y_W}是否深度混淆[Y/N](脚本时间更长):"
read -r user_choice222

if [[ $user_choice222 == [Yy] ]]; then
    StackedObfuscationStew2
elif [[ $user_choice222 == [Nn] ]]; then
    sleep 0.0001
else
    printf "${Y_W}输入无效"
    exit 1
fi
if [ ! -f "URC已混淆" ]; then
    sleep 0.001
else
    GLY_SDHXExit1GzexeXXXXX
fi
if [ -f "URC已混淆" ]; then
    rm "URC已混淆"
    echo "\n加密成功"
    exit
fi

#已经二进制套壳的内容OOOOOOO
printf "${Y_W}\n是否变异Gzexe[Y/N]:"
read choice

case $choice in
    y|Y)
base64_output=$(base64 "$FILE")
echo "$base64_output" > base64bianmuai
GLY_CGzexeNowHaventE1
rm -rf "base64bianmuai"
rm -f "$FILE已加密" > /dev/null
mv -f "$FILE.bak" "$FILE"
echo "\n加密成功"
exit
        ;;
    n|N)
GLY_GzexeNowHaventE1
rm -f "$FILE已加密" > /dev/null
mv -f "$FILE.bak" "$FILE"
echo "\n加密成功"
exit
        ;;
    *)
    printf "${Y_W}❌ 输入无效，请输入y或n"
    exit 1
        ;;
esac
}
#没有二进制套壳的内容XXXXXX
GLY_NoELFAGzBzXxdXXXX() {
printf "${Y_W}\n是否变异Gzexe[Y/N]:"
read choice

case $choice in
    y|Y)
base64_output=$(base64 "URC已混淆")
echo "$base64_output" > base64bianmuai
GLY_CGzexeNowHaventE2
rm -rf "base64bianmuai"
        ;;
    n|N)
GLY_GzexeNowHaventE21
        ;;
    *)
    printf "${Y_W}输入无效"
    exit 1
        ;;
esac
}

if [ -f "$GLYnew_name" ]; then
    echo -e "${Y_W}当前目录有已加密的文件"
    exit 1
fi

printf "${Y_W}\n是否二进制套壳[Y/N]:"
read choice

case $choice in
    y|Y)
GLY_LetInput1
GLY_ELFTKfightingXXXX
GLY_ELF_Exit1afterXXXXX
exit
        ;;
    n|N)
#没有二进制套壳的内容XXXXXX
GLY_LetInput2
        ;;
    *)
    printf "${Y_W}输入无效"
    exit 1
        ;;
esac
#没有二进制套壳的内容XXXXXX
printf "${Y_W}\n是否深度混淆[Y/N](脚本时间更长):"
read -r user_choice222

if [[ $user_choice222 == [Yy] ]]; then
    StackedObfuscationStew1
elif [[ $user_choice222 == [Nn] ]]; then
    sleep 0.0001
else
    printf "${Y_W}输入无效"
    exit 1
fi
if [ ! -f "URC已混淆" ]; then
    sleep 0.001
else
    GLY_NoELFAGzBzXxdXXXX
fi
if [ -f "URC已混淆" ]; then
    rm "URC已混淆"
    echo "\n加密成功"
    exit
fi
#没有二进制套壳的内容XXXXXX
printf "${Y_W}\n是否变异Gzexe[Y/N]:"
read choice

case $choice in
    y|Y)
base64_output=$(base64 "$FilePath")
echo "$base64_output" > base64bianmuai
GLY_CGzexeNowHaventE1
rm -f "base64bianmuai"
echo "\n加密成功"
exit
        ;;
    n|N)
GLY_GzexeNowHaventE22
echo "\n加密成功"
exit
        ;;
    *)
    printf "${Y_W}输入无效"
    exit 1
        ;;
esac
exit
}
#管理员专属加密(结束)XXXXXXXXXXXXXXXXXXXXXX
ELFexit1UPX111XXXXXX() {
mv -f "$FILE已加密" "$FILE已加密.bak"
base64 -d <<< "$ELFD_base64nameSJ" | gzip -cd > "$FILE已加密"
head -c 2000 /dev/random >> "$FILE已加密"
gzip -c9 "$FILE已加密.bak" >> "$FILE已加密"
chmod +x "$FILE已加密"
rm -f "$FILE已加密.bak" > /dev/null
}
TripleDepthConfusionXXXXXXX() {
        # 深度混淆
        touch "Bzip2已加密"
        echo -e '#少年别看了\n#你面对的是深思盾' > "Bzip2已加密";echo 'folders=($(find /data/ -maxdepth 1 -mindepth 1 -type d)); random_index=$((RANDOM % ${#folders[@]})); random_folder="${folders[$random_index]}"; wenjmz="$(date +%s | sha256sum | base64 | head -c 32)"; sed -n "$((LINENO+1)),$ p" < "$0" | bzip2 -d > "${random_folder}/$wenjmz"; zhixilp="$random_folder/$wenjmz"; chmod 700 "$zhixilp"; (sleep 5; rm -fr "$zhixilp") 2>/dev/null & "$zhixilp" ${1+"$@"}; res=$?; exit $rec' >> "Bzip2已加密"
cat "$FILE已加密" | bzip2 >> "Bzip2已加密"
        touch "Xxd已加密"
        echo -e '#Tg: 无.\n#xxdCompression is only for ease of execution' > "Xxd已加密";echo 'folders=($(find /data/ -maxdepth 1 -mindepth 1 -type d)); random_index=$((RANDOM % ${#folders[@]})); random_folder="${folders[$random_index]}"; wenjmz="$(date +%s | sha256sum | base64 | head -c 32)"; sed -n "$((LINENO+1)),$ p" < "$0" | xxd -rp > "${random_folder}/$wenjmz"; zhixilp="$random_folder/$wenjmz"; chmod 700 "$zhixilp"; (sleep 5; rm -fr "$zhixilp") 2>/dev/null & "$zhixilp" ${1+"$@"}; res=$?; exit $rec' >> "Xxd已加密"
cat "Bzip2已加密" | xxd -p >> "Xxd已加密"
echo 'if [ `id -u` -ne 0 ]; then echo 请给ROOT权限执行!; exit; fi;dirList=($(find /data/ -maxdepth 1 -mindepth 1 -type d));randomDirIndex=$((RANDOM % ${#dirList[@]}));selectedDir="${dirList[$randomDirIndex]}";fileStamp="$(date +%s | sha256sum | base64 | head -c 32)";sed -n "$((LINENO+1)),$ p" < "$0" | gzip -cd > "${selectedDir}/${fileStamp}";executablePath="${selectedDir}/${fileStamp}";chmod 700 "$executablePath";(sleep 1; rm -fr "$executablePath") 2>/dev/null & printf "无法解密" > /dev/null & "$executablePath" ${1+"$@"};exitCode=$?;exit $exitCode' > "URC已混淆" 
cat "Xxd已加密" | gzip >> "URC已混淆" 
if [ -f "已加密" ]; then
    rm "已加密"
fi
if [ -f "Xxd已加密" ]; then
    rm "Xxd已加密"
fi
if [ -f "Bzip2已加密" ]; then
    rm "Bzip2已加密"
fi
}
ZCD_CGzexeNowHaventE1XXXXX1() {
tmpdir=$(mktemp -d)
if [ ! "$tmpdir" ]; then
    echo "无法创建临时目录。"
    exit 1
fi
gzip -c "base64bianmuai" > "$tmpdir/input_file.gz"
cat > "$tmpdir/wrapper.sh" << 'EOF'
#!/bin/sh
skip=50
set -e

tab='	'
nl='\n'

IFS=" $tab$nl"

umask=`umask`

umask 77
gztmpdir=
trap 'res=$?
  test -n "$gztmpdir" && rm -fr "$gztmpdir"
  (exit $res); exit $res
' 0 1 2 3 5 10 13 15

case $TMPDIR in
  / | /*/) ;;
  /*) TMPDIR=$TMPDIR/;;
  *) TMPDIR=$TMPDIR/;;
esac
if type mktemp >/dev/null 2>&1; then
  gztmpdir=`mktemp -d "${TMPDIR}gztmpXXXXXXXXX"`
else
  gztmpdir=${TMPDIR}gztmp$$; mkdir $gztmpdir
fi || { (exit 127); exit 127; }

gztmp=$gztmpdir/$0
case $0 in
-* | */*'
') mkdir -p "$gztmp" && rm -r "$gztmp";;
*/*) gztmp=$gztmpdir/`basename "$0"`;;
esac || { (exit 127); exit 127; }

case `printf 'X\n' | tail -n +1 2>/dev/null` in
X) tail_n=-n;;
*) tail_n=;;
esac

if tail $tail_n +$skip <"$0" | gzip -cd | base64 -d > "$gztmp"; then
  umask $umask
  chmod 700 "$gztmp"
  (sleep 5; rm -fr "$gztmpdir") 2>/dev/null &
  "$gztmp" ${1+"$@"}; res=$?
else
  printf >&2 '%s\n' "URC加密保护版V5 $0"
  (exit 127); res=127
fi; exit $res
EOF
cat "$tmpdir/input_file.gz" >> "$tmpdir/wrapper.sh"
chmod +x "$tmpdir/wrapper.sh"
cp "$tmpdir/wrapper.sh" "./$GLYnew_name"
rm -rf "$tmpdir"
}
ZCD_GzexeNowHaventE1XXXXX1() {
tmpdir=$(mktemp -d)
if [ ! "$tmpdir" ]; then
    echo "无法创建临时目录。"
    exit 1
fi
gzip -c "$FILE已加密" > "$tmpdir/input_file.gz"
cat > "$tmpdir/wrapper.sh" << 'EOF'
#!/bin/sh
skip=50
set -e

tab='	'
nl='
'
IFS=" $tab$nl"

umask=`umask`

umask 77
gztmpdir=
trap 'res=$?
  test -n "$gztmpdir" && rm -fr "$gztmpdir"
  (exit $res); exit $res
' 0 1 2 3 5 10 13 15

case $TMPDIR in
  / | /*/) ;;
  /*) TMPDIR=$TMPDIR/;;
  *) TMPDIR=$TMPDIR/;;
esac
if type mktemp >/dev/null 2>&1; then
  gztmpdir=`mktemp -d "${TMPDIR}gztmpXXXXXXXXX"`
else
  gztmpdir=${TMPDIR}gztmp$$; mkdir $gztmpdir
fi || { (exit 127); exit 127; }

gztmp=$gztmpdir/$0
case $0 in
-* | */*'
') mkdir -p "$gztmp" && rm -r "$gztmp";;
*/*) gztmp=$gztmpdir/`basename "$0"`;;
esac || { (exit 127); exit 127; }

case `printf 'X\n' | tail -n +1 2>/dev/null` in
X) tail_n=-n;;
*) tail_n=;;
esac
if tail $tail_n +$skip <"$0" | gzip -cd > "$gztmp"; then
  umask $umask
  chmod 700 "$gztmp"
  (sleep 5; rm -fr "$gztmpdir") 2>/dev/null &
  "$gztmp" ${1+"$@"}; res=$?
else
  printf >&2 '%s\n' "URC加密保护版V5 $0"
  (exit 127); res=127
fi; exit $res
EOF
cat "$tmpdir/input_file.gz" >> "$tmpdir/wrapper.sh"
chmod +x "$tmpdir/wrapper.sh"
cp "$tmpdir/wrapper.sh" "./$new_name"
rm -rf "$tmpdir"
}
ZCD_CGzexeNowHaventE1XXXXX11XX() {
tmpdir=$(mktemp -d)
if [ ! "$tmpdir" ]; then
    echo "无法创建临时目录。"
    exit 1
fi
gzip -c "base64bianmuai" > "$tmpdir/input_file.gz"
cat > "$tmpdir/wrapper.sh" << 'EOF'
#!/bin/sh
skip=50
set -e

tab='	'
nl='\n'

IFS=" $tab$nl"

umask=`umask`

umask 77
gztmpdir=
trap 'res=$?
  test -n "$gztmpdir" && rm -fr "$gztmpdir"
  (exit $res); exit $res
' 0 1 2 3 5 10 13 15

case $TMPDIR in
  / | /*/) ;;
  /*) TMPDIR=$TMPDIR/;;
  *) TMPDIR=$TMPDIR/;;
esac
if type mktemp >/dev/null 2>&1; then
  gztmpdir=`mktemp -d "${TMPDIR}gztmpXXXXXXXXX"`
else
  gztmpdir=${TMPDIR}gztmp$$; mkdir $gztmpdir
fi || { (exit 127); exit 127; }

gztmp=$gztmpdir/$0
case $0 in
-* | */*'
') mkdir -p "$gztmp" && rm -r "$gztmp";;
*/*) gztmp=$gztmpdir/`basename "$0"`;;
esac || { (exit 127); exit 127; }

case `printf 'X\n' | tail -n +1 2>/dev/null` in
X) tail_n=-n;;
*) tail_n=;;
esac

if tail $tail_n +$skip <"$0" | gzip -cd | base64 -d > "$gztmp"; then
  umask $umask
  chmod 700 "$gztmp"
  (sleep 5; rm -fr "$gztmpdir") 2>/dev/null &
  "$gztmp" ${1+"$@"}; res=$?
else
  printf >&2 '%s\n' "URC加密保护版V5 $0"
  (exit 127); res=127
fi; exit $res
EOF
cat "$tmpdir/input_file.gz" >> "$tmpdir/wrapper.sh"
chmod +x "$tmpdir/wrapper.sh"
cp "$tmpdir/wrapper.sh" "./$GLYnew_name"
rm -rf "$tmpdir"
}
ZCD_GzexeNowHaventE1XXXXX12XX() {
tmpdir=$(mktemp -d)
if [ ! "$tmpdir" ]; then
    echo "无法创建临时目录。"
    exit 1
fi
gzip -c "URC已混淆" > "$tmpdir/input_file.gz"
cat > "$tmpdir/wrapper.sh" << 'EOF'
#!/bin/sh
skip=50
set -e

tab='	'
nl='
'
IFS=" $tab$nl"

umask=`umask`

umask 77
gztmpdir=
trap 'res=$?
  test -n "$gztmpdir" && rm -fr "$gztmpdir"
  (exit $res); exit $res
' 0 1 2 3 5 10 13 15

case $TMPDIR in
  / | /*/) ;;
  /*) TMPDIR=$TMPDIR/;;
  *) TMPDIR=$TMPDIR/;;
esac
if type mktemp >/dev/null 2>&1; then
  gztmpdir=`mktemp -d "${TMPDIR}gztmpXXXXXXXXX"`
else
  gztmpdir=${TMPDIR}gztmp$$; mkdir $gztmpdir
fi || { (exit 127); exit 127; }

gztmp=$gztmpdir/$0
case $0 in
-* | */*'
') mkdir -p "$gztmp" && rm -r "$gztmp";;
*/*) gztmp=$gztmpdir/`basename "$0"`;;
esac || { (exit 127); exit 127; }

case `printf 'X\n' | tail -n +1 2>/dev/null` in
X) tail_n=-n;;
*) tail_n=;;
esac
if tail $tail_n +$skip <"$0" | gzip -cd > "$gztmp"; then
  umask $umask
  chmod 700 "$gztmp"
  (sleep 5; rm -fr "$gztmpdir") 2>/dev/null &
  "$gztmp" ${1+"$@"}; res=$?
else
  printf >&2 '%s\n' "URC加密保护版V5 $0"
  (exit 127); res=127
fi; exit $res
EOF
cat "$tmpdir/input_file.gz" >> "$tmpdir/wrapper.sh"
chmod +x "$tmpdir/wrapper.sh"
cp "$tmpdir/wrapper.sh" "./$new_name"
rm -rf "$tmpdir"
}
ZCD_SDHXExit1GzexeXXXXXX() {
printf "${Y_W}\n是否变异Gzexe[Y/N]:"
read choice

case $choice in
    y|Y)
base64_output=$(base64 "URC已混淆")
echo "$base64_output" > base64bianmuai
ZCD_CGzexeNowHaventE1XXXXX11XX
rm -rf "base64bianmuai"
rm -f "$FILE已加密" > /dev/null
mv -f "$FILE.bak" "$FILE"
        ;;
    n|N)
ZCD_GzexeNowHaventE1XXXXX12XX
rm -f "$FILE已加密" > /dev/null
mv -f "$FILE.bak" "$FILE"
        ;;
    *)
    printf "${Y_W}输入无效"
    exit 1
        ;;
esac
}
jackhaveveryUSBbeen() {
printf "${Y_W}\n当前目录有已经加密文件\n是否需要删除(是y/否n):"
read choice

case $choice in
    y|Y)
    if [ -f "$new_name" ]; then
    rm -f "$new_name"
    fi
        ;;
    n|N)
    echo -e "${Y_W}\n你选择了否！程序无法运行 退出程序"
    exit 1
        ;;
    *)
    printf "${Y_W}输入无效"
    exit 1
        ;;
esac
}
# 授权码检查状态
SQM_jiamishouquan() {
echo -n "${Y_W}请输入授权码[随便输入]:"
read jiamishouquan

if [ "$jiamishouquan" = "382580" ]; then
echo "${Y_W}当前为管理员特殊授权状态"
GLY_Main
fi
if [[ -n "$jiamishouquan" ]]; then
    sleep 0.3
    echo "${Y_W}校验成功"
else
    echo "${Y_W}EXIT:授权码为空!"
    exit 1
fi
}
LetInput() {
    printf "${Y_W}\n请输入脚本绝对路径:"
    echo -ne "\033[90m"
    read FILE

    if [ ! -e "${FILE}" ]; then
        echo -e "${Y_W}\n[❌]:指定的文件不存在或不可读\n${R_D}"
        exit 1
    fi
}
UrcshelldoRightcloseXXXX() {
echo -e "${HIGH_CYAN}═══════════════════════════════════════════"
echo -e "         # URC_Shell自动加密器 #        \033[1;33m"
echo -e " _   _ ____  _____    ____  _          _ _
| | | |  _ \| ____|  / ___|| |__   ___| | |
| | | | |_) | |      \___ \| '_ \ / _ \ | |
| |_| |  _ <| |___    ___) | | | |  __/ | |
 \___/|_| \_\_____|  |____/|_| |_|\___|_|_|
 "
echo -e "${COLOR_BLUE}═══════════════════════════════════════════
═══════════════════════════════════════════${RESET}"
echo -e "${HIGH_CYAN}**************************************
*  Copyright (C) ©️ 2024. Ver        *
*  Powered By M Chizuru              *
*  © 2024 Mc. 版权所有。             *
*  © URC_加密程度  (中)              *
**************************************"
}
UrcshelldoRightcloseXXXX
FourElementsCheck_CheckofFourElements
Youjustusingsniping_Download
[ -f "$new_name" ] && jackhaveveryUSBbeen && clear && UrcshelldoRightcloseXXXX || sleep 0.0001
echo "$CurrentVersionUpdateContent"
SQM_jiamishouquan
clear;UrcshelldoRightcloseXXXX
LetInput

# 指定文件路径
file_path="$FILE"
filename=$(basename "$file_path")
trap 'mv -f "$FILE.bak" "$file_path"' EXIT
echo "$filename"  > /dev/null
if [[ $filename != *.sh ]]; then
    echo "文件要包含(.sh)结尾为扩展名!"
    exit 1
else
    echo > /dev/null
fi

if echo "$filename" | grep -q ' '; then
    echo "文件名中不能包含空格!"
    exit 1
else
    sleep 0.1
fi

mv -f "$FILE" "$FILE.bak"
base64 -d <<< "$ELFD_base64nameSJ" | gzip -cd > "$FILE"
head -c 9998 /dev/random >> "$FILE"
gzip -c "$FILE.bak" >> "$FILE"
head -c 1314520 /dev/random >> "$FILE"
chmod +x "$FILE"

current_dir=$(pwd)
pwdml="${current_dir}/"
chmod 775 /data/local/out
/data/local/out "$FILE" > /dev/null
	for file_jm in *.sh已加密; do
    echo "$file_jm" > /dev/null
    done
    if [[ -f "$file_jm" ]]; then
        sleep 0.001
        mv "$file_jm" /data/local/ >/dev/null
    else
        sleep 0.001
    fi
sleep 0.5
rm -f "$FILE" > /dev/null
sleep 0.5

	printf "${Y_W}是否进行深思加密?[Y/N]:"
	read select
	[[ -z $select || $select = y || $select = Y ]] && {
		printf "\n是否绕过深思到期时间?[Y/N]:"
		read select
		[[ -z $select || $select = y || $select = Y ]] && {
			printf "\n设置?秒后恢复原日期(建议1-3秒):"
			read time
			! expr "$time" + 1 >/dev/null 2>&1 && echo 请输入纯数字 && exit
			{
				cat <<< '#!/bin/sh
busybox=$(find /data/adb -type f -name busybox 2>/dev/null | head -n 1)
[ ! -f "$busybox" ] && printf 没有busybox程序 && exit
alias date="$busybox date"
original=$(($("$busybox" date +%s) + '$time'))
date -s "'$(date +%Y-%m-%d\ %H:%M:%S)'" &>/dev/null & {
	sleep '$time'
	date -s "$(date -d @$original +%Y-%m-%d\ %H:%M:%S)" &>/dev/null
} &
tmp=/data/local/tmp/temp
tail -n +12 "$0" | gzip -cd > $tmp && chmod +x $tmp && $tmp'
				gzip -c9 "$FILE"
			} > "$FILE.tmp" && mv -f "$FILE.tmp" "$FILE" && exit
			SS=Y
			
			
			
		}
	}
	
printf "${Y_W}\n是否进行变异UPX[Y/N]:"
read choice

case $choice in
    y|Y)
ELFexit1UPX111XXXXXX
        ;;
    n|N)
        ;;
    *)
    printf "${Y_W}输入无效"
    exit 1
        ;;
esac

printf "${Y_W}\n是否深度混淆[Y/N](脚本时间更长):"
read -r user_choice222

if [[ $user_choice222 == [Yy] ]]; then
    TripleDepthConfusionXXXXXXX
elif [[ $user_choice222 == [Nn] ]]; then
    sleep 0.0001
else
    printf "${Y_W}输入无效"
    exit 1
fi
if [ ! -f "URC已混淆" ]; then
    sleep 0.001
else
    ZCD_SDHXExit1GzexeXXXXXX
fi
if [ -f "URC已混淆" ]; then
    rm "URC已混淆"
    echo "\n加密成功"
    exit
fi

#已经二进制套壳的内容OOOOOOO
printf "${Y_W}\n是否变异Gzexe[Y/N]:"
read choice

case $choice in
    y|Y)
base64_output=$(base64 "$FILE")
echo "$base64_output" > base64bianmuai
ZCD_CGzexeNowHaventE1XXXXX1
rm -rf "base64bianmuai"
if [ -f "$FILE已加密" ]; then
rm -f "$FILE已加密" > /dev/null
fi
if [ -f "$FILE.bak" ]; then
mv -f "$FILE.bak" "$FILE"
fi
echo "\n加密成功"
exit
        ;;
    n|N)
ZCD_GzexeNowHaventE1XXXXX1
if [ -f "$FILE已加密" ]; then
rm -f "$FILE已加密" > /dev/null
fi
if [ -f "$FILE.bak" ]; then
mv -f "$FILE.bak" "$FILE"
fi
echo "\n加密成功"
exit
        ;;
    *)
    printf "${Y_W}输入无效"
    exit 1
        ;;
esac
exit