我有一些代码,我想要解码,但没有太多运气猜测代码页是什么,如果有任何使用。任何帮助将不胜感激。
以下是代码:
exec("import re;import base64");exec((lambda p,y:(lambda o,b,f:re.sub(o,b,f))(r"([0-9a-f]+)",lambda m:p(m,y),base64.b64decode("OTIgMjEsOTQsMTQsYywxMTcsMTEsMTA2LDNhLDJmLDRmLDhlCmVmIGUyLjEzZC5iZCA5MiBhMAplZiBjOSA5MiA3MwoKM2UgICAgICAgID0gJzEwNC44NC4xMTUnCjE5ICAgICAgID0gOTQuYTAoZTk9M2UpCmRkICAgICAgICAgICA9IGEwKDNlLCAyZi4xYikKYzcgICAgICAgICAgPSAyMS42NygxMDYuZTguZTYoJ2EzOi8vZWMvYzEvJyArIDNlICwgJ2M3LjEwOCcpKQo5OCAgICAgICAgICAgID0gMjEuNjcoMTA2LmU4LmU2KCdhMzovL2VjL2MxLycgKyAzZSwgJzk4LmUwJykpCmFhICAgICAgICAgPSAnZjQ6Ly85MS43Yi4xMzgvYmIvNzAuYjknCjc0ICAgICAgICA9IDE5LjJjKCdjZicpCjM4ICAgICAgID0gMTkuMmMoJ2MwJykKNjMgICAgICAgPSBkZC5mZC4xNDYoJzYzJywgJycpCmFiICAgICAgICAgPSAxOS4yYygnYzUnKQpiYyA9JzcyOi8vOTEuODEuNGUvMTMvMTNhLzEwNT8xNTk9JwpiYSA9JyZkMD0xNTMmZjE9YWUmMTU1PTEyMSYxMGY9NDEmNjA9ODQmN2Y9NTAnCmYwID0gJzcyOi8vOTEuODEuNGUvMTMvMTNhL2IyP2YxPWFlJmNhPScKZGUgPSAnJjdmPTUwJjEwZj00MCcKCjNmIDcwKCk6CgkxNGE9NTIoYWEpCQoJMTc9M2EuMjUoJ2YzPSIoLis/KSIuKz80OD0iKC4rPykiLis/MTAxPSIoLis/KSInLDNhLjVhKS4yNCgxNGEpCgk0NCBmMyw0OCw2MyAyMyAxNzoKCQkxNiBjMiAnYmUnIDIzIGYzOgoJCQkyMChmMyw0OCwxLDYzLGM3KQoJCTE2ICdiZScgMjMgZjM6CgkJCTE2IDc0ID09ICc5ZSc6CgkJCQkxNiAzOCA9PSAnJzoKCQkJCSAgICA3OCA9IDE0LmJmKCkKCQkJCSAgICBiNCA9IDc4LmQ4KCdkNyBhNScsICcxNDggMTM5IDEyMiAxMTEgMTJmIGNmIDY0JywnJywnYjggMTE4IGEgYzAgMTExIGZmIGRhIDExMicsJ2I1JywnMTI5IDE0YycpCgkJCQkgICAgMTYgYjQgPT0gMToKCQkJCQk1NiA9IDIxLjlmKCcnLCAnMTEzIDk5JykKCQkJCQk1Ni5hZCgpCgkJCQkJMTYgKDU2LjdhKCkpOgoJCQkJCSAgICA4YSA9IDU2LmE3KCkKCQkJCQkgICAgMTkuZDkoJ2MwJyw4YSkgICAgICAKCQkJCQkyMChmMyw0OCwxLDYzLGM3KQoJCQkxNiA3NCA9PSAnOWUnOgoJCQkJMTYgMzggPD4gJyc6CgkJCQkJMjAoZjMsNDgsMSw2MyxjNykKCTNjKCcxNTIgMTM3IGY5IDEzNicsJzQ4JywyLCdmNDovLzkxLjdiLjEzOC9iYi8xMDIvZmUuMTA4JyxjNykKCTIxLmYoJzE1NC4yYSgxNDEpJykKICAgICAgCjNmIDc3KDQ4KToKCTE2ICc3MCcgMjMgNDg6CgkJOWMoNDgpCgkxNiAnYmUnIDIzIDQ4OgoJCTE2IDM4IDw+ICcnOgoJCQk3OCA9IDE0LmJmKCkKCQkJYjQgPSA3OC5kOCgnZDcgYTUnLCAnYjggMTFmIDEwYSBjMCAxNGIgMTE4JywnMTExIGYyJywnJywnYjUnLCcxMmMgMTRmIDEwYSAxMjMnKQoJCQkxNiBiNCA9PSAxOgoJCQkgICA1ODogICAgIAoJCQkgICAgICA1NiA9IDIxLjlmKCcnLCAnMTEzIDk5JykKCQkJICAgICAgNTYuYWQoKQoJCQkgICAgICAxNiAoNTYuN2EoKSk6CgkJCQkgICAgOGEgPSA1Ni5hNygpCgkJCSAgICAgIDE2IDhhID09IDM4OgoJCQkJMjYgPSA2Mig0OCkKCQkJCTQ0IDY4IDIzIDI2OgoJCQkJICAgICAgIDNjKDY4WyJmMyJdLDY4WyI0OCJdLDMsNjMsYzcpCgkJCSAgIDFlOjQ1CgkxNiAnYjYnIDIzIDQ4OgoJCTI2ID0gNjIoNDgpCgkJMTBlID0gNjUoMjYpCgkJNDQgNjggMjMgMjY6CgkJCTdjKDY4WyJmMyJdLDY4WyI0OCJdLDMsNjMsMTBlLDE4PTZmKQoJCWE5KCdiNicsICcxMjcnKQoJCTE2ICc3MCcgMjMgNDg6CgkJCTIxLmYoJzE1NC4yYSg1MCknKQoJNTcgJ2JlJyBjMiAyMyA0ODoKCQkxMjggPSA0OAoJCTI2ID0gNjIoNDgpCgkJNDQgNjggMjMgMjY6CgkJCTE2ICcxMy40ZS83ZD8zMz0nIDIzIDY4WyI0OCJdOgoJCQkJMjAoNjhbImYzIl0sNjhbIjQ4Il0sMyw2MyxjNykKCQkJNTcgJzEzLjRlLzU0PzVmPScgMjMgNjhbIjQ4Il06CgkJCQkyMCg2OFsiZjMiXSw2OFsiNDgiXSwzLDYzLGM3KQoJCQk1NToKCQkJCTE2ICdiOScgMjMgNjhbIjQ4Il06CgkJCQkJMjAoNjhbImYzIl0sNjhbIjQ4Il0sMyw2MyxjNykKCQkJCTU1OgoJCQkJCTNjKDY4WyJmMyJdLDY4WyI0OCJdLDMsNjMsYzcpCgkJMjEuZignMTU0LjJhKDUwKScpCgkKM2YgOWMoNDgpOgoJMTRhPTUyKDQ4KQkKCTE3PTNhLjI1KCdmMz0iKC4rPykiLis/NDg9IiguKz8pIi4rPzEwMT0iKC4rPykiJywzYS41YSkuMjQoMTRhKQoJNDQgZjMsNDgsNjMgMjMgMTc6CgkJMTYgJzEzLjRlLzU0PzVmPScgMjMgNDg6CgkJCTIwKGYzLDQ4LDMsNjMsYzcpCgkJNTcgJzEzLjRlLzdkPzMzPScgMjMgNDg6CgkJCTIwKGYzLDQ4LDMsNjMsYzcpCgkJNTU6CgkJCTIwKGYzLDQ4LDEsNjMsYzcpCgkyMS5mKCcxNTQuMmEoNTApJykKCjNmIDYyKDQ4KToKCTE0YT01Mig0OCkJCgk2MT0zYS4yNSgnXiMuKz86LT9bMC05XSooLio/KSwoLio/KVxmYyguKj8pJCcsM2EuMTU4KzNhLjE0ZCszYS5mYiszYS4xNTEpLjI0KDE0YSkKCTEwYiA9IFtdCgk0NCAxNWEsIGYzLCA0OCAyMyA2MToKCQkzNiA9IHsiMTVhIjogMTVhLCAiZjMiOiBmMywgIjQ4IjogNDh9CgkJMTBiLjhmKDM2KQoJNWYgPSBbXQoJNDQgNjggMjMgMTBiOgoJCTM2ID0geyJmMyI6IDY4WyJmMyJdLCAiNDgiOiA2OFsiNDgiXX0KCQk2MT0zYS4yNSgnICguKz8pPSIoLis/KSInLDNhLjE1OCszYS4xNGQrM2EuZmIrM2EuMTUxKS4yNCg2OFsiMTVhIl0pCgkJNDQgZDEsIGQ2IDIzIDYxOgoJCQkzNltkMS5jYygpLjExZSgpLjQoJy0nLCAnMTVjJyldID0gZDYuY2MoKQoJCTVmLjhmKDM2KQoJMWYgNWYKCSAgICAgCjNmIDk3KDQ4LGYzKToKCSAgICAyOSA0OAoJICAgIDE2ICdiOScgMjMgNDg6CgkJICAgIDI5ICcxMjQgYjknCgkJICAgIDc3KDQ4KQoJICAgIDU1OgoJCSAgICAxNiAnMTMuNGUvN2Q/MzM9JyAyMyA0ODoKCQkJMjkgJ2FjIDEwNycKCQkJM2QgPSA0OC44MCgnMzM9JylbMV0KCQkJODIgPSBiYyArIDNkICsgYmEKCQkJMzcgPSAxMS40YSg4MikKCQkJMzcuMmUoJzg5LTZjJywgJzRjLzUuMCAoMTU3OyBmYjsgMTU3IGNlIDUuMTsgZGMtY2I7IGQ1OjEuOS4wLjMpIDZkLzJkIDRiLzMuMC4zJykKCQkJNyA9IDExLjQ5KDM3KQoJCQkxNGE9Ny44NSgpCgkJCTcuNmIoKQoJCQkxNGEgPSAxNGEuNCgnXDE0NycsJycpLjQoJ1xmYycsJycpLjQoJyAgJywnJykKCQkJMTc9M2EuMjUoJyJhMiI6ICIoLis/KSIuKz8iODciOiAiKC4rPykiJywzYS41YSkuMjQoMTRhKQoJCQkyOSAxNwoJCQk0NCA5ZCxmMyAyMyAxNzoKCQkJCTQ4ID0gJzcyOi8vOTEuMTMuNGUvZGI/MTRlPScrOWQKCQkJCTNjKGYzLDQ4LDMsNjMsYzcpCgkJICAgIDU3ICcxMy40ZS81ND81Zj0nIDIzIDQ4OgoJCQkyOSAnYWMgZjYnCgkJCTNkID0gNDguODAoJzU0PzVmPScpWzFdCgkJCTgyID0gZjAgKyAzZCArIGRlCgkJCTM3ID0gMTEuNGEoODIpCgkJCTM3LjJlKCc4OS02YycsICc0Yy81LjAgKDE1NzsgZmI7IDE1NyBjZSA1LjE7IGRjLWNiOyBkNToxLjkuMC4zKSA2ZC8yZCA0Yi8zLjAuMycpCgkJCTcgPSAxMS40OSgzNykKCQkJMTRhPTcuODUoKQoJCQk3LjZiKCkKCQkJMTRhID0gMTRhLjQoJ1wxNDcnLCcnKS40KCdcZmMnLCcnKS40KCcgICcsJycpCgkJCTE3PTNhLjI1KCciODciOiAiKC4rPykiLis/ImEyIjogIiguKz8pIicsM2EuNWEpLjI0KDE0YSkKCQkJNDQgZjMsOWQgMjMgMTc6CgkJCQk0OCA9ICc3MjovLzkxLjEzLjRlL2RiPzE0ZT0nKzlkCgkJCQkzYyhmMyw0OCwzLDYzLGM3KQoJCSAgICA1NyAnYzYnIDIzIDQ4OgoJCQkgICAgMjkgJ2M4JwoJCQkgICAgNDggPSA0OC40KCc4NCcsJzExYy84NCcpCgkJCSAgICAzNyA9IDExLjRhKDQ4KQoJCQkgICAgMzcuMmUoJzg5LTZjJywgJzRjLzUuMCAoMTU3OyBmYjsgMTU3IGNlIDUuMTsgZGMtY2I7IGQ1OjEuOS4wLjMpIDZkLzJkIDRiLzMuMC4zJykKCQkJICAgIDcgPSAxMS40OSgzNykKCQkJICAgIDE0YT03Ljg1KCkKCQkJICAgIDcuNmIoKQoJCQkgICAgMTc9M2EuMjUoJzE0OSIsIjQ4Ilw6IiguKz8pIicpLjI0KDE0YSlbMF0KCQkJICAgIDFhPTE3LjQoJ1wvJywnLycpCgkJCSAgICA0Mz01MwoJCQkgICAgMTNiPTE0LjMxKGYzLCAyYj02MyxlPTYzKTsgMTNiLjNiKCA2MD0iNWQiLCAyMj17ICI3MSI6IGYzIH0gKQoJCQkgICAgNDM9Yy4xM2UoNDc9NjYoMmYuMWJbMV0pLDQ4PTFhLDM0PTEzYikKCQkJICAgIDU4OgoJCQkJIDIxLmI3ICgpLmY1KDFhLCAxM2IsIDZmKQoJCQkJIDFmIDQzCgkJCSAgICAxZToKCQkJCSA0NQoJCSAgICA1NToKCQkJMjkgJzExNiAxMzInCgkJCTE2IDRmLjViKDQ4KS5lMSgpOgoJCQkJMWEgPSA0Zi41Yig0OCkuMTQ0KCkKCQkJNTU6IDFhPTQ4IAoJCQk0Mz01MwoJCQkxM2I9MTQuMzEoZjMsIDJiPTYzLGU9NjMpOyAxM2IuM2IoIDYwPSI1ZCIsIDIyPXsgIjcxIjogZjMgfSApCgkJCTQzPWMuMTNlKDQ3PTY2KDJmLjFiWzFdKSw0OD0xYSwzND0xM2IpCgkJCTU4OgoJCQkgICAgIDIxLmI3ICgpLmY1KDFhLCAxM2IsIDZmKQoJCQkgICAgIDFmIDQzCgkJCTFlOgoJCQkgICAgIDQ1CgkgICAgCjNmIGE4KCk6Cgk3NiA9ICcnCgllNSA9ICc3MjovLzEwYy4xMTQuNGUvMTBkLzE1MC80ZC04Yi8xMzA/OTYnCgkzNyA9IDExLjRhKGU1KQoJMzcuMmUoJzg5LTZjJywgJzRjLzUuMCAoMTU3OyBmYjsgMTU3IGNlIDUuMTsgZGMtY2I7IGQ1OjEuOS4wLjMpIDZkLzJkIDRiLzMuMC4zJykKCTcgPSAxMS40OSgzNykKCTE0YT03Ljg1KCkKCTcuNmIoKQoJMTRhID0gMTRhLjQoJy9mYycsJycpCgkxNGEgPSAxNGEuOTAoJ2RmLTgnKS4xMDMoJ2RmLTgnKS40KCcmIzM5OycsJ1wnJykuNCgnJiMxMDsnLCcgLSAnKS40KCcmIzExOTsnLCcnKQoJMTc9M2EuMjUoIjw4Nz4oLis/KTwvODc+Lis/PGE0PiguKz8pPC9hND4iLDNhLjVhKS4yNCgxNGEpWzE6XQoJNDQgMzAsIDk1IDIzIDE3OgoJICAgIDU4OgoJCQkgICAgMzAgPSAzMC45MCgnMTFiJywgJ2IzJykKCSAgICAxZToKCQkJICAgIDMwID0gMzAuOTAoJ2RmLTgnLCdiMycpCgkgICAgOTUgPSA5NVs6LTE1XQoJICAgIDMwID0gMzAuNCgnJjE0MzsnLCcnKQoJICAgIDk1ID0gJ1s2ZSBmN11bYl0nKzk1KydbL2JdWy82ZV0nCgkgICAgNzYgPSA3Nis5NSsnXGZjJyszMCsnXGZjJysnXGZjJwoJOWIoJ1s2ZSBmN11bYl1AZmFbL2JdWy82ZV0nLCA3NikKCjNmIDliKGE2LCA3Nik6CiAgICBlOSA9IDEyNQogICAgMjEuZignYWYoJWQpJyAlIGU5KQogICAgMjEuZDIoMTAwKQogICAgZTMgPSAxNC4xMDkoZTkpCiAgICBhMSA9IDUwCiAgICAxMWQgKGExID4gMCk6Cgk1ODoKCSAgICAyMS5kMigxMCkKCSAgICBhMSAtPSAxCgkgICAgZTMuN2UoMSkuZWQoYTYpCgkgICAgZTMuN2UoNSkuZjgoNzYpCgkgICAgMWYKCTFlOgoJICAgIDQ1CgkJCQkgICAgIAozZiA1Mig0OCk6Cgk0OCArPSAnPyVkPSVkJyAlICg4ZS5iMSgxLCBkNCksIDhlLmIxKDEsIGQ0KSkKCTM3ID0gMTEuNGEoNDgpCgkzNy4yZSgnODktNmMnLCAnNGMvNS4wICgxNTc7IGZiOyAxNTcgY2UgNS4xOyBkYy1jYjsgZDU6MS45LjAuMykgNmQvMmQgNGIvMy4wLjMnKQoJNyA9IDExLjQ5KDM3KQoJMTRhPTcuODUoKQoJMTRhID0gMTRhLjQoJ1wxNDcnLCcnKS40KCdcMTViJywnJykuNCgnJjEzYzsnLCcnKS40KCdcJycsJycpCgk3LjZiKCkKCTFmIDE0YQoKM2YgODgoKToKCTg2PVtdCgk3OT0yZi4xYlsyXQoJMTYgNjUoNzkpPj0yOgoJCTE1YT0yZi4xYlsyXQoJCTZhPTE1YS40KCc/JywnJykKCQkxNiAoMTVhWzY1KDE1YSktMV09PScvJyk6CgkJCTE1YT0xNWFbMDo2NSgxNWEpLTJdCgkJNDI9NmEuODAoJyYnKQoJCTg2PXt9CgkJNDQgMTU2IDIzIDExYSg2NSg0MikpOgoJCQkyOD17fQoJCQkyOD00MlsxNTZdLjgwKCc9JykKCQkJMTYgKDY1KDI4KSk9PTI6CgkJCQk4NlsyOFswXV09MjhbMV0KCQkJICAgICAgIAoJMWYgODYKCSAgICAgICAKM2YgMjAoZjMsNDgsMTIsNjMsYzcsMTQ1PScnKToKCWVlPTJmLjFiWzBdKyI/NDg9IisxMTcuNig0OCkrIiYxMj0iKzU5KDEyKSsiJmYzPSIrMTE3LjYoZjMpKyImNjM9IisxMTcuNig2MykrIiYxNDU9IisxMTcuNigxNDUpCgk0Mz01MwoJMTNiPTE0LjMxKGYzLCAyYj0iNjkuZTAiLCBlPTYzKQoJMTNiLjNiKCA2MD0iNWQiLCAyMj17ICI3MSI6IGYzLCAnZWInOiAxNDUgfSApCgkxM2IuMjcoJzFjJywgYzcpCgk0Mz1jLjEzZSg0Nz02NigyZi4xYlsxXSksNDg9ZWUsMzQ9MTNiLDE4PTUzKQoJMWYgNDMKCjNmIDNjKGYzLDQ4LDEyLDYzLGM3LDE0NT0nJyk6CgllZT0yZi4xYlswXSsiPzQ4PSIrMTE3LjYoNDgpKyImMTI9Iis1OSgxMikrIiZmMz0iKzExNy42KGYzKSsiJjYzPSIrMTE3LjYoNjMpKyImMTQ1PSIrMTE3LjYoMTQ1KQoJNDM9NTMKCTEzYj0xNC4zMShmMywgMmI9IjY5LmUwIiwgZT02MykKCTEzYi4zYiggNjA9IjVkIiwgMjI9eyAiNzEiOiBmMywgJ2ViJzogMTQ1IH0gKQoJMTNiLjI3KCcxYycsIGM3KQoJNDM9Yy4xM2UoNDc9NjYoMmYuMWJbMV0pLDQ4PWVlLDM0PTEzYiwxOD02ZikKCTFmIDQzCgozZiA3YyhmMyw0OCwxMiw2Myw5MywxOD02Zik6CgkxNiBhYj09JzllJzoKCSAgMTYgYzIgJzZlJyAyMyBmMzoKCSAgICA0Nj1mMy44ZCgnKCcpCgkgICAgNWM9IiIKCSAgICAxZD0iIgoJICAgIDE2IDY1KDQ2KT4wOgoJCTVjPTQ2WzBdCgkJMWQ9NDZbMl0uOGQoJyknKQoJICAgIDE2IDY1KDFkKT4wOgoJCTFkPTFkWzBdCgkgICAgMTMzID0gNzMuZTcoKQoJICAgIDgzID0gMTMzLmVhKCcxMjYnLCBmMz01YyAsMTNmPTFkKQoJICAgIGVlPTJmLjFiWzBdKyI/NDg9IisxMTcuNig0OCkrIiY1MT0iKzU5KDUxKSsiJjEyPSIrNTkoMTIpKyImZjM9IisxMTcuNihmMykKCSAgICA0Mz01MwoJICAgIDEzYj0xNC4zMShmMywgMmI9ODNbJ2U0J10sIGU9NjMpCgkgICAgMTNiLjNiKCA2MD0iNWQiLCAyMj0gODMgKQoJICAgIDMyID0gW10KCSAgICAzMi44ZigoJzEyMCBjNCcsICcxNDAuMTEwKDEzNCknKSkKCSAgICAxM2IuOGMoMzIsIGMzPTUzKQoJICAgIDE2IGMyIDgzWyc3NSddID09ICcnOiAxM2IuMjcoJzFjJywgODNbJzc1J10pCgkgICAgNTU6IDEzYi4yNygnMWMnLCBjNykKCSAgICA0Mz1jLjEzZSg0Nz02NigyZi4xYlsxXSksNDg9ZWUsMzQ9MTNiLDE4PTE4LGQzPTkzKQoJICAgIDFmIDQzCgk1NToKCSAgICBlZT0yZi4xYlswXSsiPzQ4PSIrMTE3LjYoNDgpKyImNTE9Iis1OSg1MSkrIiYxMj0iKzU5KDEyKSsiJmYzPSIrMTE3LjYoZjMpCgkgICAgNDM9NTMKCSAgICAxM2I9MTQuMzEoZjMsIDJiPTk4LCBlPTk4KQoJICAgIDEzYi4zYiggNjA9IjVkIiwgMjI9eyAiNzEiOiBmMyB9ICkKCSAgICAxM2IuMjcoJzFjJywgYzcpCgkgICAgNDM9Yy4xM2UoNDc9NjYoMmYuMWJbMV0pLDQ4PWVlLDM0PTEzYiwxOD0xOCkKCSAgICAxZiA0MwoJCjNmIGE5KDY0LCA5YSk6CiAgICAxNiA2NDoKCWMuY2QoNjYoMmYuMWJbMV0pLCA2NCkKICAgIDE2IDE5LjJjKCcxMzUtMTJhJyk9PSc5ZSc6CgkyMS5mKCIxNTQuMmEoJTE1MCkiICUgMTkuMmMoOWEpICkKCjE1YT04OCgpOyA0OD01ZTsgZjM9NWU7IDEyPTVlOyA1MT01ZTsgNjM9NWUKNTg6IDUxPTExNy4zNSgxNWFbIjUxIl0pCjFlOiA0NQo1ODogNDg9MTE3LjM1KDE1YVsiNDgiXSkKMWU6IDQ1CjU4OiBmMz0xMTcuMzUoMTVhWyJmMyJdKQoxZTogNDUKNTg6IDEyPTY2KDE1YVsiMTIiXSkKMWU6IDQ1CjU4OiA2Mz0xMTcuMzUoMTVhWyI2MyJdKQoxZTogNDUKIAojMjkgIjEzMTogIis1OSg1MSk7IDI5ICIxMmU6ICIrNTkoMTIpOyAyOSAiMTQyOiAiKzU5KDQ4KTsgMjkgIjEyZDogIis1OShmMykKIAoxNiAxMj09NWUgMTJiIDQ4PT01ZSAxMmIgNjUoNDgpPDE6IDcwKCkKNTcgMTI9PTE6NzcoNDgpCjU3IDEyPT0yOmE4KCkKNTcgMTI9PTM6OTcoNDgsZjMpCgpjLmIwKDY2KDJmLjFiWzFdKSk=")))(lambda a,b:b[int("0x"+a.group(1),16)],"0|1|2|3|replace|5|quote_plus|response|8|9|a|B|xbmcplugin|d|thumbnailImage|executebuiltin|10|urllib2|mode|youtube|xbmcgui|15|if|match|isFolder|selfAddon|streamurl|argv|fanart_image|simpleyear|except|return|addDir|xbmc|infoLabels|in|findall|compile|channels|setProperty|splitparams|print|SetViewMode|iconImage|getSetting|2008092417|add_header|sys|status|ListItem|contextMenuItems|search_query|listitem|unquote_plus|item_data|req|adultpass|39|re|setInfo|addLink|searchterm|addon_id|def|AIzaSyBAdxZCHbeJwnQ7dDZQJNfcaF46MdqJ24E|AIzaSyA7v1QOHz8Q4my5J8uGSpr0zRrntRjnMmk|pairsofparams|ok|for|pass|splitName|handle|url|urlopen|Request|Firefox|Mozilla|AKfycbyBcUa5TlEQudk6Y_0o0ZubnmhGL_|com|urlresolver|50|site|open_url|True|playlist|else|keyb|elif|try|str|DOTALL|HostedMediaFile|simplename|Video|None|list|type|matches|GetList|iconimage|content|len|int|translatePath|channel|DefaultFolder|cleanedparams|close|Agent|Gecko|COLOR|False|Index|Title|https|metahandlers|adultopt|backdrop_url|text|GetChans|dialog|paramstring|isConfirmed|metalkettle|addLinkMeta|results|getControl|maxResults|split|googleapis|ytapi|meta|video|read|param|title|get_params|User|passw|b7Up8kQt11xgVwz3ErTo|addContextMenuItems|partition|random|append|decode|www|import|itemcount|xbmcaddon|dte|588677963413065728|PLAYLINK|icon|Password|viewType|showText|CatIndex|ytid|true|Keyboard|Addon|retry|videoId|special|pubDate|Content|heading|getText|TWITTER|setView|baseurl|metaset|Youtube|doModal|snippet|ActivateWindow|endOfDirectory|randint|playlistItems|ignore|ret|Cancel|movies|Player|Please|txt|ytapi2|UKTurk|ytapi1|common_addon|XXX|Dialog|password|addons|not|replaceItems|Information|enable_meta|dailymotion|fanart|DailyMotion|metahandler|playlistId|GB|strip|setContent|NT|adult|regionCode|field|sleep|totalItems|10000|rv|value|Adult|yesno|setSetting|accidental|watch|en|addon|ytpl2|utf|png|valid_url|resources|win|cover_url|twit|join|MetaData|path|id|get_meta|plot|home|setLabel|u|from|ytpl|part|continue|name|http|play|Playlist|blue|setText|Twitter|uk_turk|U|n|queries|twitter|prevent|100|img|thumbs|encode|plugin|search|os|Search|jpg|Window|the|li|script|macros|cnt|key|Action|to|access|Set|google|ukturk|Direct|urllib|set|x2026|range|ascii|embed|while|lower|enter|Movie|en_US|opted|money|Found|10147|movie|MAIN|burl|Lets|view|or|Show|Name|Mode|show|exec|Site|Link|mg|Info|auto|Feed|Turk|co|have|v3|liz|nbsp|libs|addDirectoryItem|year|XBMC|500|URL|amp|resolve|description|get|r|You|mp4|link|you|Go|M|v|me|s|S|UK|US|Container|hl|i|Windows|I|q|params|t|_".split("|")))
答案 0 :(得分:5)
请注意,正如in the comments所指出的那样,如果您只想查看生成的脚本,则可以将第二个exec
替换为print
,因此请从例如:
exec("import re;import base64");exec((lambda p,y: ...
为:
exec("import re;import base64");print((lambda p,y: ...
# ^^^^^
并运行结果。如果您想了解更多关于 的工作原理,请参阅下文。
你有两个输入,一个是管道分离数据(pipestr
),另一个是基于该数据汇编的程序结构,以base 64编码({{1} })。考虑到这两个字符串文字(加上不必要的b64str
),你只剩下:
'0x'
这是解码结构:
data = pipestr.split("|")
code = re.sub(
r"([0-9a-f]+)", # find all hexadecimals
lambda match: data[int(match.group(1), 16)], # replace them by indexing the data
base64.b64decode(b64str) # insert into the structure
)
通过索引数据来替换这些不同的部分以选择适当的组件(例如,第一行中的92 21,94,14,c,117,11,106,3a,2f,4f,8e
ef e2.13d.bd 92 a0
ef c9 92 73
3e = '104.84.115'
19 = 94.a0(e9=3e)
dd = a0(3e, 2f.1b)
c7 = 21.67(106.e8.e6('a3://ec/c1/' + 3e , 'c7.108'))
98 = 21.67(106.e8.e6('a3://ec/c1/' + 3e, '98.e0'))
aa = 'f4://91.7b.138/bb/70.b9'
74 = 19.2c('cf')
38 = 19.2c('c0')
63 = dd.fd.146('63', '')
ab = 19.2c('c5')
bc ='72://91.81.4e/13/13a/105?159='
ba ='&d0=153&f1=ae&155=121&10f=41&60=84&7f=50'
f0 = '72://91.81.4e/13/13a/b2?f1=ae&ca='
de = '&7f=50&10f=40'
3f 70():
14a=52(aa)
17=3a.25('f3="(.+?)".+?48="(.+?)".+?101="(.+?)"',3a.5a).24(14a)
44 f3,48,63 23 17:
16 c2 'be' 23 f3:
20(f3,48,1,63,c7)
16 'be' 23 f3:
16 74 == '9e':
16 38 == '':
78 = 14.bf()
b4 = 78.d8('d7 a5', '148 139 122 111 12f cf 64','','b8 118 a c0 111 ff da 112','b5','129 14c')
16 b4 == 1:
56 = 21.9f('', '113 99')
56.ad()
16 (56.7a()):
8a = 56.a7()
19.d9('c0',8a)
20(f3,48,1,63,c7)
16 74 == '9e':
16 38 <> '':
20(f3,48,1,63,c7)
3c('152 137 f9 136','48',2,'f4://91.7b.138/bb/102/fe.108',c7)
21.f('154.2a(141)')
3f 77(48):
16 '70' 23 48:
9c(48)
16 'be' 23 48:
16 38 <> '':
78 = 14.bf()
b4 = 78.d8('d7 a5', 'b8 11f 10a c0 14b 118','111 f2','','b5','12c 14f 10a 123')
16 b4 == 1:
58:
56 = 21.9f('', '113 99')
56.ad()
16 (56.7a()):
8a = 56.a7()
16 8a == 38:
26 = 62(48)
44 68 23 26:
3c(68["f3"],68["48"],3,63,c7)
1e:45
16 'b6' 23 48:
26 = 62(48)
10e = 65(26)
44 68 23 26:
7c(68["f3"],68["48"],3,63,10e,18=6f)
a9('b6', '127')
16 '70' 23 48:
21.f('154.2a(50)')
57 'be' c2 23 48:
128 = 48
26 = 62(48)
44 68 23 26:
16 '13.4e/7d?33=' 23 68["48"]:
20(68["f3"],68["48"],3,63,c7)
57 '13.4e/54?5f=' 23 68["48"]:
20(68["f3"],68["48"],3,63,c7)
55:
16 'b9' 23 68["48"]:
20(68["f3"],68["48"],3,63,c7)
55:
3c(68["f3"],68["48"],3,63,c7)
21.f('154.2a(50)')
3f 9c(48):
14a=52(48)
17=3a.25('f3="(.+?)".+?48="(.+?)".+?101="(.+?)"',3a.5a).24(14a)
44 f3,48,63 23 17:
16 '13.4e/54?5f=' 23 48:
20(f3,48,3,63,c7)
57 '13.4e/7d?33=' 23 48:
20(f3,48,3,63,c7)
55:
20(f3,48,1,63,c7)
21.f('154.2a(50)')
3f 62(48):
14a=52(48)
61=3a.25('^#.+?:-?[0-9]*(.*?),(.*?)\fc(.*?)$',3a.158+3a.14d+3a.fb+3a.151).24(14a)
10b = []
44 15a, f3, 48 23 61:
36 = {"15a": 15a, "f3": f3, "48": 48}
10b.8f(36)
5f = []
44 68 23 10b:
36 = {"f3": 68["f3"], "48": 68["48"]}
61=3a.25(' (.+?)="(.+?)"',3a.158+3a.14d+3a.fb+3a.151).24(68["15a"])
44 d1, d6 23 61:
36[d1.cc().11e().4('-', '15c')] = d6.cc()
5f.8f(36)
1f 5f
3f 97(48,f3):
29 48
16 'b9' 23 48:
29 '124 b9'
77(48)
55:
16 '13.4e/7d?33=' 23 48:
29 'ac 107'
3d = 48.80('33=')[1]
82 = bc + 3d + ba
37 = 11.4a(82)
37.2e('89-6c', '4c/5.0 (157; fb; 157 ce 5.1; dc-cb; d5:1.9.0.3) 6d/2d 4b/3.0.3')
7 = 11.49(37)
14a=7.85()
7.6b()
14a = 14a.4('\147','').4('\fc','').4(' ','')
17=3a.25('"a2": "(.+?)".+?"87": "(.+?)"',3a.5a).24(14a)
29 17
44 9d,f3 23 17:
48 = '72://91.13.4e/db?14e='+9d
3c(f3,48,3,63,c7)
57 '13.4e/54?5f=' 23 48:
29 'ac f6'
3d = 48.80('54?5f=')[1]
82 = f0 + 3d + de
37 = 11.4a(82)
37.2e('89-6c', '4c/5.0 (157; fb; 157 ce 5.1; dc-cb; d5:1.9.0.3) 6d/2d 4b/3.0.3')
7 = 11.49(37)
14a=7.85()
7.6b()
14a = 14a.4('\147','').4('\fc','').4(' ','')
17=3a.25('"87": "(.+?)".+?"a2": "(.+?)"',3a.5a).24(14a)
44 f3,9d 23 17:
48 = '72://91.13.4e/db?14e='+9d
3c(f3,48,3,63,c7)
57 'c6' 23 48:
29 'c8'
48 = 48.4('84','11c/84')
37 = 11.4a(48)
37.2e('89-6c', '4c/5.0 (157; fb; 157 ce 5.1; dc-cb; d5:1.9.0.3) 6d/2d 4b/3.0.3')
7 = 11.49(37)
14a=7.85()
7.6b()
17=3a.25('149","48"\:"(.+?)"').24(14a)[0]
1a=17.4('\/','/')
43=53
13b=14.31(f3, 2b=63,e=63); 13b.3b( 60="5d", 22={ "71": f3 } )
43=c.13e(47=66(2f.1b[1]),48=1a,34=13b)
58:
21.b7 ().f5(1a, 13b, 6f)
1f 43
1e:
45
55:
29 '116 132'
16 4f.5b(48).e1():
1a = 4f.5b(48).144()
55: 1a=48
43=53
13b=14.31(f3, 2b=63,e=63); 13b.3b( 60="5d", 22={ "71": f3 } )
43=c.13e(47=66(2f.1b[1]),48=1a,34=13b)
58:
21.b7 ().f5(1a, 13b, 6f)
1f 43
1e:
45
3f a8():
76 = ''
e5 = '72://10c.114.4e/10d/150/4d-8b/130?96'
37 = 11.4a(e5)
37.2e('89-6c', '4c/5.0 (157; fb; 157 ce 5.1; dc-cb; d5:1.9.0.3) 6d/2d 4b/3.0.3')
7 = 11.49(37)
14a=7.85()
7.6b()
14a = 14a.4('/fc','')
14a = 14a.90('df-8').103('df-8').4(''','\'').4(' ',' - ').4('w','')
17=3a.25("<87>(.+?)</87>.+?<a4>(.+?)</a4>",3a.5a).24(14a)[1:]
44 30, 95 23 17:
58:
30 = 30.90('11b', 'b3')
1e:
30 = 30.90('df-8','b3')
95 = 95[:-15]
30 = 30.4('&143;','')
95 = '[6e f7][b]'+95+'[/b][/6e]'
76 = 76+95+'\fc'+30+'\fc'+'\fc'
9b('[6e f7][b]@fa[/b][/6e]', 76)
3f 9b(a6, 76):
e9 = 125
21.f('af(%d)' % e9)
21.d2(100)
e3 = 14.109(e9)
a1 = 50
11d (a1 > 0):
58:
21.d2(10)
a1 -= 1
e3.7e(1).ed(a6)
e3.7e(5).f8(76)
1f
1e:
45
3f 52(48):
48 += '?%d=%d' % (8e.b1(1, d4), 8e.b1(1, d4))
37 = 11.4a(48)
37.2e('89-6c', '4c/5.0 (157; fb; 157 ce 5.1; dc-cb; d5:1.9.0.3) 6d/2d 4b/3.0.3')
7 = 11.49(37)
14a=7.85()
14a = 14a.4('\147','').4('\15b','').4('&13c;','').4('\'','')
7.6b()
1f 14a
3f 88():
86=[]
79=2f.1b[2]
16 65(79)>=2:
15a=2f.1b[2]
6a=15a.4('?','')
16 (15a[65(15a)-1]=='/'):
15a=15a[0:65(15a)-2]
42=6a.80('&')
86={}
44 156 23 11a(65(42)):
28={}
28=42[156].80('=')
16 (65(28))==2:
86[28[0]]=28[1]
1f 86
3f 20(f3,48,12,63,c7,145=''):
ee=2f.1b[0]+"?48="+117.6(48)+"&12="+59(12)+"&f3="+117.6(f3)+"&63="+117.6(63)+"&145="+117.6(145)
43=53
13b=14.31(f3, 2b="69.e0", e=63)
13b.3b( 60="5d", 22={ "71": f3, 'eb': 145 } )
13b.27('1c', c7)
43=c.13e(47=66(2f.1b[1]),48=ee,34=13b,18=53)
1f 43
3f 3c(f3,48,12,63,c7,145=''):
ee=2f.1b[0]+"?48="+117.6(48)+"&12="+59(12)+"&f3="+117.6(f3)+"&63="+117.6(63)+"&145="+117.6(145)
43=53
13b=14.31(f3, 2b="69.e0", e=63)
13b.3b( 60="5d", 22={ "71": f3, 'eb': 145 } )
13b.27('1c', c7)
43=c.13e(47=66(2f.1b[1]),48=ee,34=13b,18=6f)
1f 43
3f 7c(f3,48,12,63,93,18=6f):
16 ab=='9e':
16 c2 '6e' 23 f3:
46=f3.8d('(')
5c=""
1d=""
16 65(46)>0:
5c=46[0]
1d=46[2].8d(')')
16 65(1d)>0:
1d=1d[0]
133 = 73.e7()
83 = 133.ea('126', f3=5c ,13f=1d)
ee=2f.1b[0]+"?48="+117.6(48)+"&51="+59(51)+"&12="+59(12)+"&f3="+117.6(f3)
43=53
13b=14.31(f3, 2b=83['e4'], e=63)
13b.3b( 60="5d", 22= 83 )
32 = []
32.8f(('120 c4', '140.110(134)'))
13b.8c(32, c3=53)
16 c2 83['75'] == '': 13b.27('1c', 83['75'])
55: 13b.27('1c', c7)
43=c.13e(47=66(2f.1b[1]),48=ee,34=13b,18=18,d3=93)
1f 43
55:
ee=2f.1b[0]+"?48="+117.6(48)+"&51="+59(51)+"&12="+59(12)+"&f3="+117.6(f3)
43=53
13b=14.31(f3, 2b=98, e=98)
13b.3b( 60="5d", 22={ "71": f3 } )
13b.27('1c', c7)
43=c.13e(47=66(2f.1b[1]),48=ee,34=13b,18=18)
1f 43
3f a9(64, 9a):
16 64:
c.cd(66(2f.1b[1]), 64)
16 19.2c('135-12a')=='9e':
21.f("154.2a(%150)" % 19.2c(9a) )
15a=88(); 48=5e; f3=5e; 12=5e; 51=5e; 63=5e
58: 51=117.35(15a["51"])
1e: 45
58: 48=117.35(15a["48"])
1e: 45
58: f3=117.35(15a["f3"])
1e: 45
58: 12=66(15a["12"])
1e: 45
58: 63=117.35(15a["63"])
1e: 45
#29 "131: "+59(51); 29 "12e: "+59(12); 29 "142: "+59(48); 29 "12d: "+59(f3)
16 12==5e 12b 48==5e 12b 65(48)<1: 70()
57 12==1:77(48)
57 12==2:a8()
57 12==3:97(48,f3)
c.b0(66(2f.1b[1]))
变为'c'
,这是来自管道分离数据的12
。
xbmcplugin
该程序构建并执行以下内容:
>>> for x in range(20):
print format(x, '2'), format(x, '2x'), data[x]
0 0 0
1 1 1
2 2 2
3 3 3
4 4 replace
5 5 5
6 6 quote_plus
7 7 response
8 8 8
9 9 9
10 a a
11 b B
12 c xbmcplugin
13 d d
14 e thumbnailImage
15 f executebuiltin
16 10 10
17 11 urllib2
18 12 mode
19 13 youtube
答案 1 :(得分:1)
如果您删除未编码的数据并只解码编码的字符串,您将获得以下内容,但Lord知道它是什么或意味着什么。
import base64
coded_data = "Just the coded data part............"
decoded_data = base64.b64decode(coded_data)
print (decoded_data)
从以下输出开始:
92 21,94,14,c,117,11,106,3a,2f,4f,8e
ef e2.13d.bd 92 a0
ef c9 92 73
3e = '104.84.115'
19 = 94.a0(e9=3e)
dd = a0(3e, 2f.1b)
c7 = 21.67(106.e8.e6('a3://ec/c1/' + 3e , 'c7.108'))
98 = 21.67(106.e8.e6('a3://ec/c1/' + 3e, '98.e0'))
aa = 'f4://91.7b.138/bb/70.b9'
74 = 19.2c('cf')
38 = 19.2c('c0')
63 = dd.fd.146('63', '')
ab = 19.2c('c5')
bc ='72://91.81.4e/13/13a/105?159='
ba ='&d0=153&f1=ae&155=121&10f=41&60=84&7f=50'
f0 = '72://91.81.4e/13/13a/b2?f1=ae&ca='
de = '&7f=50&10f=40'