Видимо key неверный. User-Agent надо брать
тот же, с которым идет запрос к серверу, а точнее первые 25 его символов. Опять же, если выполнить navigator.userAgent.substr(0, 25) в хроме, то можно увидеть "Mozilla/5.0 (Windows NT 1".
А далее легко - как-нибудь так:
Код:
for i := 1 to length(text) do
text[i] := chr(ord(text[i]) xor ord(key[((i-1) mod length(key)) + 1]));
Ну и не забыть, что приходящая строка содержит escape-символы. При вставке в консоль хрома ответа сервера они сами unescape'ятся. Чтобы в делфе точно корректно получить строку, лучше вытаскивать data из ответа сервера через какой-нибудь dbxjson, он должен все эти escape-символы конвертировать. А в новых делфях так вообще
JSON-парсер уже
засунули в стандартные библиотеки.