public void a(List<PackageInfo> paramList) {
   JSONArray localJSONArray1;
   try {
     localJSONArray1 = new JSONArray();
     Iterator localIterator = paramList.iterator();
     while (localIterator.hasNext()) {
       PackageInfo localPackageInfo = (PackageInfo) localIterator.next();
       JSONObject localJSONObject = new JSONObject();
       localJSONObject.put("name", localPackageInfo.packageName);
       JSONArray localJSONArray2 = new JSONArray();
       PermissionInfo[] arrayOfPermissionInfo = localPackageInfo.permissions;
       int i = arrayOfPermissionInfo.length;
       for (int j = 0; j < i; j++) localJSONArray2.put(arrayOfPermissionInfo[j].name);
       localJSONObject.put("permissions", localJSONArray2);
       localJSONArray1.put(localJSONObject);
     }
   } catch (JSONException localJSONException) {
     BLog.e("MalwareDetector", localJSONException.getMessage());
   }
   while (true) {
     return;
     HoneyClientEvent localHoneyClientEvent =
         new HoneyClientEvent("android_malware_detected_event");
     localHoneyClientEvent.d("malware_detector");
     localHoneyClientEvent.b("description", localJSONArray1.toString());
     this.b.b(localHoneyClientEvent);
   }
 }
 public void a(long paramLong)
 {
   this.b.b();
   Semaphore localSemaphore = new Semaphore(0);
   UserInteractionController.2 local2 = new UserInteractionController.2(this, localSemaphore);
   try
   {
     long l1 = System.currentTimeMillis();
     a(local2);
     if (!localSemaphore.tryAcquire(paramLong, TimeUnit.MILLISECONDS))
       BLog.b(a, "User is interacting with UI. Unblock data processing anyway.");
     long l2 = System.currentTimeMillis() - l1;
     if (l2 > 10L)
       BLog.b(a, "User interaction blocked data processing for " + l2 + " ms.");
     b(local2);
     return;
   }
   catch (InterruptedException localInterruptedException)
   {
     while (true)
       BLog.e(a, "Exception when the user interaction to be finished.", localInterruptedException);
   }
 }