JQ cant parse 3rd argument properly. Probably an easy fix, but...
jq ".assets[]|select(.name|endswith(\".AppImage\"))${3}.browser_download_url" | \
github_download "xemu-project/xemu" "xemu-emu.AppImage" '|select(.name|contains("dbg")|not)'
Personally instead of double selection, I'd simplify it and just have app specific selections for every app (until multi arch support or something):
jq ".assets[]|select(.name|endswith(\"${3}\")).browser_download_url" | \
github_download "xemu-project/xemu" "xemu-emu.AppImage" "x86_64.AppImage"
github_download "pkgforge-dev/Dolphin-emu-AppImage" "dolphin-emu.AppImage" "anylinux.dwarfs-x86_64.AppImage"