function _process_request(&$data, $response_required = false)
 {
     $xml_request = urlencode($data);
     loadCoreFile('bouncer.php');
     $bnc = new Bouncer();
     $bnc->setHTTPversion("1.0");
     $bnc->setMethod(LICENSESERVER_METHOD);
     $bnc->setURL(LICENSESERVER_PROTO . '://' . ACCOUNTSERVER_URL . '?xml=' . $xml_request);
     $result = $bnc->RunRequest();
     if ($result == false) {
         return false;
     }
     if ($response_required) {
         loadCoreFile('obj_xml.php');
         $xml = new xml_doc($result['body']);
         $res = $xml->parse();
         if ($res !== true) {
             return false;
         }
         if (!is_object($xml->document)) {
             return false;
         }
         // general check
         // response data
         $response = array("CODE" => "not_set", "MESSAGE" => "not_set", "CERT" => "not_set");
         foreach ($response as $key => $val) {
             $xml_tag = $xml->findTag($key);
             if ($xml_tag != FALSE) {
                 $response[$key] = $xml_tag->contents;
             }
         }
         return $response;
     } else {
         return true;
     }
 }