granularity level: instruction
.class public final La0/w;
.super Lh0/d;
.source "SourceFile"
.field public final synthetic a:La0/g;
.method public constructor <init>(La0/g;Landroid/os/Looper;)V
.locals 0
iput-object p1, p0, La0/w;->a:La0/g;
invoke-direct {p0, p2}, Lh0/d;-><init>(Landroid/os/Looper;)V
return-void
.end method
.method public final handleMessage(Landroid/os/Message;)V
.locals 10
iget-object v0, p0, La0/w;->a:La0/g;
iget-object v0, v0, La0/g;->v:Ljava/util/concurrent/atomic/AtomicInteger;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;->get()I
move-result v0
iget v1, p1, Landroid/os/Message;->arg1:I
const/4 v2, 0x0
const/4 v3, 0x7
const/4 v4, 0x2
const/4 v5, 0x1
const/4 v6, 0x0
if-eq v0, v1, :cond_3
iget v0, p1, Landroid/os/Message;->what:I
if-eq v0, v4, :cond_0
if-eq v0, v5, :cond_0
if-ne v0, v3, :cond_1
:cond_0
const/4 v2, 0x1
:cond_1
if-eqz v2, :cond_2
iget-object p1, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
check-cast p1, La0/t;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
monitor-enter p1
:try_start_0
iput-object v6, p1, La0/t;->a:Ljava/lang/Object;
monitor-exit p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
iget-object v0, p1, La0/t;->c:La0/g;
iget-object v0, v0, La0/g;->k:Ljava/util/ArrayList;
monitor-enter v0
:try_start_1
iget-object v1, p1, La0/t;->c:La0/g;
iget-object v1, v1, La0/g;->k:Ljava/util/ArrayList;
invoke-virtual {v1, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
monitor-exit v0
goto :goto_0
:catchall_0
move-exception p1
monitor-exit v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw p1
:catchall_1
move-exception v0
:try_start_2
monitor-exit p1
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
throw v0
:goto_0
:cond_2
return-void
:cond_3
iget v0, p1, Landroid/os/Message;->what:I
const/4 v1, 0x4
const/4 v7, 0x5
if-eq v0, v5, :cond_5
if-eq v0, v3, :cond_5
if-ne v0, v1, :cond_4
iget-object v0, p0, La0/w;->a:La0/g;
invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
goto :goto_1
:cond_4
if-ne v0, v7, :cond_6
:goto_1
:cond_5
iget-object v0, p0, La0/w;->a:La0/g;
invoke-virtual {v0}, La0/g;->n()Z
move-result v0
if-eqz v0, :cond_1b
:cond_6
iget v0, p1, Landroid/os/Message;->what:I
const/16 v8, 0x8
const/4 v9, 0x3
if-ne v0, v1, :cond_d
iget-object v0, p0, La0/w;->a:La0/g;
new-instance v1, Lx/a;
iget p1, p1, Landroid/os/Message;->arg2:I
invoke-direct {v1, p1}, Lx/a;-><init>(I)V
iput-object v1, v0, La0/g;->s:Lx/a;
iget-boolean p1, v0, La0/g;->t:Z
if-eqz p1, :cond_7
goto :goto_2
:cond_7
invoke-virtual {v0}, La0/g;->j()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result p1
if-eqz p1, :cond_8
goto :goto_2
:cond_8
invoke-static {v6}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result p1
if-eqz p1, :cond_9
goto :goto_2
:try_start_3
:cond_9
invoke-virtual {v0}, La0/g;->j()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
:try_end_3
.catch Ljava/lang/ClassNotFoundException; {:try_start_3 .. :try_end_3} :catch_0
const/4 v2, 0x1
:goto_2
:catch_0
if-eqz v2, :cond_b
iget-object p1, p0, La0/w;->a:La0/g;
iget-boolean v0, p1, La0/g;->t:Z
if-eqz v0, :cond_a
goto :goto_3
:cond_a
invoke-virtual {p1, v9, v6}, La0/g;->p(ILandroid/os/IInterface;)V
return-void
:goto_3
:cond_b
iget-object p1, p0, La0/w;->a:La0/g;
iget-object v0, p1, La0/g;->s:Lx/a;
if-eqz v0, :cond_c
goto :goto_4
:cond_c
new-instance v0, Lx/a;
invoke-direct {v0, v8}, Lx/a;-><init>(I)V
:goto_4
iget-object p1, p1, La0/g;->i:La0/b;
invoke-interface {p1, v0}, La0/b;->a(Lx/a;)V
iget-object p1, p0, La0/w;->a:La0/g;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
return-void
:cond_d
if-ne v0, v7, :cond_f
iget-object p1, p0, La0/w;->a:La0/g;
iget-object v0, p1, La0/g;->s:Lx/a;
if-eqz v0, :cond_e
goto :goto_5
:cond_e
new-instance v0, Lx/a;
invoke-direct {v0, v8}, Lx/a;-><init>(I)V
:goto_5
iget-object p1, p1, La0/g;->i:La0/b;
invoke-interface {p1, v0}, La0/b;->a(Lx/a;)V
iget-object p1, p0, La0/w;->a:La0/g;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
return-void
:cond_f
if-ne v0, v9, :cond_11
iget-object v0, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
instance-of v1, v0, Landroid/app/PendingIntent;
if-eqz v1, :cond_10
move-object v6, v0
check-cast v6, Landroid/app/PendingIntent;
:cond_10
new-instance v0, Lx/a;
iget p1, p1, Landroid/os/Message;->arg2:I
invoke-direct {v0, p1, v6}, Lx/a;-><init>(ILandroid/app/PendingIntent;)V
iget-object p1, p0, La0/w;->a:La0/g;
iget-object p1, p1, La0/g;->i:La0/b;
invoke-interface {p1, v0}, La0/b;->a(Lx/a;)V
iget-object p1, p0, La0/w;->a:La0/g;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
return-void
:cond_11
const/4 v1, 0x6
if-ne v0, v1, :cond_13
iget-object v0, p0, La0/w;->a:La0/g;
invoke-virtual {v0, v7, v6}, La0/g;->p(ILandroid/os/IInterface;)V
iget-object v0, p0, La0/w;->a:La0/g;
iget-object v0, v0, La0/g;->n:La0/c;
if-eqz v0, :cond_12
iget p1, p1, Landroid/os/Message;->arg2:I
iget-object v0, v0, La0/c;->a:Ljava/lang/Object;
check-cast v0, Lz/d;
invoke-interface {v0, p1}, Lz/d;->b(I)V
:cond_12
iget-object p1, p0, La0/w;->a:La0/g;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
iget-object p1, p0, La0/w;->a:La0/g;
invoke-static {p1, v7, v5, v6}, La0/g;->o(La0/g;IILandroid/os/IInterface;)Z
return-void
:cond_13
if-ne v0, v4, :cond_15
iget-object v0, p0, La0/w;->a:La0/g;
invoke-virtual {v0}, La0/g;->m()Z
move-result v0
if-eqz v0, :cond_14
goto :goto_6
:cond_14
iget-object p1, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
move-object v0, p1
check-cast v0, La0/t;
invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
monitor-enter v0
:try_start_4
iput-object v6, v0, La0/t;->a:Ljava/lang/Object;
monitor-exit v0
:try_end_4
.catchall {:try_start_4 .. :try_end_4} :catchall_3
iget-object p1, v0, La0/t;->c:La0/g;
iget-object p1, p1, La0/g;->k:Ljava/util/ArrayList;
monitor-enter p1
:try_start_5
iget-object v1, v0, La0/t;->c:La0/g;
iget-object v1, v1, La0/g;->k:Ljava/util/ArrayList;
invoke-virtual {v1, v0}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
monitor-exit p1
return-void
:catchall_2
move-exception v0
monitor-exit p1
:try_end_5
.catchall {:try_start_5 .. :try_end_5} :catchall_2
throw v0
:catchall_3
move-exception p1
:try_start_6
monitor-exit v0
:try_end_6
.catchall {:try_start_6 .. :try_end_6} :catchall_3
throw p1
:goto_6
:cond_15
iget v0, p1, Landroid/os/Message;->what:I
if-eq v0, v4, :cond_16
if-eq v0, v5, :cond_16
if-ne v0, v3, :cond_17
:cond_16
const/4 v2, 0x1
:cond_17
if-eqz v2, :cond_1a
iget-object p1, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
check-cast p1, La0/t;
monitor-enter p1
:try_start_7
iget-object v0, p1, La0/t;->a:Ljava/lang/Object;
iget-boolean v1, p1, La0/t;->b:Z
if-eqz v1, :cond_18
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v1
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Callback proxy "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, " being reused. This is not safe."
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "GmsClient"
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v1, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
:cond_18
monitor-exit p1
:try_end_7
.catchall {:try_start_7 .. :try_end_7} :catchall_7
if-eqz v0, :cond_19
:try_start_8
invoke-virtual {p1}, La0/t;->a()V
:try_end_8
.catch Ljava/lang/RuntimeException; {:try_start_8 .. :try_end_8} :catch_1
goto :goto_7
:catch_1
move-exception p1
throw p1
:cond_19
:goto_7
monitor-enter p1
:try_start_9
iput-boolean v5, p1, La0/t;->b:Z
monitor-exit p1
:try_end_9
.catchall {:try_start_9 .. :try_end_9} :catchall_6
monitor-enter p1
:try_start_a
iput-object v6, p1, La0/t;->a:Ljava/lang/Object;
monitor-exit p1
:try_end_a
.catchall {:try_start_a .. :try_end_a} :catchall_5
iget-object v0, p1, La0/t;->c:La0/g;
iget-object v0, v0, La0/g;->k:Ljava/util/ArrayList;
monitor-enter v0
:try_start_b
iget-object v1, p1, La0/t;->c:La0/g;
iget-object v1, v1, La0/g;->k:Ljava/util/ArrayList;
invoke-virtual {v1, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
monitor-exit v0
return-void
:catchall_4
move-exception p1
monitor-exit v0
:try_end_b
.catchall {:try_start_b .. :try_end_b} :catchall_4
throw p1
:catchall_5
move-exception v0
:try_start_c
monitor-exit p1
:try_end_c
.catchall {:try_start_c .. :try_end_c} :catchall_5
throw v0
:catchall_6
move-exception v0
:try_start_d
monitor-exit p1
:try_end_d
.catchall {:try_start_d .. :try_end_d} :catchall_6
throw v0
:catchall_7
move-exception v0
:try_start_e
monitor-exit p1
:try_end_e
.catchall {:try_start_e .. :try_end_e} :catchall_7
throw v0
:cond_1a
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Don\'t know how to handle message: "
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
new-instance v0, Ljava/lang/Exception;
invoke-direct {v0}, Ljava/lang/Exception;-><init>()V
const-string v1, "GmsClient"
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {v1, p1, v0}, Landroid/util/Log;->wtf(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
return-void
:cond_1b
iget-object p1, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
check-cast p1, La0/t;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
monitor-enter p1
:try_start_f
iput-object v6, p1, La0/t;->a:Ljava/lang/Object;
monitor-exit p1
:try_end_f
.catchall {:try_start_f .. :try_end_f} :catchall_9
iget-object v0, p1, La0/t;->c:La0/g;
iget-object v0, v0, La0/g;->k:Ljava/util/ArrayList;
monitor-enter v0
:try_start_10
iget-object v1, p1, La0/t;->c:La0/g;
iget-object v1, v1, La0/g;->k:Ljava/util/ArrayList;
invoke-virtual {v1, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
monitor-exit v0
return-void
:catchall_8
move-exception p1
monitor-exit v0
:try_end_10
.catchall {:try_start_10 .. :try_end_10} :catchall_8
throw p1
:catchall_9
move-exception v0
:try_start_11
monitor-exit p1
:try_end_11
.catchall {:try_start_11 .. :try_end_11} :catchall_9
throw v0
.end method