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 class WxpayService { protected $mchid; protected $appid; protected $appKey; protec..

Decoded Output download

<?php 
 class WxpayService { protected $mchid; protected $appid; protected $appKey; protected $apiKey; protected $apiclient_cert; protected $apiclient_key; public $data = null; public function __construct($mchid, $appid, $appKey, $key, $apiclient_cert, $apiclient_key) { goto W9O8N; ruWyh: $this->appid = $appid; goto BqLBf; uJ8Cf: $this->apiclient_cert = $apiclient_cert; goto jvGFP; jvGFP: $this->apiclient_key = $apiclient_key; goto pldqe; bElez: $this->apiKey = $key; goto uJ8Cf; W9O8N: $this->mchid = $mchid; goto ruWyh; BqLBf: $this->appKey = $appKey; goto bElez; pldqe: } public function createJsBizPackage($openid, $totalFee, $outTradeNo, $sendName, $wishing, $actName) { goto IcVOv; hak6I: return false; goto Jea1K; Jea1K: PZxX3: goto pvwtG; MNbCn: $unifiedOrder = simplexml_load_string($responseXml, "SimpleXMLElement", LIBXML_NOCDATA); goto fgrgd; bHeox: $responseXml = $this->curlPost("https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack", self::arrayToXml($unified)); goto MNbCn; v1n_h: $unified = array("wxappid" => $config["appid"], "send_name" => $sendName, "mch_id" => $config["mch_id"], "nonce_str" => self::createNonceStr(), "re_openid" => $openid, "mch_billno" => $outTradeNo, "client_ip" => "127.0.0.1", "total_amount" => intval($totalFee), "total_num" => 1, "wishing" => $wishing, "act_name" => $actName, "remark" => "", "scene_id" => "PRODUCT_2"); goto OMFEJ; fgrgd: if (!($unifiedOrder === false)) { goto PZxX3; } goto hak6I; pvwtG: $result = json_decode(json_encode($unifiedOrder), true); goto GQbVT; IcVOv: $config = array("mch_id" => $this->mchid, "appid" => $this->appid, "key" => $this->apiKey); goto v1n_h; GQbVT: return $result; goto LVrjG; OMFEJ: $unified["sign"] = self::getSign($unified, $config["key"]); goto bHeox; LVrjG: } public function curlPost($url = '', $postData = '', $options = array()) { goto Z1QjD; DrgX6: h0CVb: goto TuRq0; vNeLA: curl_setopt($ch, CURLOPT_TIMEOUT, 30); goto Fm_pQ; taifu: curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); goto vNeLA; pTMJo: $data = curl_exec($ch); goto mi3gN; GPPfb: return $data; goto XUa86; mz6Ae: curl_setopt($ch, CURLOPT_URL, $url); goto J69ou; HlasF: curl_setopt_array($ch, $options); goto GN_cO; mi3gN: curl_close($ch); goto C6lwE; SiLPT: curl_setopt($ch, CURLOPT_SSLCERT, MODULE_ROOT . "/cert/apiclient_cert_" . $random . ".pem"); goto jyDOJ; lF00B: $random = mt_rand(0, 100); goto Zb7sk; J69ou: curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); goto QTSWT; ZQtgf: curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); goto prUpW; QTSWT: curl_setopt($ch, CURLOPT_POST, 1); goto taifu; mcIUm: $postData = http_build_query($postData); goto DrgX6; Z1QjD: if (!is_array($postData)) { goto h0CVb; } goto mcIUm; Fm_pQ: if (empty($options)) { goto KxgOR; } goto HlasF; ZmiUq: curl_setopt($ch, CURLOPT_SSLKEY, MODULE_ROOT . "/cert/apiclient_key_" . $random . ".pem"); goto pTMJo; Zb7sk: @file_put_contents(MODULE_ROOT . "/cert/apiclient_cert_" . $random . ".pem", $this->apiclient_cert); goto LTyxo; GN_cO: KxgOR: goto ZQtgf; m5L9z: @file_put_contents(MODULE_ROOT . "/cert/apiclient_key_" . $random . ".pem", ''); goto GPPfb; w0yaM: curl_setopt($ch, CURLOPT_SSLCERTTYPE, "PEM"); goto SiLPT; jyDOJ: curl_setopt($ch, CURLOPT_SSLKEYTYPE, "PEM"); goto ZmiUq; prUpW: curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); goto lF00B; C6lwE: @file_put_contents(MODULE_ROOT . "/cert/apiclient_cert_" . $random . ".pem", ''); goto m5L9z; TuRq0: $ch = curl_init(); goto mz6Ae; LTyxo: @file_put_contents(MODULE_ROOT . "/cert/apiclient_key_" . $random . ".pem", $this->apiclient_key); goto w0yaM; XUa86: } public static function createNonceStr($length = 16) { goto f2Ate; xJ_qF: goto YOymc; goto bck4T; bck4T: sAl91: goto LOTXE; isjRr: $i++; goto xJ_qF; qeLVA: if (!($i < $length)) { goto sAl91; } goto iNMEB; f2Ate: $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; goto swCVd; bBqb2: YOymc: goto qeLVA; NnRBm: DjgoQ: goto isjRr; LOTXE: return $str; goto s_tWi; swCVd: $str = ''; goto t23de; iNMEB: $str .= substr($chars, mt_rand(0, strlen($chars) - 1), 1); goto NnRBm; t23de: $i = 0; goto bBqb2; s_tWi: } public static function arrayToXml($arr) { goto I4OzE; bv5Iq: foreach ($arr as $key => $val) { goto WQDup; n4a3c: $xml .= "<" . $key . ">" . $val . "</" . $key . ">"; goto o_1x9; WQDup: if (is_numeric($val)) { goto Z7Ak0; } goto mKq59; mKq59: $xml .= "<" . $key . "><![CDATA[" . $val . "]]></" . $key . ">"; goto m67a0; m67a0: goto i6Ta8; goto Ulmf3; Ulmf3: Z7Ak0: goto n4a3c; o_1x9: i6Ta8: goto Ag5pY; Ag5pY: gQaOA: goto BVHfC; BVHfC: } goto mS5gU; KahH9: return $xml; goto gehQZ; cAfH3: $xml .= "</xml>"; goto KahH9; I4OzE: $xml = "<xml>"; goto bv5Iq; mS5gU: ExXiR: goto cAfH3; gehQZ: } public static function getSign($params, $key) { goto OB5wf; sBJqf: return $signStr; goto b7xr3; cgNHw: $signStr = strtoupper(md5($unSignParaString . "&key=" . $key)); goto sBJqf; OB5wf: ksort($params, SORT_STRING); goto lKMYN; lKMYN: $unSignParaString = self::formatQueryParaMap($params, false); goto cgNHw; b7xr3: } protected static function formatQueryParaMap($paraMap, $urlEncode = false) { goto SK0X9; XWun1: $reqPar = ''; goto OjDdr; hhweQ: $reqPar = substr($buff, 0, strlen($buff) - 1); goto a1gnp; OjDdr: if (!(strlen($buff) > 0)) { goto AhU4l; } goto hhweQ; RJ5ei: T61uG: goto XWun1; s30MP: return $reqPar; goto U_Amr; a1gnp: AhU4l: goto s30MP; SK0X9: $buff = ''; goto xteC7; xteC7: ksort($paraMap); goto m86y_; m86y_: foreach ($paraMap as $k => $v) { goto kW5o7; iNw2S: CsqMO: goto LS84v; t1dVL: if (!$urlEncode) { goto ZYZ5V; } goto y8c8N; y8c8N: $v = urlencode($v); goto URJN2; LS84v: cOuwI: goto V9A36; kW5o7: if (!(null != $v && "null" != $v)) { goto CsqMO; } goto t1dVL; esZ8V: $buff .= $k . "=" . $v . "&"; goto iNw2S; URJN2: ZYZ5V: goto esZ8V; V9A36: } goto RJ5ei; U_Amr: } } ?>

