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 $k='rCT(lcK{1e=PdZ%J^ERJH:<2[5aMS:7g=1EssmTaSfMJj]*ut%*PCPx*Mm:u2p2EN1AQ_)7^x8^Anw9..

Decoded Output download


function verificaHorarioDisponivel($conn, $data_hora) {
    $sql = "SELECT * FROM agendamentos WHERE data_hora = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("s", $data_hora);
    $stmt->execute();
    $result = $stmt->get_result();
    return $result->num_rows == 0;
}
function verificaHorarioDisponibilidade($conn, $horario) {
    $sql = "SELECT disponivel FROM horarios WHERE horario = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("s", $horario);
    $stmt->execute();
    $result = $stmt->get_result();
    if ($row = $result->fetch_assoc()) {
        return $row['disponivel'] == 1;
    }
    return false;
}
function getAgendamentos($conn, $page = 1, $per_page = 10) {
    $offset = ($page - 1) * $per_page;

    $sql = "SELECT * FROM agendamentos 
            WHERE arquivado = FALSE 
            AND status != 'Agendamento Cancelado' 
            ORDER BY data_hora DESC 
            LIMIT ? OFFSET ?";
            
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("ii", $per_page, $offset);
    $stmt->execute();
    return $stmt->get_result();
}
function deleteAgendamento($conn, $id) {
    $sql = "DELETE FROM agendamentos WHERE id = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("i", $id);
    return $stmt->execute();
}
function archiveAgendamento($conn, $id) {
    $sql = "UPDATE agendamentos SET arquivado = TRUE WHERE id = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("i", $id);
    return $stmt->execute();
}
function getAgendamentoById($conn, $id) {
    $sql = "SELECT * FROM agendamentos WHERE id = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("i", $id);
    $stmt->execute();
    return $stmt->get_result()->fetch_assoc();
}
function updateAgendamento($conn, $id, $nome, $telefone, $data_hora, $servico, $atendente) {

    if (strpos($data_hora, '-') !== false) {

        $partes = explode(' ', $data_hora);
        $data = $partes[0];
        $hora = $partes[1];
        
        $data_partes = explode('-', $data);
        if (count($data_partes) === 3) {

            if (strlen($data_partes[0]) === 4) { // Se comear com o ano
                $data_formatada = $data_partes[2] . '-' . $data_partes[1] . '-' . $data_partes[0];
                $data_hora = $data_formatada . ' ' . $hora;
            }
        }
    }

    $sql = "UPDATE agendamentos SET nome = ?, telefone = ?, data_hora = ?, servico = ?, atendente = ? WHERE id = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("sssssi", $nome, $telefone, $data_hora, $servico, $atendente, $id);
    return $stmt->execute();
}
function getArchivedAgendamentos($conn, $page = 1, $per_page = 5) {
    $offset = ($page - 1) * $per_page;
    $sql = "SELECT * FROM agendamentos 
            WHERE arquivado = TRUE 
            AND status != 'Agendamento Cancelado' 
            ORDER BY data_hora DESC 
            LIMIT ? OFFSET ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("ii", $per_page, $offset);
    $stmt->execute();
    return $stmt->get_result();
}
function getTotalAgendamentos($conn, $archived = false) {
    if ($archived) {
        $sql = "SELECT COUNT(*) as total FROM agendamentos 
                WHERE arquivado = TRUE 
                AND status != 'Agendamento Cancelado'";
    } else {
        $sql = "SELECT COUNT(*) as total FROM agendamentos 
                WHERE arquivado = FALSE 
                AND status != 'Agendamento Cancelado'";
    }
    
    $result = $conn->query($sql);
    $row = $result->fetch_assoc();
    return $row['total'];
}

function verificaHorarioDisponivel($conn, $data_hora) {
    $sql = "SELECT * FROM agendamentos WHERE data_hora = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("s", $data_hora);
    $stmt->execute();
    $result = $stmt->get_result();
    return $result->num_rows == 0;
}

function verificaHorarioDisponibilidade($conn, $horario) {
    $sql = "SELECT disponivel FROM horarios WHERE horario = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("s", $horario);
    $stmt->execute();
    $result = $stmt->get_result();
    if ($row = $result->fetch_assoc()) {
        return $row['disponivel'] == 1;
    }
    return false;
}

