$r8$backportedMethods$utility$Long$2$toUnsignedStringWithRadix.smali

.class public synthetic L$r8$backportedMethods$utility$Long$2$toUnsignedStringWithRadix;
.super Ljava/lang/Object;


# direct methods
.method public static synthetic toUnsignedString(JI)Ljava/lang/String;
    .registers 13

    const-wide/16 v0, 0x0

    cmp-long v2, p0, v0

    if-nez v2, :cond_9

    const-string p0, "0"

    return-object p0

    :cond_9
    cmp-long v2, p0, v0

    if-lez v2, :cond_12

    invoke-static {p0, p1, p2}, Ljava/lang/Long;->toString(JI)Ljava/lang/String;

    move-result-object p0

    return-object p0

    :cond_12
    const/4 v2, 0x2

    if-lt p2, v2, :cond_19

    const/16 v2, 0x24

    if-le p2, v2, :cond_1b

    :cond_19
    const/16 p2, 0xa

    :cond_1b
    const/16 v2, 0x40

    new-array v3, v2, [C

    add-int/lit8 v4, p2, -0x1

    and-int v5, p2, v4

    if-nez v5, :cond_3b

    invoke-static {p2}, Ljava/lang/Integer;->numberOfTrailingZeros(I)I

    move-result v5

    const/16 v6, 0x40

    :cond_2b
    add-int/lit8 v6, v6, -0x1

    long-to-int v7, p0

    and-int/2addr v7, v4

    invoke-static {v7, p2}, Ljava/lang/Character;->forDigit(II)C

    move-result v7

    aput-char v7, v3, v6

    ushr-long/2addr p0, v5

    cmp-long v7, p0, v0

    if-nez v7, :cond_2b

    goto :goto_6b

    :cond_3b
    and-int/lit8 v4, p2, 0x1

    if-nez v4, :cond_47

    const/4 v4, 0x1

    ushr-long v4, p0, v4

    ushr-int/lit8 v6, p2, 0x1

    int-to-long v6, v6

    div-long/2addr v4, v6

    goto :goto_4c

    :cond_47
    int-to-long v4, p2

    invoke-static {p0, p1, v4, v5}, L$r8$backportedMethods$utility$Long$2$divideUnsigned;->divideUnsigned(JJ)J

    move-result-wide v4

    :goto_4c
    int-to-long v6, p2

    mul-long v8, v4, v6

    sub-long/2addr p0, v8

    const/16 v8, 0x3f

    long-to-int p1, p0

    invoke-static {p1, p2}, Ljava/lang/Character;->forDigit(II)C

    move-result p0

    aput-char p0, v3, v8

    :goto_59
    cmp-long p0, v4, v0

    if-lez p0, :cond_6a

    add-int/lit8 v8, v8, -0x1

    rem-long p0, v4, v6

    long-to-int p1, p0

    invoke-static {p1, p2}, Ljava/lang/Character;->forDigit(II)C

    move-result p0

    aput-char p0, v3, v8

    div-long/2addr v4, v6

    goto :goto_59

    :cond_6a
    move v6, v8

    :goto_6b
    new-instance p0, Ljava/lang/String;

    sub-int/2addr v2, v6

    invoke-direct {p0, v3, v6, v2}, Ljava/lang/String;-><init>([CII)V

    return-object p0
.end method