519
مشترکین
اطلاعاتی وجود ندارد24 ساعت
+77 روز
+8930 روز
در حال بارگیری داده...
جذب مشترکین
سپتامبر '26
سپتامبر '26
+2
در 1 کانالها
اوت '26
+107
در 12 کانالها
Get PRO
ژوئیه '26
+91
در 9 کانالها
Get PRO
ژوئن '26
+42
در 9 کانالها
Get PRO
مه '26
+61
در 9 کانالها
Get PRO
آوریل '26
+230
در 10 کانالها
Get PRO
مارس '260
در 10 کانالها
Get PRO
فوریه '26
+1
در 7 کانالها
Get PRO
ژانویه '260
در 0 کانالها
Get PRO
دسامبر '25
+60
در 0 کانالها
Get PRO
نوامبر '25
+10
در 1 کانالها
Get PRO
اکتبر '250
در 0 کانالها
Get PRO
سپتامبر '250
در 0 کانالها
Get PRO
اوت '250
در 0 کانالها
Get PRO
ژوئیه '250
در 0 کانالها
Get PRO
ژوئن '25
+1
در 0 کانالها
| تاریخ | رشد مشترکین | اشارات | کانالها | |
| 01 سپتامبر | +2 |
پستهای کانال
| 2 | Ay, salamat! Wala kaming pasok hanggang Sep 22 | 20 |
| 3 | 0 Rᴇᴘᴏʀᴛs ᴀʀᴇ Bʟᴏᴄᴋᴇᴅ ʙʏ @teleprotectorbot
950 Cʜᴀɴɴᴇʟs ᴀʀᴇ Sᴀᴠᴇᴅ Fʀᴏᴍ Rᴇᴘᴏʀᴛs ɪɴ Lᴀsᴛ 24 Hᴏᴜʀs | 1 |
| 4 | Np | 22 |
| 5 | Thx for jailbreak | 23 |
| 6 | بدون متن... | 23 |
| 7 | Working 😂 | 24 |
| 8 | Hahaha | 23 |
| 9 | Idiot 😂 | 23 |
| 10 | I'm going to try dec it using ai | 23 |
| 11 | What are you going to do? | 23 |
| 12 | Oh okay | 23 |
| 13 | In Pvt group | 24 |
| 14 | Give me gpt jailbreak | 25 |
| 15 | Hahaha | 26 |
| 16 | Lol | 24 |
| 17 | See | 29 |
| 18 | try:
selected = [
int(x.strip())
for x in choice.split(",")
if x.strip()
]
except ValueError:
print("❌ Invalid selection.")
return
if not selected:
print("❌ Invalid selection.")
return
confirm = input(
"Are you sure you want to replace these URLs? (y/N): "
).strip().lower()
if confirm != "y":
print("⚠️ Operation cancelled.")
return
bak_file = backup_file(current_file)
print("ℹ️ Backup created: " + bak_file)
patched = bytearray(decrypted)
replacements_made = 0
for idx in selected:
if idx < 1 or idx > len(urls):
print("❌ Invalid index: " + str(idx))
continue
offset, old_url = urls[idx - 1]
new_url = input(
"\nEnter new URL for '" + old_url + "': "
).strip()
if not new_url:
print("⚠️ Skipped, no new URL provided.")
continue
old_bytes = old_url.encode()
new_bytes = new_url.encode()
if len(new_bytes) > len(old_bytes):
print("⚠️ New URL is longer than old URL! Skipped.")
continue
ok = patch_by_offset(
patched,
offset,
old_bytes,
new_bytes
)
if not ok:
print(
"❌ Cannot patch at offset "
+ hex(offset)
)
continue
print(
"✅ Replaced: '"
+ old_url
+ "' -> '"
+ new_url
+ "'"
)
replacements_made += 1
if replacements_made == 0:
print("⚠️ No replacements were made.")
return
encrypted_out = xor_crypt(
bytes(patched),
current_key
)
if current_file.endswith(".so"):
out_file = current_file[:-3] + "_patched.so"
else:
out_file = current_file + "_patched"
with open(out_file, "wb") as f:
f.write(encrypted_out)
try:
shutil.copystat(current_file, out_file)
except Exception:
pass
print("\n📂 New file saved: " + out_file)
print(
"✅ Replaced "
+ str(replacements_made)
+ " URL(s)"
)
except Exception as e:
print("❌ Error: " + str(e))
def main():
while True:
clear_screen()
display_menu()
choice = input("Your choice (1-5): ").strip()
if choice == "1":
select_file()
input("\nPress Enter to continue...")
elif choice == "2":
set_key()
input("\nPress Enter to continue...")
elif choice == "3":
list_urls()
elif choice == "4":
replace_urls()
input("\nPress Enter to continue...")
elif choice == "5":
print("👋 Goodbye!")
break
else:
print("❌ Invalid choice!")
input("Press Enter to continue...")
if name == "main":
try:
main()
except KeyboardInterrupt:
print("\n✋ Stopped by user.") | 29 |
| 19 | i
mport os
import re
import shutil
from typing import List, Tuple
DEFAULT_KEY = 46
current_file = ""
current_key = DEFAULT_KEY
def xor_crypt(data: bytes, key: int) -> bytes:
return bytes(b ^ key for b in data)
def find_urls(data: bytes) -> List[Tuple[int, str]]:
url_pattern = re.compile(
rb"https?://[A-Za-z0-9\./_\-\?=\&%:#]+"
)
results = []
for m in url_pattern.finditer(data):
results.append(
(
m.start(),
m.group().decode(errors="ignore")
)
)
return results
def patch_by_offset(
data: bytearray,
offset: int,
old_bytes: bytes,
new_bytes: bytes
) -> bool:
"""Replace at a specific offset. Returns True on success."""
if offset < 0 or offset + len(old_bytes) > len(data):
return False
if data[offset:offset + len(old_bytes)] != old_bytes:
return False
if len(new_bytes) > len(old_bytes):
return False
end = offset + len(old_bytes)
pad_len = len(old_bytes) - len(new_bytes)
data[offset:end] = new_bytes + b"\x00" * pad_len
return True
def backup_file(path: str) -> str:
bak = path + ".bak"
shutil.copy2(path, bak)
return bak
def clear_screen():
os.system("cls" if os.name == "nt" else "clear")
def display_menu():
print("=" * 50)
print(" URL PATCHER TOOL")
print("1. Select file to analyze")
print("2. Set XOR key (current: 0x{:02X})".format(current_key))
print("3. List URLs (view only)")
print("4. Replace URLs")
print("5. Exit")
print("=" * 50)
def select_file():
global current_file
filename = input("Enter file path: ").strip()
if not os.path.isfile(filename):
print("❌ File does not exist!")
return False
current_file = filename
print("✅ Selected file: " + current_file)
return True
def set_key():
global current_key
key_input = input(
"Enter XOR key (hex: 0x2E, decimal: 46): "
).strip()
try:
if key_input.lower().startswith("0x"):
key = int(key_input, 16)
else:
key = int(key_input)
if not 0 <= key <= 255:
raise ValueError
current_key = key
print(
"✅ New XOR key: 0x"
+ format(current_key, "02X")
+ " ("
+ str(current_key)
+ ")"
)
except ValueError:
print("❌ Invalid key!")
def list_urls():
if not current_file:
print("❌ No file selected!")
return
try:
with open(current_file, "rb") as f:
encrypted = f.read()
decrypted = xor_crypt(encrypted, current_key)
urls = find_urls(decrypted)
if not urls:
print("❌ No URLs found.")
return
print("\n🔎 Found " + str(len(urls)) + " URL(s):")
for i, (pos, url) in enumerate(urls, 1):
print(
str(i)
+ ". "
+ url
+ " Offset: "
+ hex(pos)
+ ", Method: XOR"
)
input("\nPress Enter to continue...")
except Exception as e:
print("❌ Error: " + str(e))
def replace_urls():
if not current_file:
print("❌ No file selected!")
return
try:
with open(current_file, "rb") as f:
encrypted = f.read()
decrypted = xor_crypt(encrypted, current_key)
urls = find_urls(decrypted)
if not urls:
print("❌ No URLs found to replace.")
return
print("\n🔎 Found " + str(len(urls)) + " URL(s):")
for i, (pos, url) in enumerate(urls, 1):
print(
str(i)
+ ". "
+ url
+ " Offset: "
+ hex(pos)
+ ", Method: XOR"
)
choice = input(
"\nSelect URL numbers to replace (e.g., 1 or 1,3,4): "
) | 23 |
| 20 | Lol | 22 |
