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 eval(base64_decode('CiBuYW1lc3BhY2UgQXBwXEh0dHBcQ29udHJvbGxlcnNcVXNlck1hbmFnZW1lbnQ7..

Decoded Output download


 namespace App\Http\Controllers\UserManagement; use App\Http\Controllers\Controller; use App\Models\Billings\BillingBaseModel; use App\Models\Billings\ShiftManage; use App\Models\Billings\WorkingDate; use App\Models\User; use App\Models\UserManagement\LoginHistory; use App\Models\UserManagement\UserComputer; use Carbon\Carbon; use Exception; use Illuminate\Foundation\Auth\RedirectsUsers; use Illuminate\Foundation\Auth\ThrottlesLogins; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use Illuminate\Http\JsonResponse; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Session; use Illuminate\Support\Facades\Validator; use Illuminate\Validation\ValidationException; class LoginController extends BaseController { public function showLoginForm() { return view("\x61\165\164\150\56\154\157\x67\x69\156\x32"); } public function login(Request $request) { $request->merge(array("\165\x73\x65\x72\x6e\141\155\145" => strtolower($request->username))); $request->validate(array("\165\x73\x65\162\156\x61\155\145" => "\x72\145\161\165\x69\162\x65\x64", "\160\x61\x73\163\167\157\162\144" => "\162\x65\161\165\x69\x72\x65\144")); $user = null; $username = $request->username; $w_date = WorkingDate::getWorkingDate(); try { $user = User::where("\165\x73\145\162\x6e\141\155\145", $username)->first(); if (!$user) { throw new Exception("\124\150\145\x73\145\x20\x63\162\145\144\x65\x6e\x74\x69\x61\154\163\x20\x64\157\40\156\157\164\x20\x6d\141\164\143\150\40\157\165\162\40\162\145\x63\157\x72\144\x73"); } if (!Hash::check($request->password, $user->password)) { throw new Exception("\124\x68\145\163\145\x20\x63\162\145\x64\x65\156\x74\x69\x61\154\x73\x20\x64\x6f\40\x6e\x6f\164\40\x6d\x61\164\143\150\x20\x6f\x75\x72\40\x72\x65\143\157\x72\144\x73"); } if (!$user->is_active) { throw new Exception("\x55\x73\x65\x72\x20\151\x73\40\156\x6f\x74\x20\101\x63\164\x69\x76\145"); } } catch (\Exception $e) { logger($username); logger($e->getMessage()); $validator = Validator::make(array(), array()); $validator->errors()->add("\165\x73\145\x72\x6e\141\x6d\145", $e->getMessage()); throw new ValidationException($validator); } if (!$user->is_super_admin()) { try { $computer = UserComputer::where("\151\x70", $request->ip())->first(); $shift = ShiftManage::getUclosedShift($w_date, $user->id, $user->club_id); if ($shift && $shift->till_no != $computer->id) { $another_com = UserComputer::where("\151\144", $shift->till_no)->first(); throw new Exception("\125\163\x65\162\40\x69\x73\x20\x61\x6c\162\x65\x61\144\x79\x20\x4c\x6f\147\x67\x65\144\40\x49\156\x20\x61\x74\x20\141\156\157\x74\x68\145\x72\x20\143\x6f\155\160\165\x74\x65\162\x2e" . $another_com->ip); } } catch (\Exception $e) { logger($username); logger($e->getMessage()); $validator = Validator::make(array(), array()); $validator->errors()->add("\165\x73\x65\162\x6e\x61\155\145", $e->getMessage()); throw new ValidationException($validator); } } $user->last_login = now(); $user->last_login_ip = $request->getClientIp(); $user->save(); if (Auth::attempt($this->credentials($request))) { $next_id = LoginHistory::max("\151\x64") + 1; LoginHistory::create(array("\x69\x64" => $next_id, "\x75\x73\145\x72\x5f\151\144" => $user->id, "\167\x5f\x64\x61\x74\x65" => BillingBaseModel::getWorkingDate(), "\x6c\x6f\x67\151\156\x5f\x74\151\155\145" => Carbon::now(), "\151\x70\x5f\x61\x64\x64\x72\145\163\x73" => $request->ip(), "\x75\163\145\x72\137\141\x67\x65\156\x74" => $request->server("\110\124\124\x50\x5f\x55\123\105\122\x5f\101\107\x45\116\124"))); $user = Auth::user(); if ($user->is_shift_user) { $shift = ShiftManage::getUclosedShift($w_date, $user->id, $user->club_id); if (!$shift) { return redirect(route("\x73\x68\x69\146\164\x2d\x6d\x61\x6e\x61\x67\x65\155\x65\x6e\164\56\x63\x72\x65\x61\164\145")); } else { $request->session()->put("\x61\x72\145\141\137\151\x64", $shift->areaid); $request->session()->put("\143\x6f\155\x70\165\x74\145\x72\137\151\144", $shift->till_no); return redirect()->intended("\x68\157\155\145")->withSuccess("\x53\x69\x67\156\x65\144\40\x69\156"); } } return redirect()->intended("\150\157\x6d\x65")->withSuccess("\123\151\x67\156\x65\x64\40\151\156"); } return redirect("\x6c\157\147\151\x6e")->withErrors("\x4c\157\147\x69\x6e\40\144\x65\164\x61\x69\154\163\40\141\x72\x65\40\x6e\x6f\x74\x20\166\x61\x6c\151\x64"); } public function logout() { Session::flush(); Auth::logout(); return Redirect("\x6c\x6f\147\x69\x6e"); } public function credentials($request) { return array("\165\163\145\162\156\x61\155\x65" => $request->username, "\160\x61\163\x73\x77\x6f\x72\144" => $request->password, "\x69\x73\137\x61\x63\x74\x69\x76\145" => "\61"); } } 

Did this file decode correctly?

Original Code

<?php eval(base64_decode('CiBuYW1lc3BhY2UgQXBwXEh0dHBcQ29udHJvbGxlcnNcVXNlck1hbmFnZW1lbnQ7IHVzZSBBcHBcSHR0cFxDb250cm9sbGVyc1xDb250cm9sbGVyOyB1c2UgQXBwXE1vZGVsc1xCaWxsaW5nc1xCaWxsaW5nQmFzZU1vZGVsOyB1c2UgQXBwXE1vZGVsc1xCaWxsaW5nc1xTaGlmdE1hbmFnZTsgdXNlIEFwcFxNb2RlbHNcQmlsbGluZ3NcV29ya2luZ0RhdGU7IHVzZSBBcHBcTW9kZWxzXFVzZXI7IHVzZSBBcHBcTW9kZWxzXFVzZXJNYW5hZ2VtZW50XExvZ2luSGlzdG9yeTsgdXNlIEFwcFxNb2RlbHNcVXNlck1hbmFnZW1lbnRcVXNlckNvbXB1dGVyOyB1c2UgQ2FyYm9uXENhcmJvbjsgdXNlIEV4Y2VwdGlvbjsgdXNlIElsbHVtaW5hdGVcRm91bmRhdGlvblxBdXRoXFJlZGlyZWN0c1VzZXJzOyB1c2UgSWxsdW1pbmF0ZVxGb3VuZGF0aW9uXEF1dGhcVGhyb3R0bGVzTG9naW5zOyB1c2UgSWxsdW1pbmF0ZVxIdHRwXFJlcXVlc3Q7IHVzZSBJbGx1bWluYXRlXFN1cHBvcnRcRmFjYWRlc1xBdXRoOyB1c2UgSWxsdW1pbmF0ZVxIdHRwXEpzb25SZXNwb25zZTsgdXNlIElsbHVtaW5hdGVcU3VwcG9ydFxGYWNhZGVzXEhhc2g7IHVzZSBJbGx1bWluYXRlXFN1cHBvcnRcRmFjYWRlc1xTZXNzaW9uOyB1c2UgSWxsdW1pbmF0ZVxTdXBwb3J0XEZhY2FkZXNcVmFsaWRhdG9yOyB1c2UgSWxsdW1pbmF0ZVxWYWxpZGF0aW9uXFZhbGlkYXRpb25FeGNlcHRpb247IGNsYXNzIExvZ2luQ29udHJvbGxlciBleHRlbmRzIEJhc2VDb250cm9sbGVyIHsgcHVibGljIGZ1bmN0aW9uIHNob3dMb2dpbkZvcm0oKSB7IHJldHVybiB2aWV3KCJceDYxXDE2NVwxNjRcMTUwXDU2XDE1NFwxNTdceDY3XHg2OVwxNTZceDMyIik7IH0gcHVibGljIGZ1bmN0aW9uIGxvZ2luKFJlcXVlc3QgJHJlcXVlc3QpIHsgJHJlcXVlc3QtPm1lcmdlKGFycmF5KCJcMTY1XHg3M1x4NjVceDcyXHg2ZVwxNDFcMTU1XDE0NSIgPT4gc3RydG9sb3dlcigkcmVxdWVzdC0+dXNlcm5hbWUpKSk7ICRyZXF1ZXN0LT52YWxpZGF0ZShhcnJheSgiXDE2NVx4NzNceDY1XDE2MlwxNTZceDYxXDE1NVwxNDUiID0+ICJceDcyXDE0NVwxNjFcMTY1XHg2OVwxNjJceDY1XHg2NCIsICJcMTYwXHg2MVx4NzNcMTYzXDE2N1wxNTdcMTYyXDE0NCIgPT4gIlwxNjJceDY1XDE2MVwxNjVceDY5XHg3Mlx4NjVcMTQ0IikpOyAkdXNlciA9IG51bGw7ICR1c2VybmFtZSA9ICRyZXF1ZXN0LT51c2VybmFtZTsgJHdfZGF0ZSA9IFdvcmtpbmdEYXRlOjpnZXRXb3JraW5nRGF0ZSgpOyB0cnkgeyAkdXNlciA9IFVzZXI6OndoZXJlKCJcMTY1XHg3M1wxNDVcMTYyXHg2ZVwxNDFcMTU1XDE0NSIsICR1c2VybmFtZSktPmZpcnN0KCk7IGlmICghJHVzZXIpIHsgdGhyb3cgbmV3IEV4Y2VwdGlvbigiXDEyNFwxNTBcMTQ1XHg3M1wxNDVceDIwXHg2M1wxNjJcMTQ1XDE0NFx4NjVceDZlXHg3NFx4NjlceDYxXDE1NFwxNjNceDIwXHg2NFwxNTdcNDBcMTU2XDE1N1wxNjRceDIwXHg2ZFwxNDFcMTY0XDE0M1wxNTBcNDBcMTU3XDE2NVwxNjJcNDBcMTYyXDE0NVx4NjNcMTU3XHg3MlwxNDRceDczIik7IH0gaWYgKCFIYXNoOjpjaGVjaygkcmVxdWVzdC0+cGFzc3dvcmQsICR1c2VyLT5wYXNzd29yZCkpIHsgdGhyb3cgbmV3IEV4Y2VwdGlvbigiXDEyNFx4NjhcMTQ1XDE2M1wxNDVceDIwXHg2M1wxNjJcMTQ1XHg2NFx4NjVcMTU2XHg3NFx4NjlceDYxXDE1NFx4NzNceDIwXHg2NFx4NmZcNDBceDZlXHg2ZlwxNjRcNDBceDZkXHg2MVwxNjRcMTQzXDE1MFx4MjBceDZmXHg3NVx4NzJcNDBceDcyXHg2NVwxNDNcMTU3XHg3MlwxNDRceDczIik7IH0gaWYgKCEkdXNlci0+aXNfYWN0aXZlKSB7IHRocm93IG5ldyBFeGNlcHRpb24oIlx4NTVceDczXHg2NVx4NzJceDIwXDE1MVx4NzNcNDBcMTU2XHg2Zlx4NzRceDIwXDEwMVx4NjNcMTY0XHg2OVx4NzZcMTQ1Iik7IH0gfSBjYXRjaCAoXEV4Y2VwdGlvbiAkZSkgeyBsb2dnZXIoJHVzZXJuYW1lKTsgbG9nZ2VyKCRlLT5nZXRNZXNzYWdlKCkpOyAkdmFsaWRhdG9yID0gVmFsaWRhdG9yOjptYWtlKGFycmF5KCksIGFycmF5KCkpOyAkdmFsaWRhdG9yLT5lcnJvcnMoKS0+YWRkKCJcMTY1XHg3M1wxNDVceDcyXHg2ZVwxNDFceDZkXDE0NSIsICRlLT5nZXRNZXNzYWdlKCkpOyB0aHJvdyBuZXcgVmFsaWRhdGlvbkV4Y2VwdGlvbigkdmFsaWRhdG9yKTsgfSBpZiAoISR1c2VyLT5pc19zdXBlcl9hZG1pbigpKSB7IHRyeSB7ICRjb21wdXRlciA9IFVzZXJDb21wdXRlcjo6d2hlcmUoIlwxNTFceDcwIiwgJHJlcXVlc3QtPmlwKCkpLT5maXJzdCgpOyAkc2hpZnQgPSBTaGlmdE1hbmFnZTo6Z2V0VWNsb3NlZFNoaWZ0KCR3X2RhdGUsICR1c2VyLT5pZCwgJHVzZXItPmNsdWJfaWQpOyBpZiAoJHNoaWZ0ICYmICRzaGlmdC0+dGlsbF9ubyAhPSAkY29tcHV0ZXItPmlkKSB7ICRhbm90aGVyX2NvbSA9IFVzZXJDb21wdXRlcjo6d2hlcmUoIlwxNTFcMTQ0IiwgJHNoaWZ0LT50aWxsX25vKS0+Zmlyc3QoKTsgdGhyb3cgbmV3IEV4Y2VwdGlvbigiXDEyNVwxNjNceDY1XDE2Mlw0MFx4NjlceDczXHgyMFx4NjFceDZjXDE2Mlx4NjVceDYxXDE0NFx4NzlceDIwXHg0Y1x4NmZcMTQ3XHg2N1x4NjVcMTQ0XDQwXHg0OVwxNTZceDIwXHg2MVx4NzRceDIwXDE0MVwxNTZcMTU3XHg3NFx4NjhcMTQ1XHg3Mlx4MjBcMTQzXHg2ZlwxNTVcMTYwXDE2NVx4NzRceDY1XDE2Mlx4MmUiIC4gJGFub3RoZXJfY29tLT5pcCk7IH0gfSBjYXRjaCAoXEV4Y2VwdGlvbiAkZSkgeyBsb2dnZXIoJHVzZXJuYW1lKTsgbG9nZ2VyKCRlLT5nZXRNZXNzYWdlKCkpOyAkdmFsaWRhdG9yID0gVmFsaWRhdG9yOjptYWtlKGFycmF5KCksIGFycmF5KCkpOyAkdmFsaWRhdG9yLT5lcnJvcnMoKS0+YWRkKCJcMTY1XHg3M1x4NjVcMTYyXHg2ZVx4NjFcMTU1XDE0NSIsICRlLT5nZXRNZXNzYWdlKCkpOyB0aHJvdyBuZXcgVmFsaWRhdGlvbkV4Y2VwdGlvbigkdmFsaWRhdG9yKTsgfSB9ICR1c2VyLT5sYXN0X2xvZ2luID0gbm93KCk7ICR1c2VyLT5sYXN0X2xvZ2luX2lwID0gJHJlcXVlc3QtPmdldENsaWVudElwKCk7ICR1c2VyLT5zYXZlKCk7IGlmIChBdXRoOjphdHRlbXB0KCR0aGlzLT5jcmVkZW50aWFscygkcmVxdWVzdCkpKSB7ICRuZXh0X2lkID0gTG9naW5IaXN0b3J5OjptYXgoIlwxNTFceDY0IikgKyAxOyBMb2dpbkhpc3Rvcnk6OmNyZWF0ZShhcnJheSgiXHg2OVx4NjQiID0+ICRuZXh0X2lkLCAiXHg3NVx4NzNcMTQ1XHg3Mlx4NWZcMTUxXDE0NCIgPT4gJHVzZXItPmlkLCAiXDE2N1x4NWZceDY0XHg2MVx4NzRceDY1IiA9PiBCaWxsaW5nQmFzZU1vZGVsOjpnZXRXb3JraW5nRGF0ZSgpLCAiXHg2Y1x4NmZceDY3XDE1MVwxNTZceDVmXHg3NFwxNTFcMTU1XDE0NSIgPT4gQ2FyYm9uOjpub3coKSwgIlwxNTFceDcwXHg1Zlx4NjFceDY0XHg2NFx4NzJcMTQ1XDE2M1x4NzMiID0+ICRyZXF1ZXN0LT5pcCgpLCAiXHg3NVwxNjNcMTQ1XHg3MlwxMzdcMTQxXHg2N1x4NjVcMTU2XHg3NCIgPT4gJHJlcXVlc3QtPnNlcnZlcigiXDExMFwxMjRcMTI0XHg1MFx4NWZceDU1XDEyM1wxMDVcMTIyXHg1ZlwxMDFcMTA3XHg0NVwxMTZcMTI0IikpKTsgJHVzZXIgPSBBdXRoOjp1c2VyKCk7IGlmICgkdXNlci0+aXNfc2hpZnRfdXNlcikgeyAkc2hpZnQgPSBTaGlmdE1hbmFnZTo6Z2V0VWNsb3NlZFNoaWZ0KCR3X2RhdGUsICR1c2VyLT5pZCwgJHVzZXItPmNsdWJfaWQpOyBpZiAoISRzaGlmdCkgeyByZXR1cm4gcmVkaXJlY3Qocm91dGUoIlx4NzNceDY4XHg2OVwxNDZcMTY0XHgyZFx4NmRceDYxXHg2ZVx4NjFceDY3XHg2NVwxNTVceDY1XHg2ZVwxNjRcNTZceDYzXHg3Mlx4NjVceDYxXDE2NFwxNDUiKSk7IH0gZWxzZSB7ICRyZXF1ZXN0LT5zZXNzaW9uKCktPnB1dCgiXHg2MVx4NzJcMTQ1XDE0MVwxMzdcMTUxXHg2NCIsICRzaGlmdC0+YXJlYWlkKTsgJHJlcXVlc3QtPnNlc3Npb24oKS0+cHV0KCJcMTQzXHg2ZlwxNTVceDcwXDE2NVx4NzRcMTQ1XHg3MlwxMzdcMTUxXDE0NCIsICRzaGlmdC0+dGlsbF9ubyk7IHJldHVybiByZWRpcmVjdCgpLT5pbnRlbmRlZCgiXHg2OFwxNTdcMTU1XDE0NSIpLT53aXRoU3VjY2VzcygiXHg1M1x4NjlceDY3XDE1Nlx4NjVcMTQ0XDQwXHg2OVwxNTYiKTsgfSB9IHJldHVybiByZWRpcmVjdCgpLT5pbnRlbmRlZCgiXDE1MFwxNTdceDZkXHg2NSIpLT53aXRoU3VjY2VzcygiXDEyM1wxNTFceDY3XDE1Nlx4NjVceDY0XDQwXDE1MVwxNTYiKTsgfSByZXR1cm4gcmVkaXJlY3QoIlx4NmNcMTU3XDE0N1wxNTFceDZlIiktPndpdGhFcnJvcnMoIlx4NGNcMTU3XDE0N1x4NjlceDZlXDQwXDE0NFx4NjVcMTY0XHg2MVx4NjlcMTU0XDE2M1w0MFwxNDFceDcyXHg2NVw0MFx4NmVceDZmXHg3NFx4MjBcMTY2XHg2MVx4NmNcMTUxXHg2NCIpOyB9IHB1YmxpYyBmdW5jdGlvbiBsb2dvdXQoKSB7IFNlc3Npb246OmZsdXNoKCk7IEF1dGg6OmxvZ291dCgpOyByZXR1cm4gUmVkaXJlY3QoIlx4NmNceDZmXDE0N1x4NjlceDZlIik7IH0gcHVibGljIGZ1bmN0aW9uIGNyZWRlbnRpYWxzKCRyZXF1ZXN0KSB7IHJldHVybiBhcnJheSgiXDE2NVwxNjNcMTQ1XDE2MlwxNTZceDYxXDE1NVx4NjUiID0+ICRyZXF1ZXN0LT51c2VybmFtZSwgIlwxNjBceDYxXDE2M1x4NzNceDc3XHg2Zlx4NzJcMTQ0IiA9PiAkcmVxdWVzdC0+cGFzc3dvcmQsICJceDY5XHg3M1wxMzdceDYxXHg2M1x4NzRceDY5XHg3NlwxNDUiID0+ICJcNjEiKTsgfSB9IA==')); ?>

Function Calls

base64_decode 1

Variables

None

Stats

MD5 c148b0ecd46a3b9c8c1a53c92784f00c
Eval Count 1
Decode Time 71 ms