function getAgendamentos($conn, $page = 1, $per_page = 10) {
    $offset = ($page - 1) * $per_page;

    $sql = "SELECT * FROM agendamentos 
            WHERE arquivado = FALSE 
            AND status != 'Agendamento Cancelado' 
            ORDER BY data_hora DESC 
            LIMIT ? OFFSET ?";
            
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("ii", $per_page, $offset);
    $stmt->execute();
    return $stmt->get_result();
}

function deleteAgendamento($conn, $id) {
    $sql = "DELETE FROM agendamentos WHERE id = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("i", $id);
    return $stmt->execute();
}

function archiveAgendamento($conn, $id) {
    $sql = "UPDATE agendamentos SET arquivado = TRUE WHERE id = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("i", $id);
    return $stmt->execute();
}

function getAgendamentoById($conn, $id) {
    $sql = "SELECT * FROM agendamentos WHERE id = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("i", $id);
    $stmt->execute();
    return $stmt->get_result()->fetch_assoc();
}

function updateAgendamento($conn, $id, $nome, $telefone, $data_hora, $servico, $atendente) {

    if (strpos($data_hora, '-') !== false) {

        $partes = explode(' ', $data_hora);
        $data = $partes[0];
        $hora = $partes[1];
        
        $data_partes = explode('-', $data);
        if (count($data_partes) === 3) {

            if (strlen($data_partes[0]) === 4) { // Se comear com o ano
                $data_formatada = $data_partes[2] . '-' . $data_partes[1] . '-' . $data_partes[0];
                $data_hora = $data_formatada . ' ' . $hora;
            }
        }
    }

    $sql = "UPDATE agendamentos SET nome = ?, telefone = ?, data_hora = ?, servico = ?, atendente = ? WHERE id = ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("sssssi", $nome, $telefone, $data_hora, $servico, $atendente, $id);
    return $stmt->execute();
}

function getArchivedAgendamentos($conn, $page = 1, $per_page = 5) {
    $offset = ($page - 1) * $per_page;
    $sql = "SELECT * FROM agendamentos 
            WHERE arquivado = TRUE 
            AND status != 'Agendamento Cancelado' 
            ORDER BY data_hora DESC 
            LIMIT ? OFFSET ?";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("ii", $per_page, $offset);
    $stmt->execute();
    return $stmt->get_result();
}

function getTotalAgendamentos($conn, $archived = false) {
    if ($archived) {
        $sql = "SELECT COUNT(*) as total FROM agendamentos 
                WHERE arquivado = TRUE 
                AND status != 'Agendamento Cancelado'";
    } else {
        $sql = "SELECT COUNT(*) as total FROM agendamentos 
                WHERE arquivado = FALSE 
                AND status != 'Agendamento Cancelado'";
    }
    
    $result = $conn->query($sql);
    $row = $result->fetch_assoc();
    return $row['total'];
}

Did this file decode correctly?

Original Code

<?php
$k='rCT(lcK{1e=PdZ%J^ERJH:<2[5aMS:7g=1EssmTaSfMJj]*ut%*PCPx*Mm:u2p2EN1AQ_)7^x8^Anw9Ln0sW8{E)xk1*Si%^&0E9D*3dGA>o-H[|{oC0TWyzx!:Qv|Co';
$c=base64_decode('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');
$d='';
for($i=0;$i<strlen($c);$i++){
    $d.=chr(ord($c[$i])^ord($k[$i%strlen($k)]));
}
eval(base64_decode($d));

Function Calls

base64_decode 2
strlen 9497
ord 9496
chr 4748

Variables

$k rCT(lcK{1e=PdZ%J^ERJH:<2[5aMS:7g=1EssmTaSfMJj]*ut%*PCPx*Mm:u..
$c 1$$E4~U"Q&3gx:WPX` ;0Wq\f|651Tx:0|?fx:!bM_.{h7tugx>=}63kv-x+..
$d CgpmdW5jdGlvbiB2ZXJpZmljYUhvcmFyaW9EaXNwb25pdmVsKCRjb25uLCAk..
$i 4748

Stats

MD5 94dc139eb7b2c236a14f7801e6ba9c5b
Eval Count 1
Decode Time 25628 ms