Did this file decode correctly?

Original Code

<?php
 class WxpayService { protected $mchid; protected $appid; protected $appKey; protected $apiKey; protected $apiclient_cert; protected $apiclient_key; public $data = null; public function __construct($mchid, $appid, $appKey, $key, $apiclient_cert, $apiclient_key) { goto W9O8N; ruWyh: $this->appid = $appid; goto BqLBf; uJ8Cf: $this->apiclient_cert = $apiclient_cert; goto jvGFP; jvGFP: $this->apiclient_key = $apiclient_key; goto pldqe; bElez: $this->apiKey = $key; goto uJ8Cf; W9O8N: $this->mchid = $mchid; goto ruWyh; BqLBf: $this->appKey = $appKey; goto bElez; pldqe: } public function createJsBizPackage($openid, $totalFee, $outTradeNo, $sendName, $wishing, $actName) { goto IcVOv; hak6I: return false; goto Jea1K; Jea1K: PZxX3: goto pvwtG; MNbCn: $unifiedOrder = simplexml_load_string($responseXml, "\123\151\x6d\x70\x6c\145\x58\115\114\105\x6c\x65\155\145\156\164", LIBXML_NOCDATA); goto fgrgd; bHeox: $responseXml = $this->curlPost("\150\x74\x74\160\x73\x3a\57\x2f\x61\x70\151\x2e\155\x63\150\x2e\167\145\151\x78\x69\156\x2e\161\x71\56\x63\x6f\x6d\x2f\155\x6d\160\141\171\155\153\x74\x74\x72\x61\x6e\163\x66\145\x72\163\57\x73\145\x6e\x64\x72\145\x64\160\x61\x63\153", self::arrayToXml($unified)); goto MNbCn; v1n_h: $unified = array("\167\x78\x61\160\x70\x69\144" => $config["\x61\x70\160\x69\x64"], "\x73\145\x6e\144\x5f\x6e\x61\x6d\x65" => $sendName, "\x6d\143\150\x5f\151\144" => $config["\x6d\x63\x68\x5f\x69\x64"], "\156\157\x6e\x63\145\137\163\x74\162" => self::createNonceStr(), "\162\x65\x5f\x6f\x70\x65\x6e\x69\x64" => $openid, "\x6d\x63\x68\137\x62\x69\x6c\x6c\156\x6f" => $outTradeNo, "\x63\x6c\x69\145\x6e\x74\x5f\151\x70" => "\x31\62\x37\x2e\x30\56\60\56\61", "\164\157\x74\x61\x6c\x5f\141\155\157\x75\156\164" => intval($totalFee), "\164\x6f\164\141\154\137\x6e\x75\x6d" => 1, "\x77\x69\x73\150\151\156\147" => $wishing, "\141\x63\164\x5f\x6e\141\155\x65" => $actName, "\162\145\155\141\162\153" => "\xe6\x81\255\xe5\226\234\xe5\x8f\x91\xe8\264\242\xef\xbc\x8c\345\244\247\345\x90\x89\xe5\244\247\345\210\251", "\163\143\x65\x6e\x65\137\x69\144" => "\x50\x52\117\104\x55\x43\x54\x5f\x32"); goto OMFEJ; fgrgd: if (!($unifiedOrder === false)) { goto PZxX3; } goto hak6I; pvwtG: $result = json_decode(json_encode($unifiedOrder), true); goto GQbVT; IcVOv: $config = array("\x6d\143\x68\x5f\151\x64" => $this->mchid, "\141\160\160\151\144" => $this->appid, "\153\145\171" => $this->apiKey); goto v1n_h; GQbVT: return $result; goto LVrjG; OMFEJ: $unified["\x73\151\147\156"] = self::getSign($unified, $config["\x6b\x65\171"]); goto bHeox; LVrjG: } public function curlPost($url = '', $postData = '', $options = array()) { goto Z1QjD; DrgX6: h0CVb: goto TuRq0; vNeLA: curl_setopt($ch, CURLOPT_TIMEOUT, 30); goto Fm_pQ; taifu: curl_setopt($ch, CURLOPT_POSTFIELDS, $postData); goto vNeLA; pTMJo: $data = curl_exec($ch); goto mi3gN; GPPfb: return $data; goto XUa86; mz6Ae: curl_setopt($ch, CURLOPT_URL, $url); goto J69ou; HlasF: curl_setopt_array($ch, $options); goto GN_cO; mi3gN: curl_close($ch); goto C6lwE; SiLPT: curl_setopt($ch, CURLOPT_SSLCERT, MODULE_ROOT . "\x2f\143\x65\162\x74\x2f\x61\160\x69\143\x6c\151\x65\x6e\164\137\143\x65\x72\164\137" . $random . "\56\x70\x65\x6d"); goto jyDOJ; lF00B: $random = mt_rand(0, 100); goto Zb7sk; J69ou: curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); goto QTSWT; ZQtgf: curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); goto prUpW; QTSWT: curl_setopt($ch, CURLOPT_POST, 1); goto taifu; mcIUm: $postData = http_build_query($postData); goto DrgX6; Z1QjD: if (!is_array($postData)) { goto h0CVb; } goto mcIUm; Fm_pQ: if (empty($options)) { goto KxgOR; } goto HlasF; ZmiUq: curl_setopt($ch, CURLOPT_SSLKEY, MODULE_ROOT . "\x2f\x63\x65\x72\164\x2f\x61\x70\x69\143\x6c\x69\x65\x6e\164\137\153\145\171\137" . $random . "\x2e\x70\145\155"); goto pTMJo; Zb7sk: @file_put_contents(MODULE_ROOT . "\x2f\x63\145\162\164\57\141\160\x69\x63\154\151\145\156\x74\x5f\143\x65\162\164\137" . $random . "\56\160\x65\155", $this->apiclient_cert); goto LTyxo; GN_cO: KxgOR: goto ZQtgf; m5L9z: @file_put_contents(MODULE_ROOT . "\57\143\x65\x72\x74\x2f\141\160\x69\143\x6c\151\x65\156\x74\137\x6b\x65\x79\137" . $random . "\x2e\160\145\x6d", ''); goto GPPfb; w0yaM: curl_setopt($ch, CURLOPT_SSLCERTTYPE, "\x50\105\115"); goto SiLPT; jyDOJ: curl_setopt($ch, CURLOPT_SSLKEYTYPE, "\x50\105\x4d"); goto ZmiUq; prUpW: curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); goto lF00B; C6lwE: @file_put_contents(MODULE_ROOT . "\x2f\x63\145\x72\164\x2f\141\x70\151\x63\154\151\145\x6e\164\x5f\x63\x65\162\164\137" . $random . "\56\x70\x65\x6d", ''); goto m5L9z; TuRq0: $ch = curl_init(); goto mz6Ae; LTyxo: @file_put_contents(MODULE_ROOT . "\x2f\x63\x65\162\x74\x2f\141\x70\151\x63\154\x69\x65\x6e\164\137\x6b\145\171\137" . $random . "\56\160\145\x6d", $this->apiclient_key); goto w0yaM; XUa86: } public static function createNonceStr($length = 16) { goto f2Ate; xJ_qF: goto YOymc; goto bck4T; bck4T: sAl91: goto LOTXE; isjRr: $i++; goto xJ_qF; qeLVA: if (!($i < $length)) { goto sAl91; } goto iNMEB; f2Ate: $chars = "\141\x62\x63\x64\x65\146\147\150\151\152\153\154\155\156\157\x70\x71\x72\163\164\x75\x76\167\x78\171\x7a\101\102\103\x44\105\x46\x47\x48\111\x4a\113\114\115\x4e\117\x50\121\x52\123\x54\125\126\127\130\x59\x5a\60\61\62\x33\64\65\66\x37\x38\x39"; goto swCVd; bBqb2: YOymc: goto qeLVA; NnRBm: DjgoQ: goto isjRr; LOTXE: return $str; goto s_tWi; swCVd: $str = ''; goto t23de; iNMEB: $str .= substr($chars, mt_rand(0, strlen($chars) - 1), 1); goto NnRBm; t23de: $i = 0; goto bBqb2; s_tWi: } public static function arrayToXml($arr) { goto I4OzE; bv5Iq: foreach ($arr as $key => $val) { goto WQDup; n4a3c: $xml .= "\x3c" . $key . "\x3e" . $val . "\74\x2f" . $key . "\x3e"; goto o_1x9; WQDup: if (is_numeric($val)) { goto Z7Ak0; } goto mKq59; mKq59: $xml .= "\74" . $key . "\76\74\41\x5b\x43\104\x41\124\x41\x5b" . $val . "\x5d\x5d\x3e\x3c\x2f" . $key . "\x3e"; goto m67a0; m67a0: goto i6Ta8; goto Ulmf3; Ulmf3: Z7Ak0: goto n4a3c; o_1x9: i6Ta8: goto Ag5pY; Ag5pY: gQaOA: goto BVHfC; BVHfC: } goto mS5gU; KahH9: return $xml; goto gehQZ; cAfH3: $xml .= "\x3c\57\170\x6d\x6c\76"; goto KahH9; I4OzE: $xml = "\74\x78\x6d\154\x3e"; goto bv5Iq; mS5gU: ExXiR: goto cAfH3; gehQZ: } public static function getSign($params, $key) { goto OB5wf; sBJqf: return $signStr; goto b7xr3; cgNHw: $signStr = strtoupper(md5($unSignParaString . "\46\153\x65\171\x3d" . $key)); goto sBJqf; OB5wf: ksort($params, SORT_STRING); goto lKMYN; lKMYN: $unSignParaString = self::formatQueryParaMap($params, false); goto cgNHw; b7xr3: } protected static function formatQueryParaMap($paraMap, $urlEncode = false) { goto SK0X9; XWun1: $reqPar = ''; goto OjDdr; hhweQ: $reqPar = substr($buff, 0, strlen($buff) - 1); goto a1gnp; OjDdr: if (!(strlen($buff) > 0)) { goto AhU4l; } goto hhweQ; RJ5ei: T61uG: goto XWun1; s30MP: return $reqPar; goto U_Amr; a1gnp: AhU4l: goto s30MP; SK0X9: $buff = ''; goto xteC7; xteC7: ksort($paraMap); goto m86y_; m86y_: foreach ($paraMap as $k => $v) { goto kW5o7; iNw2S: CsqMO: goto LS84v; t1dVL: if (!$urlEncode) { goto ZYZ5V; } goto y8c8N; y8c8N: $v = urlencode($v); goto URJN2; LS84v: cOuwI: goto V9A36; kW5o7: if (!(null != $v && "\156\165\154\x6c" != $v)) { goto CsqMO; } goto t1dVL; esZ8V: $buff .= $k . "\x3d" . $v . "\46"; goto iNw2S; URJN2: ZYZ5V: goto esZ8V; V9A36: } goto RJ5ei; U_Amr: } }

Function Calls

None

Variables

None

Stats

MD5 4814e8210ee545bab1e4e89359dcd8a4
Eval Count 0
Decode Time 93 ms