127) { //Folgendes Byte einlesen (Offset) $offset_byte = fread($file, 1); $bin_offset = str_pad(decbin(ord($offset_byte)), 8, '0', STR_PAD_LEFT); $source .= $offset_byte; //Länge herausfinden $bin_marker = decbin(ord($byte)); $bin_length = substr($bin_marker, 1, 3); $bin_offset = substr($bin_marker, 4, 4) . $bin_offset; //echo str_pad($bin_offset, 12, '0', STR_PAD_LEFT) . "\n"; $offset = bindec($bin_offset) + 1; $length = bindec($bin_length) + 3; //echo "\nOffset: $offset; Length: $length\n"; $replacement = substr($source, -$offset - 3, $length); //echo "$replacement\n"; $buffer .= $replacement; //$count += $length - 2; } else { $buffer .= $byte; } } fclose($file); //Buffer verschönern $buffer = str_replace(array('@l', '<[', '<'), "\n\n", $buffer); file_put_contents('demoniak.txt', $buffer); //echo decbin(4); echo "\n"; ?>