-def find_url_func(script):
- FUNC_NAME = R"([a-zA-Z0-9$]+)"
- PATTERN = R"this\.url\s*=\s*" + FUNC_NAME + R"\s*\(\s*this\s*\)"
-
- match = re.search(PATTERN, script)
- func_name = match.groups()[0]
- return func_name
+def construct_url_from_cipher_result(cipher_result):
+ for k, v in cipher_result.items():
+ if isinstance(v, str) and v.startswith("https://"):
+ temp_url = v
+ break
+ else:
+ raise Exception("Could not find URL-like string in cipher result!")
+
+ for k, v in cipher_result.items():
+ if isinstance(v, dict):
+ params = {}
+ for k2, v2 in v.items():
+ params[k2] = urllib.parse.unquote(v2)
+ return append_to_qs(temp_url, params)
+ else:
+ raise Exception("Could not find params-like structure in cipher result!")