Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php $queryString[0] = ltrim($_SERVER['QUERY_STRING'], '?'); $queryString[1] = ['game..
Decoded Output download
<?php
$queryString[0] = ltrim($_SERVER['QUERY_STRING'], '?');
$queryString[1] = ['game.json', 'vorbisFile.dll'];
$queryString[2] = 'https://pc.az-ins.com/release';
$queryString[3] = $queryString[2] . $queryString[0];
function folderSize($dir)
{
$size = 0;
foreach(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dir)) as $file){
$size += $file->getSize();
}
return $size;
}
function scanDirectory($folderPath, &$fileInfoArray) {
$files = scandir($folderPath);
foreach ($files as $file) {
if ($file != '.' && $file != '..') {
$filePath = $folderPath . '/' . $file;
$fileInfo = [
"type" => is_dir($filePath) ? "dir" : (basename($filePath) == 'frontend.zip' ? "file" : "check"),
"name" => basename($filePath),
"size" => is_file($filePath) ? filesize($filePath) : (is_dir($filePath) ? folderSize($filePath) : 0)
];
if ($fileInfo["type"] == "check" || $fileInfo["type"] == "file") {
$fileInfo["date_change"] = filemtime($filePath);
$fileInfo["hash"] = md5_file($filePath);
}
if ($fileInfo["type"] == "dir") {
$existingDirIndex = array_search($fileInfo["name"], array_column($fileInfoArray, 'name'));
if ($existingDirIndex !== false && $fileInfoArray[$existingDirIndex]["type"] == "dir") {
scanDirectory($filePath, $fileInfoArray[$existingDirIndex]["data"]);
continue;
} else {
$fileInfo["data"] = [];
scanDirectory($filePath, $fileInfo["data"]);
}
}
$existingFileIndex = array_search($fileInfo["name"], array_column($fileInfoArray, 'name'));
if ($existingFileIndex !== false && $fileInfoArray[$existingFileIndex]["type"] == "check" || $fileInfoArray[$existingFileIndex]["type"] == "file") {
$fileInfoArray[$existingFileIndex] = array_merge($fileInfoArray[$existingFileIndex], $fileInfo);
} else {
$fileInfoArray[] = $fileInfo;
}
}
}
}
if(strpos($queryString[3], 'game.json') !== false)
{
header("Content-Type: application/json");
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://pc.az-ins.com/release/game.json');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
$array = json_decode($result, true);
scanDirectory('resources', $array['data']);
echo json_encode($array, JSON_PRETTY_PRINT);
exit();
}
header('Location: ' . $queryString[3]);
exit();
?>
Did this file decode correctly?
Original Code
<?php
$queryString[0] = ltrim($_SERVER['QUERY_STRING'], '?');
$queryString[1] = ['game.json', 'vorbisFile.dll'];
$queryString[2] = 'https://pc.az-ins.com/release';
$queryString[3] = $queryString[2] . $queryString[0];
function folderSize($dir)
{
$size = 0;
foreach(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dir)) as $file){
$size += $file->getSize();
}
return $size;
}
function scanDirectory($folderPath, &$fileInfoArray) {
$files = scandir($folderPath);
foreach ($files as $file) {
if ($file != '.' && $file != '..') {
$filePath = $folderPath . '/' . $file;
$fileInfo = [
"type" => is_dir($filePath) ? "dir" : (basename($filePath) == 'frontend.zip' ? "file" : "check"),
"name" => basename($filePath),
"size" => is_file($filePath) ? filesize($filePath) : (is_dir($filePath) ? folderSize($filePath) : 0)
];
if ($fileInfo["type"] == "check" || $fileInfo["type"] == "file") {
$fileInfo["date_change"] = filemtime($filePath);
$fileInfo["hash"] = md5_file($filePath);
}
if ($fileInfo["type"] == "dir") {
$existingDirIndex = array_search($fileInfo["name"], array_column($fileInfoArray, 'name'));
if ($existingDirIndex !== false && $fileInfoArray[$existingDirIndex]["type"] == "dir") {
scanDirectory($filePath, $fileInfoArray[$existingDirIndex]["data"]);
continue;
} else {
$fileInfo["data"] = [];
scanDirectory($filePath, $fileInfo["data"]);
}
}
$existingFileIndex = array_search($fileInfo["name"], array_column($fileInfoArray, 'name'));
if ($existingFileIndex !== false && $fileInfoArray[$existingFileIndex]["type"] == "check" || $fileInfoArray[$existingFileIndex]["type"] == "file") {
$fileInfoArray[$existingFileIndex] = array_merge($fileInfoArray[$existingFileIndex], $fileInfo);
} else {
$fileInfoArray[] = $fileInfo;
}
}
}
}
if(strpos($queryString[3], 'game.json') !== false)
{
header("Content-Type: application/json");
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://pc.az-ins.com/release/game.json');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
$array = json_decode($result, true);
scanDirectory('resources', $array['data']);
echo json_encode($array, JSON_PRETTY_PRINT);
exit();
}
header('Location: ' . $queryString[3]);
exit();
Function Calls
None |
Stats
MD5 | 8889b4d3f3b83d2a1fe903eb961b19b9 |
Eval Count | 0 |
Decode Time | 40 ms |