You are on page 1of 2

declare -r dir=$( dirname "$0" )

function hex() {
echo ''$1'' | perl -0777pe 's|([0-9a-zA-Z]{2}+(?![^\(]*\)))|\\x${1}|gs'
}

function replaceAll() {
sudo perl -0777pi -e 'BEGIN{$/=\1e8} s|'$2'|'$3'|gs' "$1"
return
}

function replace() {
declare -r dom=$( hex $2 )
declare -r sub=$( hex $3 )
sudo perl -0777pi -e 'BEGIN{$/=\1e8} s|'$dom'|'$sub'|gs' "$1"
return
}

function prep() {
sudo xattr -cr "$1"
sudo xattr -r -d com.apple.quarantine "$1"
sudo codesign --force --deep --sign - "$1"
}

function patch() {
if [[ -f "/Applications/Topaz Video AI.app/Contents/MacOS/login" ]];
then
sudo mv "/Applications/Topaz Video AI.app/Contents/MacOS/login"
"/Applications/Topaz Video AI.app/Contents/MacOS/login.bak"
fi
replace "/Applications/Topaz Video
AI.app/Contents/Frameworks/libvideoai.1.0.20.dylib"
'554889E54157415641554154534883EC384889F04989FF'
'B800000000C3415641554154534883EC384889F04989FF' # x86_64
replace "/Applications/Topaz Video
AI.app/Contents/Frameworks/libvideoai.1.0.20.dylib"
'554889E54157415641554154534881ECE80000004889D3'
'B800000000C3415641554154534881ECE80000004889D3' # x86_64
replace "/Applications/Topaz Video
AI.app/Contents/Frameworks/libvideoai.1.0.20.dylib"
'39290294FF4302D1FC6F03A9' '3929029400008052C0035FD6' #
arm64
replace "/Applications/Topaz Video
AI.app/Contents/Frameworks/libvideoai.1.0.20.dylib"
'D4E8FF17FF8304D1F85F0EA9' 'D4E8FF1700008052C0035FD6' #
arm64
replace "/Applications/Topaz Video AI.app/Contents/MacOS/Topaz
Video AI"
'766572746963616C50616464696E673A20340A20202020202020202
0202020'
'766572746963616C50616464696E673A202D3130340A20202020202
0202020' # remove trial dialog
replaceAll "/Applications/Topaz Video
AI.app/Contents/MacOS/TUtils/libtutils.dylib" 'api.topaz-labs.net'
'lololololololololo'
replaceAll "/Applications/Topaz Video
AI.app/Contents/MacOS/TUtils/libtutils.dylib" 'et.topazlabs.com'
'lolololololololo'
}

patch
prep "/Applications/Topaz Video AI.app"
echo "Patching complete"

You might also like