Seite 8 von 8 Erste ... 678
  1. #71

    Registriert seit
    28.10.2011
    Beiträge
    625
    Thanked 279 Times in 168 Posts

    Standard AW: Knuddels Android APP

    Ich habe die vermutung, dass Huffman vllt nicht überall genutzt wird, sondern nur an einigen stellen und deshalb Huffman nicht komplett implementiert ist/wurde.

  2. #72

    Registriert seit
    25.01.2013
    Beiträge
    19
    Thanked 14 Times in 5 Posts

    Standard AW: Knuddels Android APP

    Zitat Zitat von AlbionHack Beitrag anzeigen
    Von welcher Klasse redest du?

    - - - Aktualisiert - - -

    Habs gefunden, die Klasse wurde nicht unbeannt, die hieß von Anfang an so. Ich werde sie grad komplett decrypten.

    - - - Aktualisiert - - -

    PHP-Code:
    //Unfucked by AlbionHack
    package com.knuddels.android;

    import android.content.Context;
    import android.content.Intent;
    import android.content.SharedPreferences;
    import android.content.SharedPreferences.Editor;
    import android.os.Bundle;
    import android.os.PowerManager.WakeLock;
    import android.util.Log;
    import com.google.android.gcm.GCMBaseIntentService;
    import java.io.PrintStream;
    import java.util.ArrayList;
    import java.util.List;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.client.utils.URLEncodedUtils;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.message.BasicNameValuePair;

    public class 
    GCMIntentService extends GCMBaseIntentService
    {
      public static final 
    String p "960467607831";
      public static final 
    String x "/servlet/android/replaceDeviceID";

      public 
    GCMIntentService()
      {
        
    super(arrayOfString);
      }

      private final 
    void t(String paramString1String paramString2)
      {
        try
        {
          
    ArrayList localArrayList = new ArrayList();
          
    localArrayList.add(new BasicNameValuePair("oldid"paramString1));
          
    localArrayList.add(new BasicNameValuePair("newid"paramString2));
          
    String str1 "http://chat.knuddels.de:2710/servlet/android/replaceDeviceID";
          
    String str2 str1 "?" URLEncodedUtils.format(localArrayList"utf-8");
          new 
    DefaultHttpClient().execute(new HttpGet(str2));
          return;
        }
        catch (
    Exception localException)
        {
          
    Log.e("Knuddels GCM","Error sending http Request"localException);
        }
      }

      protected 
    void onError(Context paramContextString paramString)
      {
      }

      protected 
    void onMessage(Context paramContextIntent paramIntent)
      {
        
    PowerManager.WakeLock localWakeLock AppWakeHandler.i(paramContext5000L"GCM Push Notification");
        
    localWakeLock.setReferenceCounted(false);
        try
        {
          
    SharedPreferences localSharedPreferences paramContext.getSharedPreferences("pushConfig"0);
          
    int i localSharedPreferences.getInt("waitingMessages"0);
          
    localSharedPreferences.edit().putInt("waitingMessages"1).commit();
          
    Bundle localBundle paramIntent.getExtras();
          
    String str1 localBundle.getString("Sender");
          
    String str2 localBundle.getString("Text");
          
    long l localBundle.getLong("Timestamp");
          
    MessageDatabase locala8 null;
          if (
    == 0)
          {
            
    locala8 = new MessageDatabase(0Lstr2l, new UserDatabase(str10ti.u, (short)0));
            
    LastConversationsDatabase localjs = new LastConversationsDatabase();
            
    localjs._(-1L);
            
    locala8.p(localjs);
          }
          
    NotificationManager.u(paramContext1locala8);
          return;
        }
        finally
        {
          
    localWakeLock.release();
        }
      }

      protected 
    void onRegistered(Context paramContextString paramString)
      {
        
    PowerManager.WakeLock localWakeLock AppWakeHandler.i(paramContext5000L"GCM Push Notification");
        
    localWakeLock.setReferenceCounted(false);
        try
        {
          
    Log.v("Knuddels GCM""Registered: " paramString);
          
    SharedPreferences localSharedPreferences paramContext.getSharedPreferences("pushConfig"0);
          
    String str localSharedPreferences.getString("activeID""");
          
    localSharedPreferences.edit().putString("activeID"paramString).commit();
          
    t(strparamString);
          return;
        }
        finally
        {
          
    localWakeLock.release();
        }
      }

      protected 
    void onUnregistered(Context paramContextString paramString)
      {
        
    PowerManager.WakeLock localWakeLock AppWakeHandler.i(paramContext5000Lh.copyValueOf(459""));
        
    localWakeLock.setReferenceCounted(false);
        try
        {
          
    System.out.println("Unregistered: " paramString);
          
    Log.v("Knuddels GCM""Unregistered: " paramString);
          
    paramContext.getSharedPreferences("pushConfig"0).edit().remove("activeID").commit();
          
    t(paramString"");
          return;
        }
        finally
        {
          
    localWakeLock.release();
        }
      }
    }

    /* Location:           C:\Users\Dennis\Desktop\dex2jar-0.0.9.13\Knuddels_1.0-dex2jar.jar
     * Qualified Name:     com.knuddels.android.GCMIntentService
     * JD-Core Version:    0.6.2
     */ 
    Zitat Zitat von Mentos Beitrag anzeigen
    Meine güte, ich habe doch geschrieben, warum das nicht geht:

    Im Decompiler werden die Strings wie folgt angezeigt:

    "\000abc"

    Sprich: 0-Byte + abc

    Da ich aber jede einzelne Datei einlese, wird der String nicht geparsed, d.h. es kommt im Programm

    "\\000abc" an.

    Folglich muss das gefixt werden. Habe ich ja auch gefixt, nur das Pattern ist noch Dreckig.

    DL der gefixten Version (übrigens seit gestern schon online): https://dl.dropbox.com/u/58959175/KAndroidUnfucker.jar

    Pattern ist immer noch dreckig, aber sonst geht es klar.

    PowerManager.WakeLock localWakeLock = AppWakeHandler.i(paramContext, 5000L, h.copyValueOf(459, ""));

    Dieser String zum Beispiel. Da funzt irgendwas mit der Dekodierung nicht richtig, oder? Liegt aber imho am Fileencoding oder Decompiler...

  3. #73

    Registriert seit
    21.01.2013
    Beiträge
    130
    Thanked 241 Times in 47 Posts

    Standard AW: Knuddels Android APP

    Oder es ist wirklich ein leerer String gemeint.

  4. #74

    Registriert seit
    25.01.2013
    Beiträge
    19
    Thanked 14 Times in 5 Posts

    Standard AW: Knuddels Android APP

    Zitat Zitat von AlbionHack Beitrag anzeigen
    Oder es ist wirklich ein leerer String gemeint.
    String str1 = h.copyValueOf(459, "\f\017��n\037%\\\":s\032:\">>09411");
    PowerManager.WakeLock localWakeLock = mh.i(paramContext, 5000L, str1);

    Sieht für mich nicht so aus, als würde ein leerer String bei rauskommen tbh?

    Aber aus der Logik kann man ja erkennen, dass:

    PowerManager.WakeLock localWakeLock = AppWakeHandler.i(paramContext, 5000L, "GCM Push Notification");

    bei rauskommt.

  5. #75
    Avatar von Mentos
    Registriert seit
    18.11.2011
    Beiträge
    451
    Thanked 498 Times in 240 Posts

    Standard AW: Knuddels Android APP

    // Kann nichts löschen.
    Geändert von Mentos (14.02.2013 um 22:57 Uhr)

Seite 8 von 8 Erste ... 678

Ähnliche Themen

  1. Knuddels Android-App UPDATE
    Von knuddelschiller im Forum Knuddels-News
    Antworten: 6
    Letzter Beitrag: 14.06.2013, 22:52
  2. Knuddels Android App gesucht
    Von DnL im Forum Knuddels Programmierung
    Antworten: 8
    Letzter Beitrag: 23.12.2012, 02:22
  3. Knuddels + Android Lagebericht???
    Von 2Fast im Forum Knuddels Allgemein
    Antworten: 21
    Letzter Beitrag: 09.09.2012, 16:59
  4. Knuddels Android App
    Von Pwned im Forum Fragen & Probleme
    Antworten: 3
    Letzter Beitrag: 18.05.2012, 20:50
  5. Knuddels auf Android?
    Von Invicible im Forum Fragen & Probleme
    Antworten: 1
    Letzter Beitrag: 04.02.2012, 20:35
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.