File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    00283cf0
    00283cf0crypto/ecdh.x25519ScalarMult: ; void crypto/ecdh.x25519ScalarMult(struct []uint8 dst, struct []uint8 scalar, struct []uint8 point)
    00283cf0ldr x16, [x28+16]
    00283cf4sub x17, sp, 432
    00283cf8subs xzr, x17, x16
    00283cfcb.ls 0x284164
    00283d00sub x20, sp, 560
    00283d04stp x29, x30, [x20-8]
    00283d08add sp, x20, 0
    00283d0csub x29, sp, 8
    00283d10str x0, [sp+568]
    00283d14str x1, [sp+576]
    00283d18str x2, [sp+584]
    00283d1cstr x3, [sp+592]
    00283d20str x4, [sp+600]
    00283d24str x5, [sp+608]
    00283d28str x6, [sp+616]
    00283d2cstr x7, [sp+624]
    00283d30str x8, [sp+632]
    00283d34add x27, sp, 47
    00283d38stp xzr, xzr, [x27]
    00283d3cadd x27, sp, 63
    00283d40stp xzr, xzr, [x27]
    00283d44add x4, sp, 47
    00283d48ldrsb x27, [x4]
    00283d4cb 0x283d50
    00283d50
    00283d50loc_283d50:
    00283d50str x4, [sp+528]
    00283d54orr x4, xzr, 32
    00283d58str x4, [sp+536]
    00283d5cstr x4, [sp+544]
    00283d60ldr x5, [sp+592]
    00283d64ldr x6, [sp+600]
    00283d68ldr x7, [sp+608]
    00283d6cstr x5, [sp+504]
    00283d70str x6, [sp+512]
    00283d74str x7, [sp+520]
    00283d78ldr x5, [sp+528]
    00283d7cldr x6, [sp+536]
    00283d80ldr x7, [sp+544]
    00283d84str x5, [sp+480]
    00283d88str x6, [sp+488]
    00283d8cstr x7, [sp+496]
    00283d90ldr x5, [sp+512]
    00283d94ldr x6, [sp+504]
    00283d98ldr x7, [sp+520]
    00283d9cstr x6, [sp+456]
    00283da0str x5, [sp+464]
    00283da4str x7, [sp+472]
    00283da8ldr x6, [sp+488]
    00283dacstr x6, [sp+400]
    00283db0subs xzr, x5, x6
    00283db4b.lt 0x283dbc
    00283db8b 0x283dc4
    00283dbc
    00283dbcloc_283dbc:
    00283dbcstr x5, [sp+400]
    00283dc0b 0x283dc8
    00283dc4
    00283dc4loc_283dc4:
    00283dc4b 0x283dc8
    00283dc8
    00283dc8loc_283dc8:
    00283dc8ldr x5, [sp+456]
    00283dccldr x6, [sp+480]
    00283dd0subs xzr, x6, x5
    00283dd4b.ne 0x283ddc
    00283dd8b 0x283df8
    00283ddc
    00283ddcloc_283ddc:
    00283ddcldr x3, [sp+400]
    00283de0str x3, [sp+392]
    00283de4ldr x2, [sp+392]
    00283de8ldr x1, [sp+456]
    00283decldr x0, [sp+480]
    00283df0bl runtime.memmove
    00283df4b 0x283dfc
    00283df8
    00283df8loc_283df8:
    00283df8b 0x283dfc
    00283dfc
    00283dfcloc_283dfc:
    00283dfcldrb w4, [sp+47]
    00283e00and x4, x4, -8
    00283e04strb w4, [sp+47]
    00283e08ldrb w4, [sp+78]
    00283e0cand x4, x4, 127
    00283e10strb w4, [sp+78]
    00283e14orr x4, x4, 64
    00283e18strb w4, [sp+78]
    00283e1cstp xzr, xzr, [sp+240]
    00283e20stp xzr, xzr, [sp+256]
    00283e24str xzr, [sp+272]
    00283e28stp xzr, xzr, [sp+200]
    00283e2cstp xzr, xzr, [sp+216]
    00283e30str xzr, [sp+232]
    00283e34stp xzr, xzr, [sp+120]
    00283e38stp xzr, xzr, [sp+136]
    00283e3cstr xzr, [sp+152]
    00283e40stp xzr, xzr, [sp+160]
    00283e44stp xzr, xzr, [sp+176]
    00283e48str xzr, [sp+192]
    00283e4cstp xzr, xzr, [sp+80]
    00283e50stp xzr, xzr, [sp+96]
    00283e54str xzr, [sp+112]
    00283e58stp xzr, xzr, [sp+320]
    00283e5cstp xzr, xzr, [sp+336]
    00283e60str xzr, [sp+352]
    00283e64stp xzr, xzr, [sp+280]
    00283e68stp xzr, xzr, [sp+296]
    00283e6cstr xzr, [sp+312]
    00283e70ldr x1, [sp+616]
    00283e74ldr x2, [sp+624]
    00283e78ldr x3, [sp+632]
    00283e7cstr x1, [sp+504]
    00283e80str x2, [sp+512]
    00283e84str x3, [sp+520]
    00283e88add x0, sp, 240
    00283e8cbl crypto/internal/fips140/edwards25519/field.(*Element).SetBytes
    00283e90add x0, sp, 200
    00283e94bl crypto/internal/fips140/edwards25519/field.(*Element).One
    00283e98add x0, sp, 160
    00283e9cadd x1, sp, 240
    00283ea0bl crypto/internal/fips140/edwards25519/field.(*Element).Set
    00283ea4add x0, sp, 80
    00283ea8bl crypto/internal/fips140/edwards25519/field.(*Element).One
    00283eacstr xzr, [sp+360]
    00283eb0orr x4, xzr, 254
    00283eb4str x4, [sp+368]
    00283eb8b 0x283ebc
    00283ebc
    00283ebcloc_283ebc:
    00283ebcldr x3, [sp+368]
    00283ec0tbz x3, 63, 0x283ec8
    00283ec4b 0x284060
    00283ec8
    00283ec8loc_283ec8:
    00283ec8ldr x3, [sp+368]
    00283eccsbfm x4, x3, 63, 63
    00283ed0add x3, x3, x4, lsr #61
    00283ed4sbfm x0, x3, 3, 63
    00283ed8subs xzr, x0, 32
    00283edcb.lo 0x283ee4
    00283ee0b 0x284158
    00283ee4
    00283ee4loc_283ee4:
    00283ee4add x3, sp, 47
    00283ee8ldrb w3, [x3+x0]
    00283eecldr x4, [sp+368]
    00283ef0and x4, x4, 7
    00283ef4lsrv x3, x3, x4
    00283ef8strb w3, [sp+79]
    00283efcand x4, x3, 1
    00283f00strb w4, [sp+79]
    00283f04ldr x4, [sp+360]
    00283f08and x3, x3, 1
    00283f0ceor x2, x4, x3
    00283f10str x2, [sp+360]
    00283f14add x0, sp, 200
    00283f18add x1, sp, 160
    00283f1cbl crypto/internal/fips140/edwards25519/field.(*Element).Swap
    00283f20ldr x2, [sp+360]
    00283f24add x0, sp, 120
    00283f28add x1, sp, 80
    00283f2cbl crypto/internal/fips140/edwards25519/field.(*Element).Swap
    00283f30ldrb w3, [sp+79]
    00283f34str x3, [sp+360]
    00283f38add x0, sp, 320
    00283f3cadd x1, sp, 160
    00283f40add x2, sp, 80
    00283f44bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00283f48add x0, sp, 280
    00283f4cadd x1, sp, 200
    00283f50add x2, sp, 120
    00283f54bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00283f58add x0, sp, 200
    00283f5cadd x1, sp, 200
    00283f60add x2, sp, 120
    00283f64bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00283f68add x0, sp, 120
    00283f6cadd x1, sp, 160
    00283f70add x2, sp, 80
    00283f74bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00283f78add x0, sp, 80
    00283f7cadd x1, sp, 320
    00283f80add x2, sp, 200
    00283f84bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00283f88add x0, sp, 120
    00283f8cadd x1, sp, 120
    00283f90add x2, sp, 280
    00283f94bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00283f98add x0, sp, 320
    00283f9cadd x1, sp, 280
    00283fa0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
    00283fa4add x0, sp, 280
    00283fa8add x1, sp, 200
    00283facbl crypto/internal/fips140/edwards25519/field.(*Element).Square
    00283fb0add x0, sp, 160
    00283fb4add x1, sp, 80
    00283fb8add x2, sp, 120
    00283fbcbl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00283fc0add x0, sp, 120
    00283fc4add x1, sp, 80
    00283fc8add x2, sp, 120
    00283fccbl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00283fd0add x0, sp, 200
    00283fd4add x1, sp, 280
    00283fd8add x2, sp, 320
    00283fdcbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00283fe0add x0, sp, 280
    00283fe4add x1, sp, 280
    00283fe8add x2, sp, 320
    00283fecbl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00283ff0add x0, sp, 120
    00283ff4add x1, sp, 120
    00283ff8bl crypto/internal/fips140/edwards25519/field.(*Element).Square
    00283ffcadd x0, sp, 80
    00284000add x1, sp, 280
    00284004movz x2, 56130
    00284008movk x2, 0x10000
    0028400cbl crypto/internal/fips140/edwards25519/field.(*Element).Mult32
    00284010add x0, sp, 160
    00284014add x1, sp, 160
    00284018bl crypto/internal/fips140/edwards25519/field.(*Element).Square
    0028401cadd x0, sp, 320
    00284020add x1, sp, 320
    00284024add x2, sp, 80
    00284028bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    0028402cadd x0, sp, 80
    00284030add x1, sp, 240
    00284034add x2, sp, 120
    00284038bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    0028403cadd x0, sp, 120
    00284040add x1, sp, 280
    00284044add x2, sp, 320
    00284048bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    0028404cb 0x284050
    00284050
    00284050loc_284050:
    00284050ldr x3, [sp+368]
    00284054sub x3, x3, 1
    00284058str x3, [sp+368]
    0028405cb 0x283ebc
    00284060
    00284060loc_284060:
    00284060ldr x2, [sp+360]
    00284064add x0, sp, 200
    00284068add x1, sp, 160
    0028406cbl crypto/internal/fips140/edwards25519/field.(*Element).Swap
    00284070ldr x2, [sp+360]
    00284074add x0, sp, 120
    00284078add x1, sp, 80
    0028407cbl crypto/internal/fips140/edwards25519/field.(*Element).Swap
    00284080add x0, sp, 120
    00284084add x1, sp, 120
    00284088bl crypto/internal/fips140/edwards25519/field.(*Element).Invert
    0028408cadd x0, sp, 200
    00284090add x1, sp, 200
    00284094add x2, sp, 120
    00284098bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    0028409cldr x3, [sp+568]
    002840a0ldr x4, [sp+576]
    002840a4ldr x5, [sp+584]
    002840a8str x3, [sp+504]
    002840acstr x4, [sp+512]
    002840b0str x5, [sp+520]
    002840b4add x0, sp, 200
    002840b8bl crypto/internal/fips140/edwards25519/field.(*Element).Bytes
    002840bcstr x0, [sp+528]
    002840c0str x1, [sp+536]
    002840c4str x2, [sp+544]
    002840c8ldr x3, [sp+512]
    002840ccldr x4, [sp+520]
    002840d0ldr x5, [sp+504]
    002840d4str x5, [sp+432]
    002840d8str x3, [sp+440]
    002840dcstr x4, [sp+448]
    002840e0ldr x3, [sp+536]
    002840e4ldr x4, [sp+528]
    002840e8ldr x5, [sp+544]
    002840ecstr x4, [sp+408]
    002840f0str x3, [sp+416]
    002840f4str x5, [sp+424]
    002840f8ldr x4, [sp+440]
    002840fcstr x4, [sp+384]
    00284100subs xzr, x4, x3
    00284104b.gt 0x28410c
    00284108b 0x284114
    0028410c
    0028410cloc_28410c:
    0028410cstr x3, [sp+384]
    00284110b 0x284118
    00284114
    00284114loc_284114:
    00284114b 0x284118
    00284118
    00284118loc_284118:
    00284118ldr x3, [sp+408]
    0028411cldr x4, [sp+432]
    00284120subs xzr, x3, x4
    00284124b.ne 0x28412c
    00284128b 0x284148
    0028412c
    0028412cloc_28412c:
    0028412cldr x3, [sp+384]
    00284130str x3, [sp+376]
    00284134ldr x2, [sp+376]
    00284138ldr x0, [sp+432]
    0028413cldr x1, [sp+408]
    00284140bl runtime.memmove
    00284144b 0x28414c
    00284148
    00284148loc_284148:
    00284148b 0x28414c
    0028414c
    0028414cloc_28414c:
    0028414cldp x29, x30, [sp-8]
    00284150add sp, sp, 560
    00284154ret x30
    00284158
    00284158loc_284158:
    00284158orr x1, xzr, 32
    0028415cbl runtime.panicIndex
    00284160hint
    00284164
    00284164loc_284164:
    00284164stp x0, x1, [sp+8]
    00284168stp x2, x3, [sp+24]
    0028416cstp x4, x5, [sp+40]
    00284170stp x6, x7, [sp+56]
    00284174str x8, [sp+72]
    00284178mov x3, x30
    0028417cbl runtime.morestack_noctxt.abi0
    00284180ldp x0, x1, [sp+8]
    00284184ldp x2, x3, [sp+24]
    00284188ldp x4, x5, [sp+40]
    0028418cldp x6, x7, [sp+56]
    00284190ldr x8, [sp+72]
    00284194b 0x283cf0
    00284198udf 0
    0028419cudf 0
    00283cf0
    002841a0
    002841a0crypto/ecdh.isZero: ; void crypto/ecdh.isZero(struct []uint8 x)
    002841a0str x30, [sp-64]!
    002841a4stur x29, [sp-8]
    002841a8sub x29, sp, 8
    002841acstr x0, [sp+72]
    002841b0str x1, [sp+80]
    002841b4str x2, [sp+88]
    002841b8strb wzr, [sp+13]
    002841bcstrb wzr, [sp+15]
    002841c0ldr x1, [sp+80]
    002841c4ldr x2, [sp+72]
    002841c8ldr x3, [sp+88]
    002841ccstr x2, [sp+32]
    002841d0str x1, [sp+40]
    002841d4str x3, [sp+48]
    002841d8str xzr, [sp+24]
    002841dcstr x1, [sp+16]
    002841e0b 0x2841e4
    002841e4
    002841e4loc_2841e4:
    002841e4ldr x1, [sp+16]
    002841e8ldr x2, [sp+24]
    002841ecsubs xzr, x1, x2
    002841f0b.gt 0x2841f8
    002841f4b 0x284228
    002841f8
    002841f8loc_2841f8:
    002841f8ldr x1, [sp+24]
    002841fcldr x2, [sp+32]
    00284200ldrb w1, [x2+x1]
    00284204strb w1, [sp+14]
    00284208ldrb w2, [sp+15]
    0028420corr x1, x2, x1
    00284210strb w1, [sp+15]
    00284214b 0x284218
    00284218
    00284218loc_284218:
    00284218ldr x1, [sp+24]
    0028421cadd x1, x1, 1
    00284220str x1, [sp+24]
    00284224b 0x2841e4
    00284228
    00284228loc_284228:
    00284228ldrb w1, [sp+15]
    0028422csubs wzr, w1, 0
    00284230cset x0, eq
    00284234strb w0, [sp+13]
    00284238add x29, sp, 56
    0028423cadd sp, sp, 64
    00284240ret x30
    00284244udf 0
    00284248udf 0
    0028424cudf 0
    002841a0
    00284250
    00284250math/big.init: ; void math/big.init(void)
    00284250ldr x16, [x28+16]
    00284254subs xzr, sp, x16
    00284258b.ls 0x28430c
    0028425cstr x30, [sp-32]!
    00284260stur x29, [sp-8]
    00284264sub x29, sp, 8
    00284268adrp x0, 0x432000
    0028426cadd x0, x0, 3827
    00284270movz x1, 20
    00284274bl errors.New
    00284278adrp x27, 0x79d000
    0028427cstr x0, [x27+3776]
    00284280adrp x27, 0x7c7000
    00284284ldr w2, [x27+3056]
    00284288cbz w2, 0x284290
    0028428cb 0x284294
    00284290
    00284290loc_284290:
    00284290b 0x2842ac
    00284294
    00284294loc_284294:
    00284294bl runtime.gcWriteBarrier2
    00284298str x1, [x25]
    0028429cadrp x27, 0x79d000
    002842a0ldr x2, [x27+3784]
    002842a4str x2, [x25+8]
    002842a8b 0x2842ac
    002842ac
    002842acloc_2842ac:
    002842acadrp x27, 0x79d000
    002842b0str x1, [x27+3784]
    002842b4adrp x0, 0x43c000
    002842b8add x0, x0, 3821
    002842bcmovz x1, 35
    002842c0bl errors.New
    002842c4adrp x27, 0x79d000
    002842c8str x0, [x27+3792]
    002842ccadrp x27, 0x7c7000
    002842d0ldr w2, [x27+3056]
    002842d4cbz w2, 0x2842dc
    002842d8b 0x2842e0
    002842dc
    002842dcloc_2842dc:
    002842dcb 0x2842f8
    002842e0
    002842e0loc_2842e0:
    002842e0bl runtime.gcWriteBarrier2
    002842e4str x1, [x25]
    002842e8adrp x27, 0x79d000
    002842ecldr x0, [x27+3800]
    002842f0str x0, [x25+8]
    002842f4b 0x2842f8
    002842f8
    002842f8loc_2842f8:
    002842f8adrp x27, 0x79d000
    002842fcstr x1, [x27+3800]
    00284300ldur x29, [sp-8]
    00284304ldr x30, [sp], 32
    00284308ret x30
    0028430c
    0028430cloc_28430c:
    0028430cmov x3, x30
    00284310bl runtime.morestack_noctxt.abi0
    00284314b 0x284250
    00284318udf 0
    0028431cudf 0
    00284250
    00284320
    00284320math/big.nlz: ; void math/big.nlz(math/big.Word x)
    00284320ldr x16, [x28+16]
    00284324subs xzr, sp, x16
    00284328b.ls 0x28435c
    0028432cstr x30, [sp-48]!
    00284330stur x29, [sp-8]
    00284334sub x29, sp, 8
    00284338str x0, [sp+56]
    0028433cstr xzr, [sp+24]
    00284340bl math/bits.LeadingZeros
    00284344str x0, [sp+32]
    00284348str x0, [sp+24]
    0028434cldr x0, [sp+24]
    00284350ldur x29, [sp-8]
    00284354ldr x30, [sp], 48
    00284358ret x30
    0028435c
    0028435cloc_28435c:
    0028435cstr x0, [sp+8]
    00284360mov x3, x30
    00284364bl runtime.morestack_noctxt.abi0
    00284368ldr x0, [sp+8]
    0028436cb 0x284320
    00284320
    00284370
    00284370math/big.divWW: ; void math/big.divWW(math/big.Word x1, math/big.Word x0, math/big.Word y, math/big.Word m)
    00284370ldr x16, [x28+16]
    00284374sub x17, sp, 112
    00284378subs xzr, x17, x16
    0028437cb.ls 0x2845c4
    00284380str x30, [sp-240]!
    00284384stur x29, [sp-8]
    00284388sub x29, sp, 8
    0028438cstr x0, [sp+248]
    00284390str x1, [sp+256]
    00284394str x2, [sp+264]
    00284398str x3, [sp+272]
    0028439cstr xzr, [sp+72]
    002843a0str xzr, [sp+56]
    002843a4mov x0, x2
    002843a8bl math/big.nlz
    002843acstr x0, [sp+32]
    002843b0cbnz x0, 0x2843b8
    002843b4b 0x284414
    002843b8
    002843b8loc_2843b8:
    002843b8ldr x2, [sp+248]
    002843bclslv x2, x2, x0
    002843c0ldr x3, [sp+256]
    002843c4orr x4, xzr, 64
    002843c8sub x4, x4, x0
    002843cclsrv x3, x3, x4
    002843d0subs xzr, x0, 64
    002843d4csel x2, x2, xzr, lo
    002843d8subs xzr, x4, 64
    002843dccsel x3, x3, xzr, lo
    002843e0orr x2, x2, x3
    002843e4str x2, [sp+248]
    002843e8ldr x2, [sp+256]
    002843eclslv x2, x2, x0
    002843f0subs xzr, x0, 64
    002843f4csel x2, x2, xzr, lo
    002843f8str x2, [sp+256]
    002843fcldr x2, [sp+264]
    00284400lslv x2, x2, x0
    00284404subs xzr, x0, 64
    00284408csel x2, x2, xzr, lo
    0028440cstr x2, [sp+264]
    00284410b 0x284418
    00284414
    00284414loc_284414:
    00284414b 0x284418
    00284418
    00284418loc_284418:
    00284418ldr x2, [sp+264]
    0028441cstr x2, [sp+96]
    00284420ldr x2, [sp+272]
    00284424ldr x3, [sp+248]
    00284428madd x4, x2, x3, xzr
    0028442cumulh x2, x2, x3
    00284430str x2, [sp+128]
    00284434str x4, [sp+120]
    00284438str x2, [sp+224]
    0028443cstr x4, [sp+216]
    00284440str x2, [sp+16]
    00284444str x4, [sp+24]
    00284448ldr x2, [sp+256]
    0028444cadds x3, x4, x2
    00284450adc x3, xzr, xzr
    00284454adds x5, x4, x2
    00284458str x5, [sp+120]
    0028445cstr x3, [sp+128]
    00284460str x5, [sp+208]
    00284464str x3, [sp+200]
    00284468str x3, [sp+104]
    0028446cldr x3, [sp+16]
    00284470ldr x5, [sp+248]
    00284474adds x6, x4, x2
    00284478adcs x6, x3, x5
    0028447cadds x6, x4, x2
    00284480adcs x6, x3, x5
    00284484str x6, [sp+128]
    00284488adds x2, x4, x2
    0028448cadcs x2, x3, x5
    00284490adc x2, xzr, xzr
    00284494str x2, [sp+120]
    00284498str x6, [sp+192]
    0028449cstr x2, [sp+184]
    002844a0str x6, [sp+16]
    002844a4str x6, [sp+64]
    002844a8ldr x2, [sp+96]
    002844acmadd x3, x2, x6, xzr
    002844b0umulh x2, x2, x6
    002844b4str x2, [sp+120]
    002844b8str x3, [sp+128]
    002844bcstr x2, [sp+176]
    002844c0str x3, [sp+168]
    002844c4str x2, [sp+80]
    002844c8str x3, [sp+88]
    002844ccldr x2, [sp+256]
    002844d0subs x4, x2, x3
    002844d4sbc x4, xzr, xzr
    002844d8sub x4, xzr, x4
    002844dcsubs x5, x2, x3
    002844e0str x5, [sp+128]
    002844e4str x4, [sp+120]
    002844e8str x5, [sp+160]
    002844ecstr x4, [sp+152]
    002844f0str x5, [sp+48]
    002844f4str x4, [sp+112]
    002844f8ldr x4, [sp+80]
    002844fcldr x5, [sp+248]
    00284500subs x6, x2, x3
    00284504sbcs x6, x5, x4
    00284508sbc x6, xzr, xzr
    0028450csub x6, xzr, x6
    00284510subs x2, x2, x3
    00284514sbcs x2, x5, x4
    00284518str x2, [sp+120]
    0028451cstr x6, [sp+128]
    00284520str x2, [sp+144]
    00284524str x6, [sp+136]
    00284528str x2, [sp+40]
    0028452ccbnz x2, 0x284534
    00284530b 0x284554
    00284534
    00284534loc_284534:
    00284534ldr x2, [sp+64]
    00284538add x2, x2, 1
    0028453cstr x2, [sp+64]
    00284540ldr x2, [sp+96]
    00284544ldr x3, [sp+48]
    00284548sub x2, x3, x2
    0028454cstr x2, [sp+48]
    00284550b 0x284558
    00284554
    00284554loc_284554:
    00284554b 0x284558
    00284558
    00284558loc_284558:
    00284558ldr x2, [sp+96]
    0028455cldr x3, [sp+48]
    00284560subs xzr, x2, x3
    00284564b.ls 0x28456c
    00284568b 0x28458c
    0028456c
    0028456cloc_28456c:
    0028456cldr x2, [sp+64]
    00284570add x2, x2, 1
    00284574str x2, [sp+64]
    00284578ldr x2, [sp+96]
    0028457cldr x3, [sp+48]
    00284580sub x2, x3, x2
    00284584str x2, [sp+48]
    00284588b 0x284590
    0028458c
    0028458cloc_28458c:
    0028458cb 0x284590
    00284590
    00284590loc_284590:
    00284590ldr x2, [sp+64]
    00284594str x2, [sp+72]
    00284598ldr x2, [sp+32]
    0028459cldr x3, [sp+48]
    002845a0lsrv x3, x3, x2
    002845a4subs xzr, x2, 64
    002845a8csel x2, x3, xzr, lo
    002845acstr x2, [sp+56]
    002845b0ldr x0, [sp+72]
    002845b4ldr x1, [sp+56]
    002845b8ldur x29, [sp-8]
    002845bcldr x30, [sp], 240
    002845c0ret x30
    002845c4
    002845c4loc_2845c4:
    002845c4stp x0, x1, [sp+8]
    002845c8stp x2, x3, [sp+24]
    002845ccmov x3, x30
    002845d0bl runtime.morestack_noctxt.abi0
    002845d4ldp x0, x1, [sp+8]
    002845d8ldp x2, x3, [sp+24]
    002845dcb 0x284370
    00284370
    002845e0
    002845e0math/big.reciprocalWord: ; void math/big.reciprocalWord(math/big.Word d1)
    002845e0ldr x16, [x28+16]
    002845e4subs xzr, sp, x16
    002845e8b.ls 0x284660
    002845ecstr x30, [sp-112]!
    002845f0stur x29, [sp-8]
    002845f4sub x29, sp, 8
    002845f8str x0, [sp+120]
    002845fcstr xzr, [sp+32]
    00284600bl math/big.nlz
    00284604str x0, [sp+80]
    00284608ldr x1, [sp+120]
    0028460clslv x1, x1, x0
    00284610subs xzr, x0, 64
    00284614csel x1, x1, xzr, lo
    00284618str x1, [sp+56]
    0028461cldr x1, [sp+56]
    00284620orn x0, xzr, x1
    00284624str x0, [sp+40]
    00284628movn x1, 0
    0028462cstr x1, [sp+48]
    00284630ldr x2, [sp+56]
    00284634bl math/bits.Div
    00284638str x0, [sp+80]
    0028463cstr x1, [sp+72]
    00284640str x0, [sp+96]
    00284644str x1, [sp+88]
    00284648str x0, [sp+64]
    0028464cstr x0, [sp+32]
    00284650ldr x0, [sp+32]
    00284654ldur x29, [sp-8]
    00284658ldr x30, [sp], 112
    0028465cret x30
    00284660
    00284660loc_284660:
    00284660str x0, [sp+8]
    00284664mov x3, x30
    00284668bl runtime.morestack_noctxt.abi0
    0028466cldr x0, [sp+8]
    00284670b 0x2845e0
    00284674udf 0
    00284678udf 0
    0028467cudf 0
    002845e0
    00284680
    00284680math/big.(*Int).Sign: ; void math/big.(*Int).Sign(math/big.Int * x)
    00284680str x30, [sp-32]!
    00284684stur x29, [sp-8]
    00284688sub x29, sp, 8
    0028468cstr x0, [sp+40]
    00284690str xzr, [sp+8]
    00284694ldrsb x27, [x0]
    00284698ldr x1, [x0+16]
    0028469cstr x1, [sp+16]
    002846a0cbz x1, 0x2846a8
    002846a4b 0x2846bc
    002846a8
    002846a8loc_2846a8:
    002846a8str xzr, [sp+8]
    002846acmov x0, xzr
    002846b0add x29, sp, 24
    002846b4add sp, sp, 32
    002846b8ret x30
    002846bc
    002846bcloc_2846bc:
    002846bcldrsb x27, [x0]
    002846c0ldrb w1, [x0]
    002846c4tbnz w1, 0, 0x2846cc
    002846c8b 0x2846e0
    002846cc
    002846ccloc_2846cc:
    002846ccmovn x0, 0
    002846d0str x0, [sp+8]
    002846d4add x29, sp, 24
    002846d8add sp, sp, 32
    002846dcret x30
    002846e0
    002846e0loc_2846e0:
    002846e0orr x0, xzr, 1
    002846e4str x0, [sp+8]
    002846e8add x29, sp, 24
    002846ecadd sp, sp, 32
    002846f0ret x30
    002846f4udf 0
    002846f8udf 0
    002846fcudf 0
    00284680
    00284700
    00284700math/big.(*Int).SetInt64: ; void math/big.(*Int).SetInt64(math/big.Int * z, int64 x)
    00284700ldr x16, [x28+16]
    00284704subs xzr, sp, x16
    00284708b.ls 0x2847e4
    0028470cstr x30, [sp-112]!
    00284710stur x29, [sp-8]
    00284714sub x29, sp, 8
    00284718str x0, [sp+120]
    0028471cstr x1, [sp+128]
    00284720str xzr, [sp+48]
    00284724strb wzr, [sp+47]
    00284728ldr x4, [sp+128]
    0028472ctbnz x4, 63, 0x284734
    00284730b 0x28474c
    00284734
    00284734loc_284734:
    00284734orr x4, xzr, 1
    00284738strb w4, [sp+47]
    0028473cldr x4, [sp+128]
    00284740sub x4, xzr, x4
    00284744str x4, [sp+128]
    00284748b 0x284750
    0028474c
    0028474cloc_28474c:
    0028474cb 0x284750
    00284750
    00284750loc_284750:
    00284750ldr x4, [sp+120]
    00284754ldrsb x27, [x4]
    00284758ldr x0, [x4+8]
    0028475cldr x1, [x4+16]
    00284760ldr x2, [x4+24]
    00284764str x0, [sp+56]
    00284768str x1, [sp+64]
    0028476cstr x2, [sp+72]
    00284770ldr x3, [sp+128]
    00284774bl math/big.nat.setUint64
    00284778str x0, [sp+80]
    0028477cstr x1, [sp+88]
    00284780str x2, [sp+96]
    00284784ldr x4, [sp+120]
    00284788ldrsb x27, [x4]
    0028478cstr x1, [x4+16]
    00284790str x2, [x4+24]
    00284794adrp x27, 0x7c7000
    00284798ldr w5, [x27+3056]
    0028479ccbz w5, 0x2847a4
    002847a0b 0x2847a8
    002847a4
    002847a4loc_2847a4:
    002847a4b 0x2847bc
    002847a8
    002847a8loc_2847a8:
    002847a8bl runtime.gcWriteBarrier2
    002847acstr x0, [x25]
    002847b0ldr x1, [x4+8]
    002847b4str x1, [x25+8]
    002847b8b 0x2847bc
    002847bc
    002847bcloc_2847bc:
    002847bcstr x0, [x4+8]
    002847c0ldr x1, [sp+120]
    002847c4ldrsb x27, [x1]
    002847c8ldrb w2, [sp+47]
    002847ccstrb w2, [x1]
    002847d0ldr x0, [sp+120]
    002847d4str x0, [sp+48]
    002847d8ldur x29, [sp-8]
    002847dcldr x30, [sp], 112
    002847e0ret x30
    002847e4
    002847e4loc_2847e4:
    002847e4stp x0, x1, [sp+8]
    002847e8mov x3, x30
    002847ecbl runtime.morestack_noctxt.abi0
    002847f0ldp x0, x1, [sp+8]
    002847f4b 0x284700
    002847f8udf 0
    002847fcudf 0
    00284700
    00284800
    00284800math/big.(*Int).SetUint64: ; void math/big.(*Int).SetUint64(math/big.Int * z, uint64 x)
    00284800ldr x16, [x28+16]
    00284804subs xzr, sp, x16
    00284808b.ls 0x2848b4
    0028480cstr x30, [sp-112]!
    00284810stur x29, [sp-8]
    00284814sub x29, sp, 8
    00284818str x0, [sp+120]
    0028481cstr x1, [sp+128]
    00284820str xzr, [sp+48]
    00284824ldr x4, [sp+120]
    00284828ldrsb x27, [x4]
    0028482cldr x0, [x4+8]
    00284830ldr x1, [x4+16]
    00284834ldr x2, [x4+24]
    00284838str x0, [sp+56]
    0028483cstr x1, [sp+64]
    00284840str x2, [sp+72]
    00284844ldr x3, [sp+128]
    00284848bl math/big.nat.setUint64
    0028484cstr x0, [sp+80]
    00284850str x1, [sp+88]
    00284854str x2, [sp+96]
    00284858ldr x4, [sp+120]
    0028485cldrsb x27, [x4]
    00284860str x1, [x4+16]
    00284864str x2, [x4+24]
    00284868adrp x27, 0x7c7000
    0028486cldr w5, [x27+3056]
    00284870cbz w5, 0x284878
    00284874b 0x28487c
    00284878
    00284878loc_284878:
    00284878b 0x284890
    0028487c
    0028487cloc_28487c:
    0028487cbl runtime.gcWriteBarrier2
    00284880str x0, [x25]
    00284884ldr x1, [x4+8]
    00284888str x1, [x25+8]
    0028488cb 0x284890
    00284890
    00284890loc_284890:
    00284890str x0, [x4+8]
    00284894ldr x1, [sp+120]
    00284898ldrsb x27, [x1]
    0028489cstrb wzr, [x1]
    002848a0ldr x0, [sp+120]
    002848a4str x0, [sp+48]
    002848a8ldur x29, [sp-8]
    002848acldr x30, [sp], 112
    002848b0ret x30
    002848b4
    002848b4loc_2848b4:
    002848b4stp x0, x1, [sp+8]
    002848b8mov x3, x30
    002848bcbl runtime.morestack_noctxt.abi0
    002848c0ldp x0, x1, [sp+8]
    002848c4b 0x284800
    002848c8udf 0
    002848ccudf 0
    00284800
    002848d0
    002848d0math/big.NewInt: ; void math/big.NewInt(int64 x)
    002848d0ldr x16, [x28+16]
    002848d4subs xzr, sp, x16
    002848d8b.ls 0x2849e4
    002848dcstr x30, [sp-96]!
    002848e0stur x29, [sp-8]
    002848e4sub x29, sp, 8
    002848e8str x0, [sp+104]
    002848ecstr xzr, [sp+40]
    002848f0ldr x1, [sp+104]
    002848f4str x1, [sp+32]
    002848f8ldr x1, [sp+104]
    002848fctbnz x1, 63, 0x284904
    00284900b 0x284914
    00284904
    00284904loc_284904:
    00284904ldr x1, [sp+32]
    00284908sub x1, xzr, x1
    0028490cstr x1, [sp+32]
    00284910b 0x284918
    00284914
    00284914loc_284914:
    00284914b 0x284918
    00284918
    00284918loc_284918:
    00284918str xzr, [sp+48]
    0028491cstp xzr, xzr, [sp+56]
    00284920ldr x1, [sp+104]
    00284924cbz x1, 0x28492c
    00284928b 0x284930
    0028492c
    0028492cloc_28492c:
    0028492cb 0x284968
    00284930
    00284930loc_284930:
    00284930adrp x0, 0x381000
    00284934add x0, x0, 2560
    00284938bl runtime.newobject
    0028493cstr x0, [sp+80]
    00284940ldr x1, [sp+32]
    00284944str x1, [x0]
    00284948ldr x1, [sp+80]
    0028494cldrsb x27, [x1]
    00284950b 0x284954
    00284954
    00284954loc_284954:
    00284954str x1, [sp+48]
    00284958orr x1, xzr, 1
    0028495cstr x1, [sp+56]
    00284960str x1, [sp+64]
    00284964b 0x284968
    00284968
    00284968loc_284968:
    00284968adrp x0, 0x3c1000
    0028496cadd x0, x0, 1024
    00284970bl runtime.newobject
    00284974str x0, [sp+72]
    00284978ldr x1, [sp+104]
    0028497csubs xzr, x1, 0
    00284980cset x1, lt
    00284984strb w1, [x0]
    00284988ldr x1, [sp+72]
    0028498cldrsb x27, [x1]
    00284990ldr x2, [sp+48]
    00284994ldr x3, [sp+56]
    00284998ldr x4, [sp+64]
    0028499cstr x3, [x1+16]
    002849a0str x4, [x1+24]
    002849a4adrp x27, 0x7c7000
    002849a8ldr w3, [x27+3056]
    002849accbz w3, 0x2849b4
    002849b0b 0x2849b8
    002849b4
    002849b4loc_2849b4:
    002849b4b 0x2849cc
    002849b8
    002849b8loc_2849b8:
    002849b8bl runtime.gcWriteBarrier2
    002849bcstr x2, [x25]
    002849c0ldr x3, [x1+8]
    002849c4str x3, [x25+8]
    002849c8b 0x2849cc
    002849cc
    002849ccloc_2849cc:
    002849ccstr x2, [x1+8]
    002849d0ldr x0, [sp+72]
    002849d4str x0, [sp+40]
    002849d8ldur x29, [sp-8]
    002849dcldr x30, [sp], 96
    002849e0ret x30
    002849e4
    002849e4loc_2849e4:
    002849e4str x0, [sp+8]
    002849e8mov x3, x30
    002849ecbl runtime.morestack_noctxt.abi0
    002849f0ldr x0, [sp+8]
    002849f4b 0x2848d0
    002849f8udf 0
    002849fcudf 0
    002848d0
    00284a00
    00284a00math/big.(*Int).Set: ; void math/big.(*Int).Set(math/big.Int * z, math/big.Int * x)
    00284a00ldr x16, [x28+16]
    00284a04sub x17, sp, 16
    00284a08subs xzr, x17, x16
    00284a0cb.ls 0x284b08
    00284a10str x30, [sp-144]!
    00284a14stur x29, [sp-8]
    00284a18sub x29, sp, 8
    00284a1cstr x0, [sp+152]
    00284a20str x1, [sp+160]
    00284a24str xzr, [sp+56]
    00284a28ldr x6, [sp+160]
    00284a2cldr x7, [sp+152]
    00284a30subs xzr, x6, x7
    00284a34b.ne 0x284a3c
    00284a38b 0x284af0
    00284a3c
    00284a3cloc_284a3c:
    00284a3cldr x6, [sp+152]
    00284a40ldrsb x27, [x6]
    00284a44ldr x7, [x6+8]
    00284a48ldr x8, [x6+16]
    00284a4cldr x6, [x6+24]
    00284a50str x7, [sp+88]
    00284a54str x8, [sp+96]
    00284a58str x6, [sp+104]
    00284a5cldr x6, [sp+160]
    00284a60ldrsb x27, [x6]
    00284a64ldr x3, [x6+8]
    00284a68ldr x4, [x6+16]
    00284a6cldr x5, [x6+24]
    00284a70str x3, [sp+64]
    00284a74str x4, [sp+72]
    00284a78str x5, [sp+80]
    00284a7cldr x0, [sp+88]
    00284a80ldr x1, [sp+96]
    00284a84ldr x2, [sp+104]
    00284a88bl math/big.nat.set
    00284a8cstr x0, [sp+112]
    00284a90str x1, [sp+120]
    00284a94str x2, [sp+128]
    00284a98ldr x6, [sp+152]
    00284a9cldrsb x27, [x6]
    00284aa0str x1, [x6+16]
    00284aa4str x2, [x6+24]
    00284aa8adrp x27, 0x7c7000
    00284aacldr w7, [x27+3056]
    00284ab0cbz w7, 0x284ab8
    00284ab4b 0x284abc
    00284ab8
    00284ab8loc_284ab8:
    00284ab8b 0x284ad0
    00284abc
    00284abcloc_284abc:
    00284abcbl runtime.gcWriteBarrier2
    00284ac0str x0, [x25]
    00284ac4ldr x1, [x6+8]
    00284ac8str x1, [x25+8]
    00284accb 0x284ad0
    00284ad0
    00284ad0loc_284ad0:
    00284ad0str x0, [x6+8]
    00284ad4ldr x1, [sp+152]
    00284ad8ldrsb x27, [x1]
    00284adcldr x2, [sp+160]
    00284ae0ldrsb x27, [x2]
    00284ae4ldrb w2, [x2]
    00284ae8strb w2, [x1]
    00284aecb 0x284af4
    00284af0
    00284af0loc_284af0:
    00284af0b 0x284af4
    00284af4
    00284af4loc_284af4:
    00284af4ldr x0, [sp+152]
    00284af8str x0, [sp+56]
    00284afcldur x29, [sp-8]
    00284b00ldr x30, [sp], 144
    00284b04ret x30
    00284b08
    00284b08loc_284b08:
    00284b08stp x0, x1, [sp+8]
    00284b0cmov x3, x30
    00284b10bl runtime.morestack_noctxt.abi0
    00284b14ldp x0, x1, [sp+8]
    00284b18b 0x284a00
    00284b1cudf 0
    00284a00
    00284b20
    00284b20math/big.(*Int).Abs: ; void math/big.(*Int).Abs(math/big.Int * z, math/big.Int * x)
    00284b20ldr x16, [x28+16]
    00284b24subs xzr, sp, x16
    00284b28b.ls 0x284b70
    00284b2cstr x30, [sp-48]!
    00284b30stur x29, [sp-8]
    00284b34sub x29, sp, 8
    00284b38str x0, [sp+56]
    00284b3cstr x1, [sp+64]
    00284b40str xzr, [sp+32]
    00284b44ldr x1, [sp+64]
    00284b48ldr x0, [sp+56]
    00284b4cbl math/big.(*Int).Set
    00284b50ldr x2, [sp+56]
    00284b54ldrsb x27, [x2]
    00284b58strb wzr, [x2]
    00284b5cldr x0, [sp+56]
    00284b60str x0, [sp+32]
    00284b64ldur x29, [sp-8]
    00284b68ldr x30, [sp], 48
    00284b6cret x30
    00284b70
    00284b70loc_284b70:
    00284b70stp x0, x1, [sp+8]
    00284b74mov x3, x30
    00284b78bl runtime.morestack_noctxt.abi0
    00284b7cldp x0, x1, [sp+8]
    00284b80b 0x284b20
    00284b84udf 0
    00284b88udf 0
    00284b8cudf 0
    00284b20
    00284b90
    00284b90math/big.(*Int).Neg: ; void math/big.(*Int).Neg(math/big.Int * z, math/big.Int * x)
    00284b90ldr x16, [x28+16]
    00284b94subs xzr, sp, x16
    00284b98b.ls 0x284c24
    00284b9cstr x30, [sp-64]!
    00284ba0stur x29, [sp-8]
    00284ba4sub x29, sp, 8
    00284ba8str x0, [sp+72]
    00284bacstr x1, [sp+80]
    00284bb0str xzr, [sp+48]
    00284bb4ldr x1, [sp+80]
    00284bb8ldr x0, [sp+72]
    00284bbcbl math/big.(*Int).Set
    00284bc0ldr x2, [sp+72]
    00284bc4ldrsb x27, [x2]
    00284bc8ldr x2, [x2+16]
    00284bccstr x2, [sp+40]
    00284bd0subs xzr, x2, 0
    00284bd4cset x3, ne
    00284bd8strb w3, [sp+39]
    00284bdccbnz x2, 0x284be4
    00284be0b 0x284bfc
    00284be4
    00284be4loc_284be4:
    00284be4ldr x1, [sp+72]
    00284be8ldrsb x27, [x1]
    00284becldrb w1, [x1]
    00284bf0eor x1, x1, 1
    00284bf4strb w1, [sp+39]
    00284bf8b 0x284c00
    00284bfc
    00284bfcloc_284bfc:
    00284bfcb 0x284c00
    00284c00
    00284c00loc_284c00:
    00284c00ldr x1, [sp+72]
    00284c04ldrsb x27, [x1]
    00284c08ldrb w2, [sp+39]
    00284c0cstrb w2, [x1]
    00284c10ldr x0, [sp+72]
    00284c14str x0, [sp+48]
    00284c18ldur x29, [sp-8]
    00284c1cldr x30, [sp], 64
    00284c20ret x30
    00284c24
    00284c24loc_284c24:
    00284c24stp x0, x1, [sp+8]
    00284c28mov x3, x30
    00284c2cbl runtime.morestack_noctxt.abi0
    00284c30ldp x0, x1, [sp+8]
    00284c34b 0x284b90
    00284c38udf 0
    00284c3cudf 0
    00284b90
    00284c40
    00284c40math/big.(*Int).Add: ; void math/big.(*Int).Add(math/big.Int * z, math/big.Int * x, math/big.Int * y)
    00284c40ldr x16, [x28+16]
    00284c44sub x17, sp, 272
    00284c48subs xzr, x17, x16
    00284c4cb.ls 0x284fc4
    00284c50sub x20, sp, 400
    00284c54stp x29, x30, [x20-8]
    00284c58add sp, x20, 0
    00284c5csub x29, sp, 8
    00284c60str x0, [sp+408]
    00284c64str x1, [sp+416]
    00284c68str x2, [sp+424]
    00284c6cstr xzr, [sp+96]
    00284c70ldr x9, [sp+416]
    00284c74ldrsb x27, [x9]
    00284c78ldrb w9, [x9]
    00284c7cstrb w9, [sp+86]
    00284c80ldr x9, [sp+416]
    00284c84ldrsb x27, [x9]
    00284c88ldrb w9, [x9]
    00284c8cldr x10, [sp+424]
    00284c90ldrsb x27, [x10]
    00284c94ldrb w10, [x10]
    00284c98eor x9, x9, x10
    00284c9ceor x9, x9, 1
    00284ca0tbnz w9, 0, 0x284ca8
    00284ca4b 0x284d70
    00284ca8
    00284ca8loc_284ca8:
    00284ca8ldr x9, [sp+408]
    00284cacldrsb x27, [x9]
    00284cb0ldr x10, [x9+8]
    00284cb4ldr x11, [x9+16]
    00284cb8ldr x9, [x9+24]
    00284cbcstr x10, [sp+128]
    00284cc0str x11, [sp+136]
    00284cc4str x9, [sp+144]
    00284cc8ldr x9, [sp+416]
    00284cccldrsb x27, [x9]
    00284cd0ldr x10, [x9+8]
    00284cd4ldr x11, [x9+16]
    00284cd8ldr x9, [x9+24]
    00284cdcstr x10, [sp+104]
    00284ce0str x11, [sp+112]
    00284ce4str x9, [sp+120]
    00284ce8ldr x9, [sp+424]
    00284cecldrsb x27, [x9]
    00284cf0ldr x6, [x9+8]
    00284cf4ldr x7, [x9+16]
    00284cf8ldr x8, [x9+24]
    00284cfcstr x6, [sp+368]
    00284d00str x7, [sp+376]
    00284d04str x8, [sp+384]
    00284d08ldr x3, [sp+104]
    00284d0cldr x4, [sp+112]
    00284d10ldr x5, [sp+120]
    00284d14ldr x0, [sp+128]
    00284d18ldr x1, [sp+136]
    00284d1cldr x2, [sp+144]
    00284d20bl math/big.nat.add
    00284d24str x0, [sp+152]
    00284d28str x1, [sp+160]
    00284d2cstr x2, [sp+168]
    00284d30ldr x9, [sp+408]
    00284d34ldrsb x27, [x9]
    00284d38str x1, [x9+16]
    00284d3cstr x2, [x9+24]
    00284d40adrp x27, 0x7c7000
    00284d44ldr w10, [x27+3056]
    00284d48cbz w10, 0x284d50
    00284d4cb 0x284d54
    00284d50
    00284d50loc_284d50:
    00284d50b 0x284d68
    00284d54
    00284d54loc_284d54:
    00284d54bl runtime.gcWriteBarrier2
    00284d58str x0, [x25]
    00284d5cldr x1, [x9+8]
    00284d60str x1, [x25+8]
    00284d64b 0x284d68
    00284d68
    00284d68loc_284d68:
    00284d68str x0, [x9+8]
    00284d6cb 0x284f6c
    00284d70
    00284d70loc_284d70:
    00284d70ldr x6, [sp+416]
    00284d74ldrsb x27, [x6]
    00284d78ldr x7, [x6+8]
    00284d7cldr x8, [x6+16]
    00284d80ldr x6, [x6+24]
    00284d84str x7, [sp+344]
    00284d88str x8, [sp+352]
    00284d8cstr x6, [sp+360]
    00284d90ldr x6, [sp+424]
    00284d94ldrsb x27, [x6]
    00284d98ldr x3, [x6+8]
    00284d9cldr x4, [x6+16]
    00284da0ldr x5, [x6+24]
    00284da4str x3, [sp+320]
    00284da8str x4, [sp+328]
    00284dacstr x5, [sp+336]
    00284db0ldr x0, [sp+344]
    00284db4ldr x1, [sp+352]
    00284db8ldr x2, [sp+360]
    00284dbcbl math/big.nat.cmp
    00284dc0str x0, [sp+88]
    00284dc4tbz x0, 63, 0x284dcc
    00284dc8b 0x284e94
    00284dcc
    00284dccloc_284dcc:
    00284dccldr x9, [sp+408]
    00284dd0ldrsb x27, [x9]
    00284dd4ldr x10, [x9+8]
    00284dd8ldr x11, [x9+16]
    00284ddcldr x9, [x9+24]
    00284de0str x10, [sp+296]
    00284de4str x11, [sp+304]
    00284de8str x9, [sp+312]
    00284decldr x9, [sp+416]
    00284df0ldrsb x27, [x9]
    00284df4ldr x10, [x9+8]
    00284df8ldr x11, [x9+16]
    00284dfcldr x9, [x9+24]
    00284e00str x10, [sp+272]
    00284e04str x11, [sp+280]
    00284e08str x9, [sp+288]
    00284e0cldr x9, [sp+424]
    00284e10ldrsb x27, [x9]
    00284e14ldr x6, [x9+8]
    00284e18ldr x7, [x9+16]
    00284e1cldr x8, [x9+24]
    00284e20str x6, [sp+248]
    00284e24str x7, [sp+256]
    00284e28str x8, [sp+264]
    00284e2cldr x0, [sp+296]
    00284e30ldr x1, [sp+304]
    00284e34ldr x2, [sp+312]
    00284e38ldr x3, [sp+272]
    00284e3cldr x4, [sp+280]
    00284e40ldr x5, [sp+288]
    00284e44bl math/big.nat.sub
    00284e48str x0, [sp+152]
    00284e4cstr x1, [sp+160]
    00284e50str x2, [sp+168]
    00284e54ldr x9, [sp+408]
    00284e58ldrsb x27, [x9]
    00284e5cstr x1, [x9+16]
    00284e60str x2, [x9+24]
    00284e64adrp x27, 0x7c7000
    00284e68ldr w10, [x27+3056]
    00284e6ccbz w10, 0x284e74
    00284e70b 0x284e78
    00284e74
    00284e74loc_284e74:
    00284e74b 0x284e8c
    00284e78
    00284e78loc_284e78:
    00284e78bl runtime.gcWriteBarrier2
    00284e7cstr x0, [x25]
    00284e80ldr x1, [x9+8]
    00284e84str x1, [x25+8]
    00284e88b 0x284e8c
    00284e8c
    00284e8cloc_284e8c:
    00284e8cstr x0, [x9+8]
    00284e90b 0x284f68
    00284e94
    00284e94loc_284e94:
    00284e94ldrb w9, [sp+86]
    00284e98eor x9, x9, 1
    00284e9cstrb w9, [sp+86]
    00284ea0ldr x9, [sp+408]
    00284ea4ldrsb x27, [x9]
    00284ea8ldr x10, [x9+8]
    00284eacldr x11, [x9+16]
    00284eb0ldr x9, [x9+24]
    00284eb4str x10, [sp+224]
    00284eb8str x11, [sp+232]
    00284ebcstr x9, [sp+240]
    00284ec0ldr x9, [sp+424]
    00284ec4ldrsb x27, [x9]
    00284ec8ldr x10, [x9+8]
    00284eccldr x11, [x9+16]
    00284ed0ldr x9, [x9+24]
    00284ed4str x10, [sp+200]
    00284ed8str x11, [sp+208]
    00284edcstr x9, [sp+216]
    00284ee0ldr x9, [sp+416]
    00284ee4ldrsb x27, [x9]
    00284ee8ldr x6, [x9+8]
    00284eecldr x7, [x9+16]
    00284ef0ldr x8, [x9+24]
    00284ef4str x6, [sp+176]
    00284ef8str x7, [sp+184]
    00284efcstr x8, [sp+192]
    00284f00ldr x0, [sp+224]
    00284f04ldr x1, [sp+232]
    00284f08ldr x2, [sp+240]
    00284f0cldr x3, [sp+200]
    00284f10ldr x4, [sp+208]
    00284f14ldr x5, [sp+216]
    00284f18bl math/big.nat.sub
    00284f1cstr x0, [sp+152]
    00284f20str x1, [sp+160]
    00284f24str x2, [sp+168]
    00284f28ldr x9, [sp+408]
    00284f2cldrsb x27, [x9]
    00284f30str x1, [x9+16]
    00284f34str x2, [x9+24]
    00284f38adrp x27, 0x7c7000
    00284f3cldr w10, [x27+3056]
    00284f40cbz w10, 0x284f48
    00284f44b 0x284f4c
    00284f48
    00284f48loc_284f48:
    00284f48b 0x284f60
    00284f4c
    00284f4cloc_284f4c:
    00284f4cbl runtime.gcWriteBarrier2
    00284f50str x0, [x25]
    00284f54ldr x1, [x9+8]
    00284f58str x1, [x25+8]
    00284f5cb 0x284f60
    00284f60
    00284f60loc_284f60:
    00284f60str x0, [x9+8]
    00284f64b 0x284f68
    00284f68
    00284f68loc_284f68:
    00284f68b 0x284f6c
    00284f6c
    00284f6cloc_284f6c:
    00284f6cldr x1, [sp+408]
    00284f70ldrsb x27, [x1]
    00284f74ldr x1, [x1+16]
    00284f78str x1, [sp+88]
    00284f7csubs xzr, x1, 0
    00284f80cset x2, ne
    00284f84strb w2, [sp+87]
    00284f88cbnz x1, 0x284f90
    00284f8cb 0x284f9c
    00284f90
    00284f90loc_284f90:
    00284f90ldrb w1, [sp+86]
    00284f94strb w1, [sp+87]
    00284f98b 0x284fa0
    00284f9c
    00284f9cloc_284f9c:
    00284f9cb 0x284fa0
    00284fa0
    00284fa0loc_284fa0:
    00284fa0ldr x1, [sp+408]
    00284fa4ldrsb x27, [x1]
    00284fa8ldrb w2, [sp+87]
    00284facstrb w2, [x1]
    00284fb0ldr x0, [sp+408]
    00284fb4str x0, [sp+96]
    00284fb8ldp x29, x30, [sp-8]
    00284fbcadd sp, sp, 400
    00284fc0ret x30
    00284fc4
    00284fc4loc_284fc4:
    00284fc4stp x0, x1, [sp+8]
    00284fc8str x2, [sp+24]
    00284fccmov x3, x30
    00284fd0bl runtime.morestack_noctxt.abi0
    00284fd4ldp x0, x1, [sp+8]
    00284fd8ldr x2, [sp+24]
    00284fdcb 0x284c40
    00284c40
    00284fe0
    00284fe0math/big.(*Int).Sub: ; void math/big.(*Int).Sub(math/big.Int * z, math/big.Int * x, math/big.Int * y)
    00284fe0ldr x16, [x28+16]
    00284fe4sub x17, sp, 272
    00284fe8subs xzr, x17, x16
    00284fecb.ls 0x285360
    00284ff0sub x20, sp, 400
    00284ff4stp x29, x30, [x20-8]
    00284ff8add sp, x20, 0
    00284ffcsub x29, sp, 8
    00285000str x0, [sp+408]
    00285004str x1, [sp+416]
    00285008str x2, [sp+424]
    0028500cstr xzr, [sp+96]
    00285010ldr x9, [sp+416]
    00285014ldrsb x27, [x9]
    00285018ldrb w9, [x9]
    0028501cstrb w9, [sp+86]
    00285020ldr x9, [sp+416]
    00285024ldrsb x27, [x9]
    00285028ldrb w9, [x9]
    0028502cldr x10, [sp+424]
    00285030ldrsb x27, [x10]
    00285034ldrb w10, [x10]
    00285038eor x9, x9, x10
    0028503ctbnz w9, 0, 0x285044
    00285040b 0x28510c
    00285044
    00285044loc_285044:
    00285044ldr x9, [sp+408]
    00285048ldrsb x27, [x9]
    0028504cldr x10, [x9+8]
    00285050ldr x11, [x9+16]
    00285054ldr x9, [x9+24]
    00285058str x10, [sp+128]
    0028505cstr x11, [sp+136]
    00285060str x9, [sp+144]
    00285064ldr x9, [sp+416]
    00285068ldrsb x27, [x9]
    0028506cldr x10, [x9+8]
    00285070ldr x11, [x9+16]
    00285074ldr x9, [x9+24]
    00285078str x10, [sp+104]
    0028507cstr x11, [sp+112]
    00285080str x9, [sp+120]
    00285084ldr x9, [sp+424]
    00285088ldrsb x27, [x9]
    0028508cldr x6, [x9+8]
    00285090ldr x7, [x9+16]
    00285094ldr x8, [x9+24]
    00285098str x6, [sp+368]
    0028509cstr x7, [sp+376]
    002850a0str x8, [sp+384]
    002850a4ldr x3, [sp+104]
    002850a8ldr x4, [sp+112]
    002850acldr x5, [sp+120]
    002850b0ldr x0, [sp+128]
    002850b4ldr x1, [sp+136]
    002850b8ldr x2, [sp+144]
    002850bcbl math/big.nat.add
    002850c0str x0, [sp+152]
    002850c4str x1, [sp+160]
    002850c8str x2, [sp+168]
    002850ccldr x9, [sp+408]
    002850d0ldrsb x27, [x9]
    002850d4str x1, [x9+16]
    002850d8str x2, [x9+24]
    002850dcadrp x27, 0x7c6000
    002850e0ldr w10, [x27+3056]
    002850e4cbz w10, 0x2850ec
    002850e8b 0x2850f0
    002850ec
    002850ecloc_2850ec:
    002850ecb 0x285104
    002850f0
    002850f0loc_2850f0:
    002850f0bl runtime.gcWriteBarrier2
    002850f4str x0, [x25]
    002850f8ldr x1, [x9+8]
    002850fcstr x1, [x25+8]
    00285100b 0x285104
    00285104
    00285104loc_285104:
    00285104str x0, [x9+8]
    00285108b 0x285308
    0028510c
    0028510cloc_28510c:
    0028510cldr x6, [sp+416]
    00285110ldrsb x27, [x6]
    00285114ldr x7, [x6+8]
    00285118ldr x8, [x6+16]
    0028511cldr x6, [x6+24]
    00285120str x7, [sp+344]
    00285124str x8, [sp+352]
    00285128str x6, [sp+360]
    0028512cldr x6, [sp+424]
    00285130ldrsb x27, [x6]
    00285134ldr x3, [x6+8]
    00285138ldr x4, [x6+16]
    0028513cldr x5, [x6+24]
    00285140str x3, [sp+320]
    00285144str x4, [sp+328]
    00285148str x5, [sp+336]
    0028514cldr x0, [sp+344]
    00285150ldr x1, [sp+352]
    00285154ldr x2, [sp+360]
    00285158bl math/big.nat.cmp
    0028515cstr x0, [sp+88]
    00285160tbz x0, 63, 0x285168
    00285164b 0x285230
    00285168
    00285168loc_285168:
    00285168ldr x9, [sp+408]
    0028516cldrsb x27, [x9]
    00285170ldr x10, [x9+8]
    00285174ldr x11, [x9+16]
    00285178ldr x9, [x9+24]
    0028517cstr x10, [sp+296]
    00285180str x11, [sp+304]
    00285184str x9, [sp+312]
    00285188ldr x9, [sp+416]
    0028518cldrsb x27, [x9]
    00285190ldr x10, [x9+8]
    00285194ldr x11, [x9+16]
    00285198ldr x9, [x9+24]
    0028519cstr x10, [sp+272]
    002851a0str x11, [sp+280]
    002851a4str x9, [sp+288]
    002851a8ldr x9, [sp+424]
    002851acldrsb x27, [x9]
    002851b0ldr x6, [x9+8]
    002851b4ldr x7, [x9+16]
    002851b8ldr x8, [x9+24]
    002851bcstr x6, [sp+248]
    002851c0str x7, [sp+256]
    002851c4str x8, [sp+264]
    002851c8ldr x3, [sp+272]
    002851ccldr x4, [sp+280]
    002851d0ldr x5, [sp+288]
    002851d4ldr x0, [sp+296]
    002851d8ldr x1, [sp+304]
    002851dcldr x2, [sp+312]
    002851e0bl math/big.nat.sub
    002851e4str x0, [sp+152]
    002851e8str x1, [sp+160]
    002851ecstr x2, [sp+168]
    002851f0ldr x9, [sp+408]
    002851f4ldrsb x27, [x9]
    002851f8str x1, [x9+16]
    002851fcstr x2, [x9+24]
    00285200adrp x27, 0x7c6000
    00285204ldr w10, [x27+3056]
    00285208cbz w10, 0x285210
    0028520cb 0x285214
    00285210
    00285210loc_285210:
    00285210b 0x285228
    00285214
    00285214loc_285214:
    00285214bl runtime.gcWriteBarrier2
    00285218str x0, [x25]
    0028521cldr x1, [x9+8]
    00285220str x1, [x25+8]
    00285224b 0x285228
    00285228
    00285228loc_285228:
    00285228str x0, [x9+8]
    0028522cb 0x285304
    00285230
    00285230loc_285230:
    00285230ldrb w9, [sp+86]
    00285234eor x9, x9, 1
    00285238strb w9, [sp+86]
    0028523cldr x9, [sp+408]
    00285240ldrsb x27, [x9]
    00285244ldr x10, [x9+8]
    00285248ldr x11, [x9+16]
    0028524cldr x9, [x9+24]
    00285250str x10, [sp+224]
    00285254str x11, [sp+232]
    00285258str x9, [sp+240]
    0028525cldr x9, [sp+424]
    00285260ldrsb x27, [x9]
    00285264ldr x10, [x9+8]
    00285268ldr x11, [x9+16]
    0028526cldr x9, [x9+24]
    00285270str x10, [sp+200]
    00285274str x11, [sp+208]
    00285278str x9, [sp+216]
    0028527cldr x9, [sp+416]
    00285280ldrsb x27, [x9]
    00285284ldr x6, [x9+8]
    00285288ldr x7, [x9+16]
    0028528cldr x8, [x9+24]
    00285290str x6, [sp+176]
    00285294str x7, [sp+184]
    00285298str x8, [sp+192]
    0028529cldr x0, [sp+224]
    002852a0ldr x1, [sp+232]
    002852a4ldr x2, [sp+240]
    002852a8ldr x3, [sp+200]
    002852acldr x4, [sp+208]
    002852b0ldr x5, [sp+216]
    002852b4bl math/big.nat.sub
    002852b8str x0, [sp+152]
    002852bcstr x1, [sp+160]
    002852c0str x2, [sp+168]
    002852c4ldr x9, [sp+408]
    002852c8ldrsb x27, [x9]
    002852ccstr x1, [x9+16]
    002852d0str x2, [x9+24]
    002852d4adrp x27, 0x7c6000
    002852d8ldr w10, [x27+3056]
    002852dccbz w10, 0x2852e4
    002852e0b 0x2852e8
    002852e4
    002852e4loc_2852e4:
    002852e4b 0x2852fc
    002852e8
    002852e8loc_2852e8:
    002852e8bl runtime.gcWriteBarrier2
    002852ecstr x0, [x25]
    002852f0ldr x1, [x9+8]
    002852f4str x1, [x25+8]
    002852f8b 0x2852fc
    002852fc
    002852fcloc_2852fc:
    002852fcstr x0, [x9+8]
    00285300b 0x285304
    00285304
    00285304loc_285304:
    00285304b 0x285308
    00285308
    00285308loc_285308:
    00285308ldr x1, [sp+408]
    0028530cldrsb x27, [x1]
    00285310ldr x1, [x1+16]
    00285314str x1, [sp+88]
    00285318subs xzr, x1, 0
    0028531ccset x2, ne
    00285320strb w2, [sp+87]
    00285324cbnz x1, 0x28532c
    00285328b 0x285338
    0028532c
    0028532cloc_28532c:
    0028532cldrb w1, [sp+86]
    00285330strb w1, [sp+87]
    00285334b 0x28533c
    00285338
    00285338loc_285338:
    00285338b 0x28533c
    0028533c
    0028533cloc_28533c:
    0028533cldr x1, [sp+408]
    00285340ldrsb x27, [x1]
    00285344ldrb w2, [sp+87]
    00285348strb w2, [x1]
    0028534cldr x0, [sp+408]
    00285350str x0, [sp+96]
    00285354ldp x29, x30, [sp-8]
    00285358add sp, sp, 400
    0028535cret x30
    00285360
    00285360loc_285360:
    00285360stp x0, x1, [sp+8]
    00285364str x2, [sp+24]
    00285368mov x3, x30
    0028536cbl runtime.morestack_noctxt.abi0
    00285370ldp x0, x1, [sp+8]
    00285374ldr x2, [sp+24]
    00285378b 0x284fe0
    0028537cudf 0
    00284fe0
    00285380
    00285380math/big.(*Int).Mul: ; void math/big.(*Int).Mul(math/big.Int * z, math/big.Int * x, math/big.Int * y)
    00285380ldr x16, [x28+16]
    00285384sub x17, sp, 128
    00285388subs xzr, x17, x16
    0028538cb.ls 0x2855b0
    00285390sub x20, sp, 256
    00285394stp x29, x30, [x20-8]
    00285398add sp, x20, 0
    0028539csub x29, sp, 8
    002853a0str x0, [sp+264]
    002853a4str x1, [sp+272]
    002853a8str x2, [sp+280]
    002853acstr xzr, [sp+96]
    002853b0ldr x9, [sp+280]
    002853b4ldr x10, [sp+272]
    002853b8subs xzr, x9, x10
    002853bcb.eq 0x2853c4
    002853c0b 0x28547c
    002853c4
    002853c4loc_2853c4:
    002853c4ldr x6, [sp+264]
    002853c8ldrsb x27, [x6]
    002853ccldr x7, [x6+8]
    002853d0ldr x8, [x6+16]
    002853d4ldr x6, [x6+24]
    002853d8str x7, [sp+152]
    002853dcstr x8, [sp+160]
    002853e0str x6, [sp+168]
    002853e4ldr x6, [sp+272]
    002853e8ldrsb x27, [x6]
    002853ecldr x3, [x6+8]
    002853f0ldr x4, [x6+16]
    002853f4ldr x5, [x6+24]
    002853f8str x3, [sp+128]
    002853fcstr x4, [sp+136]
    00285400str x5, [sp+144]
    00285404ldr x0, [sp+152]
    00285408ldr x1, [sp+160]
    0028540cldr x2, [sp+168]
    00285410bl math/big.nat.sqr
    00285414str x0, [sp+176]
    00285418str x1, [sp+184]
    0028541cstr x2, [sp+192]
    00285420ldr x6, [sp+264]
    00285424ldrsb x27, [x6]
    00285428str x1, [x6+16]
    0028542cstr x2, [x6+24]
    00285430adrp x27, 0x7c6000
    00285434ldr w7, [x27+3056]
    00285438cbz w7, 0x285440
    0028543cb 0x285444
    00285440
    00285440loc_285440:
    00285440b 0x285458
    00285444
    00285444loc_285444:
    00285444bl runtime.gcWriteBarrier2
    00285448str x0, [x25]
    0028544cldr x1, [x6+8]
    00285450str x1, [x25+8]
    00285454b 0x285458
    00285458
    00285458loc_285458:
    00285458str x0, [x6+8]
    0028545cldr x1, [sp+264]
    00285460ldrsb x27, [x1]
    00285464strb wzr, [x1]
    00285468ldr x0, [sp+264]
    0028546cstr x0, [sp+96]
    00285470ldp x29, x30, [sp-8]
    00285474add sp, sp, 256
    00285478ret x30
    0028547c
    0028547cloc_28547c:
    0028547cldr x9, [sp+264]
    00285480ldrsb x27, [x9]
    00285484ldr x10, [x9+8]
    00285488ldr x11, [x9+16]
    0028548cldr x9, [x9+24]
    00285490str x10, [sp+104]
    00285494str x11, [sp+112]
    00285498str x9, [sp+120]
    0028549cldr x9, [sp+272]
    002854a0ldrsb x27, [x9]
    002854a4ldr x10, [x9+8]
    002854a8ldr x11, [x9+16]
    002854acldr x9, [x9+24]
    002854b0str x10, [sp+224]
    002854b4str x11, [sp+232]
    002854b8str x9, [sp+240]
    002854bcldr x9, [sp+280]
    002854c0ldrsb x27, [x9]
    002854c4ldr x6, [x9+8]
    002854c8ldr x7, [x9+16]
    002854ccldr x8, [x9+24]
    002854d0str x6, [sp+200]
    002854d4str x7, [sp+208]
    002854d8str x8, [sp+216]
    002854dcldr x0, [sp+104]
    002854e0ldr x1, [sp+112]
    002854e4ldr x2, [sp+120]
    002854e8ldr x3, [sp+224]
    002854ecldr x4, [sp+232]
    002854f0ldr x5, [sp+240]
    002854f4bl math/big.nat.mul
    002854f8str x0, [sp+176]
    002854fcstr x1, [sp+184]
    00285500str x2, [sp+192]
    00285504ldr x9, [sp+264]
    00285508ldrsb x27, [x9]
    0028550cstr x1, [x9+16]
    00285510str x2, [x9+24]
    00285514adrp x27, 0x7c6000
    00285518ldr w10, [x27+3056]
    0028551ccbz w10, 0x285524
    00285520b 0x285528
    00285524
    00285524loc_285524:
    00285524b 0x28553c
    00285528
    00285528loc_285528:
    00285528bl runtime.gcWriteBarrier2
    0028552cstr x0, [x25]
    00285530ldr x1, [x9+8]
    00285534str x1, [x25+8]
    00285538b 0x28553c
    0028553c
    0028553cloc_28553c:
    0028553cstr x0, [x9+8]
    00285540ldr x1, [sp+264]
    00285544ldrsb x27, [x1]
    00285548ldr x1, [x1+16]
    0028554cstr x1, [sp+88]
    00285550subs xzr, x1, 0
    00285554cset x2, ne
    00285558strb w2, [sp+87]
    0028555ccbnz x1, 0x285564
    00285560b 0x285588
    00285564
    00285564loc_285564:
    00285564ldr x1, [sp+272]
    00285568ldrsb x27, [x1]
    0028556cldrb w1, [x1]
    00285570ldr x2, [sp+280]
    00285574ldrsb x27, [x2]
    00285578ldrb w2, [x2]
    0028557ceor x1, x1, x2
    00285580strb w1, [sp+87]
    00285584b 0x28558c
    00285588
    00285588loc_285588:
    00285588b 0x28558c
    0028558c
    0028558cloc_28558c:
    0028558cldr x1, [sp+264]
    00285590ldrsb x27, [x1]
    00285594ldrb w2, [sp+87]
    00285598strb w2, [x1]
    0028559cldr x0, [sp+264]
    002855a0str x0, [sp+96]
    002855a4ldp x29, x30, [sp-8]
    002855a8add sp, sp, 256
    002855acret x30
    002855b0
    002855b0loc_2855b0:
    002855b0stp x0, x1, [sp+8]
    002855b4str x2, [sp+24]
    002855b8mov x3, x30
    002855bcbl runtime.morestack_noctxt.abi0
    002855c0ldp x0, x1, [sp+8]
    002855c4ldr x2, [sp+24]
    002855c8b 0x285380
    002855ccudf 0
    00285380
    002855d0
    002855d0math/big.(*Int).QuoRem: ; void math/big.(*Int).QuoRem(math/big.Int * z, math/big.Int * x, math/big.Int * y, math/big.Int * r)
    002855d0ldr x16, [x28+16]
    002855d4sub x17, sp, 224
    002855d8subs xzr, x17, x16
    002855dcb.ls 0x285860
    002855e0sub x20, sp, 352
    002855e4stp x29, x30, [x20-8]
    002855e8add sp, x20, 0
    002855ecsub x29, sp, 8
    002855f0str x0, [sp+360]
    002855f4str x1, [sp+368]
    002855f8str x2, [sp+376]
    002855fcstr x3, [sp+384]
    00285600str xzr, [sp+144]
    00285604str xzr, [sp+136]
    00285608stp xzr, xzr, [sp+176]
    0028560cstr xzr, [sp+192]
    00285610stp xzr, xzr, [sp+152]
    00285614str xzr, [sp+168]
    00285618ldr x12, [sp+360]
    0028561cldrsb x27, [x12]
    00285620ldr x13, [x12+8]
    00285624ldr x14, [x12+16]
    00285628ldr x12, [x12+24]
    0028562cstr x13, [sp+320]
    00285630str x14, [sp+328]
    00285634str x12, [sp+336]
    00285638ldr x12, [sp+384]
    0028563cldrsb x27, [x12]
    00285640ldr x13, [x12+8]
    00285644ldr x14, [x12+16]
    00285648ldr x12, [x12+24]
    0028564cstr x13, [sp+296]
    00285650str x14, [sp+304]
    00285654str x12, [sp+312]
    00285658ldr x12, [sp+368]
    0028565cldrsb x27, [x12]
    00285660ldr x13, [x12+8]
    00285664ldr x14, [x12+16]
    00285668ldr x12, [x12+24]
    0028566cstr x13, [sp+272]
    00285670str x14, [sp+280]
    00285674str x12, [sp+288]
    00285678ldr x12, [sp+376]
    0028567cldrsb x27, [x12]
    00285680ldr x9, [x12+8]
    00285684ldr x10, [x12+16]
    00285688ldr x11, [x12+24]
    0028568cstr x9, [sp+248]
    00285690str x10, [sp+256]
    00285694str x11, [sp+264]
    00285698ldr x0, [sp+320]
    0028569cldr x1, [sp+328]
    002856a0ldr x2, [sp+336]
    002856a4ldr x3, [sp+296]
    002856a8ldr x4, [sp+304]
    002856acldr x5, [sp+312]
    002856b0ldr x6, [sp+272]
    002856b4ldr x7, [sp+280]
    002856b8ldr x8, [sp+288]
    002856bcbl math/big.nat.div
    002856c0str x0, [sp+176]
    002856c4str x1, [sp+184]
    002856c8str x2, [sp+192]
    002856ccstr x3, [sp+152]
    002856d0str x4, [sp+160]
    002856d4str x5, [sp+168]
    002856d8ldr x12, [sp+176]
    002856dcldr x13, [sp+184]
    002856e0ldr x14, [sp+192]
    002856e4str x12, [sp+224]
    002856e8str x13, [sp+232]
    002856ecstr x14, [sp+240]
    002856f0ldr x12, [sp+152]
    002856f4ldr x13, [sp+160]
    002856f8ldr x14, [sp+168]
    002856fcstr x12, [sp+200]
    00285700str x13, [sp+208]
    00285704str x14, [sp+216]
    00285708ldr x12, [sp+360]
    0028570cldrsb x27, [x12]
    00285710ldr x13, [sp+224]
    00285714ldr x14, [sp+232]
    00285718ldr x15, [sp+240]
    0028571cstr x14, [x12+16]
    00285720str x15, [x12+24]
    00285724adrp x27, 0x7c6000
    00285728ldr w14, [x27+3056]
    0028572ccbz w14, 0x285734
    00285730b 0x285738
    00285734
    00285734loc_285734:
    00285734b 0x28574c
    00285738
    00285738loc_285738:
    00285738bl runtime.gcWriteBarrier2
    0028573cstr x13, [x25]
    00285740ldr x2, [x12+8]
    00285744str x2, [x25+8]
    00285748b 0x28574c
    0028574c
    0028574cloc_28574c:
    0028574cstr x13, [x12+8]
    00285750ldr x2, [sp+384]
    00285754ldrsb x27, [x2]
    00285758ldr x3, [sp+200]
    0028575cldr x4, [sp+208]
    00285760ldr x5, [sp+216]
    00285764str x4, [x2+16]
    00285768str x5, [x2+24]
    0028576cadrp x27, 0x7c6000
    00285770ldr w4, [x27+3056]
    00285774cbz w4, 0x28577c
    00285778b 0x285780
    0028577c
    0028577cloc_28577c:
    0028577cb 0x285794
    00285780
    00285780loc_285780:
    00285780bl runtime.gcWriteBarrier2
    00285784str x3, [x25]
    00285788ldr x4, [x2+8]
    0028578cstr x4, [x25+8]
    00285790b 0x285794
    00285794
    00285794loc_285794:
    00285794str x3, [x2+8]
    00285798ldr x2, [sp+360]
    0028579cldrsb x27, [x2]
    002857a0ldr x2, [x2+16]
    002857a4str x2, [sp+128]
    002857a8subs xzr, x2, 0
    002857accset x3, ne
    002857b0strb w3, [sp+119]
    002857b4cbnz x2, 0x2857bc
    002857b8b 0x2857e0
    002857bc
    002857bcloc_2857bc:
    002857bcldr x2, [sp+368]
    002857c0ldrsb x27, [x2]
    002857c4ldrb w2, [x2]
    002857c8ldr x3, [sp+376]
    002857ccldrsb x27, [x3]
    002857d0ldrb w3, [x3]
    002857d4eor x2, x2, x3
    002857d8strb w2, [sp+119]
    002857dcb 0x2857e4
    002857e0
    002857e0loc_2857e0:
    002857e0b 0x2857e4
    002857e4
    002857e4loc_2857e4:
    002857e4ldr x2, [sp+384]
    002857e8ldrsb x27, [x2]
    002857ecldr x2, [x2+16]
    002857f0str x2, [sp+120]
    002857f4subs xzr, x2, 0
    002857f8cset x3, ne
    002857fcstrb w3, [sp+118]
    00285800cbnz x2, 0x285808
    00285804b 0x28581c
    00285808
    00285808loc_285808:
    00285808ldr x2, [sp+368]
    0028580cldrsb x27, [x2]
    00285810ldrb w2, [x2]
    00285814strb w2, [sp+118]
    00285818b 0x285820
    0028581c
    0028581cloc_28581c:
    0028581cb 0x285820
    00285820
    00285820loc_285820:
    00285820ldr x2, [sp+360]
    00285824ldrsb x27, [x2]
    00285828ldrb w3, [sp+119]
    0028582cstrb w3, [x2]
    00285830ldr x2, [sp+384]
    00285834ldrsb x27, [x2]
    00285838ldrb w3, [sp+118]
    0028583cstrb w3, [x2]
    00285840ldr x2, [sp+360]
    00285844str x2, [sp+144]
    00285848ldr x1, [sp+384]
    0028584cstr x1, [sp+136]
    00285850ldr x0, [sp+144]
    00285854ldp x29, x30, [sp-8]
    00285858add sp, sp, 352
    0028585cret x30
    00285860
    00285860loc_285860:
    00285860stp x0, x1, [sp+8]
    00285864stp x2, x3, [sp+24]
    00285868mov x3, x30
    0028586cbl runtime.morestack_noctxt.abi0
    00285870ldp x0, x1, [sp+8]
    00285874ldp x2, x3, [sp+24]
    00285878b 0x2855d0
    0028587cudf 0
    002855d0
    00285880
    00285880math/big.(*Int).Div: ; void math/big.(*Int).Div(math/big.Int * z, math/big.Int * x, math/big.Int * y)
    00285880ldr x16, [x28+16]
    00285884subs xzr, sp, x16
    00285888b.ls 0x28593c
    0028588cstr x30, [sp-96]!
    00285890stur x29, [sp-8]
    00285894sub x29, sp, 8
    00285898str x0, [sp+104]
    0028589cstr x1, [sp+112]
    002858a0str x2, [sp+120]
    002858a4str xzr, [sp+48]
    002858a8ldr x4, [sp+120]
    002858acldrsb x27, [x4]
    002858b0ldrb w4, [x4]
    002858b4strb w4, [sp+47]
    002858b8strb wzr, [sp+56]
    002858bcstr xzr, [sp+64]
    002858c0stp xzr, xzr, [sp+72]
    002858c4ldr x1, [sp+112]
    002858c8ldr x2, [sp+120]
    002858ccldr x0, [sp+104]
    002858d0add x3, sp, 56
    002858d4bl math/big.(*Int).QuoRem
    002858d8ldrb w4, [sp+56]
    002858dctbnz w4, 0, 0x2858e4
    002858e0b 0x285924
    002858e4
    002858e4loc_2858e4:
    002858e4ldrb w3, [sp+47]
    002858e8tbnz w3, 0, 0x2858f0
    002858ecb 0x285908
    002858f0
    002858f0loc_2858f0:
    002858f0ldr x1, [sp+104]
    002858f4adrp x27, 0x788000
    002858f8ldr x2, [x27+1960]
    002858fcldr x0, [sp+104]
    00285900bl math/big.(*Int).Add
    00285904b 0x285920
    00285908
    00285908loc_285908:
    00285908ldr x1, [sp+104]
    0028590cadrp x27, 0x788000
    00285910ldr x2, [x27+1960]
    00285914ldr x0, [sp+104]
    00285918bl math/big.(*Int).Sub
    0028591cb 0x285920
    00285920
    00285920loc_285920:
    00285920b 0x285928
    00285924
    00285924loc_285924:
    00285924b 0x285928
    00285928
    00285928loc_285928:
    00285928ldr x0, [sp+104]
    0028592cstr x0, [sp+48]
    00285930ldur x29, [sp-8]
    00285934ldr x30, [sp], 96
    00285938ret x30
    0028593c
    0028593cloc_28593c:
    0028593cstp x0, x1, [sp+8]
    00285940str x2, [sp+24]
    00285944mov x3, x30
    00285948bl runtime.morestack_noctxt.abi0
    0028594cldp x0, x1, [sp+8]
    00285950ldr x2, [sp+24]
    00285954b 0x285880
    00285958udf 0
    0028595cudf 0
    00285880
    00285960
    00285960math/big.(*Int).Mod: ; void math/big.(*Int).Mod(math/big.Int * z, math/big.Int * x, math/big.Int * y)
    00285960ldr x16, [x28+16]
    00285964sub x17, sp, 80
    00285968subs xzr, x17, x16
    0028596cb.ls 0x285ad0
    00285970str x30, [sp-208]!
    00285974stur x29, [sp-8]
    00285978sub x29, sp, 8
    0028597cstr x0, [sp+216]
    00285980str x1, [sp+224]
    00285984str x2, [sp+232]
    00285988str xzr, [sp+64]
    0028598cldr x6, [sp+232]
    00285990str x6, [sp+72]
    00285994ldr x6, [sp+232]
    00285998ldr x7, [sp+216]
    0028599csubs xzr, x6, x7
    002859a0cset x6, eq
    002859a4strb w6, [sp+63]
    002859a8b.eq 0x2859b0
    002859acb 0x2859b4
    002859b0
    002859b0loc_2859b0:
    002859b0b 0x285a10
    002859b4
    002859b4loc_2859b4:
    002859b4ldr x6, [sp+216]
    002859b8ldrsb x27, [x6]
    002859bcldr x7, [x6+8]
    002859c0ldr x8, [x6+16]
    002859c4ldr x6, [x6+24]
    002859c8str x7, [sp+112]
    002859ccstr x8, [sp+120]
    002859d0str x6, [sp+128]
    002859d4ldr x6, [sp+232]
    002859d8ldrsb x27, [x6]
    002859dcldr x3, [x6+8]
    002859e0ldr x4, [x6+16]
    002859e4ldr x5, [x6+24]
    002859e8str x3, [sp+176]
    002859ecstr x4, [sp+184]
    002859f0str x5, [sp+192]
    002859f4ldr x0, [sp+112]
    002859f8ldr x1, [sp+120]
    002859fcldr x2, [sp+128]
    00285a00bl math/big.alias
    00285a04strb w0, [sp+62]
    00285a08strb w0, [sp+63]
    00285a0cb 0x285a10
    00285a10
    00285a10loc_285a10:
    00285a10ldrb w4, [sp+63]
    00285a14tbnz w4, 0, 0x285a1c
    00285a18b 0x285a40
    00285a1c
    00285a1cloc_285a1c:
    00285a1cstrb wzr, [sp+144]
    00285a20str xzr, [sp+152]
    00285a24stp xzr, xzr, [sp+160]
    00285a28add x0, sp, 144
    00285a2cstr x0, [sp+136]
    00285a30ldr x1, [sp+232]
    00285a34bl math/big.(*Int).Set
    00285a38str x0, [sp+72]
    00285a3cb 0x285a44
    00285a40
    00285a40loc_285a40:
    00285a40b 0x285a44
    00285a44
    00285a44loc_285a44:
    00285a44strb wzr, [sp+80]
    00285a48str xzr, [sp+88]
    00285a4cstp xzr, xzr, [sp+96]
    00285a50ldr x2, [sp+232]
    00285a54ldr x3, [sp+216]
    00285a58ldr x1, [sp+224]
    00285a5cadd x0, sp, 80
    00285a60bl math/big.(*Int).QuoRem
    00285a64ldr x4, [sp+216]
    00285a68ldrsb x27, [x4]
    00285a6cldrb w4, [x4]
    00285a70tbnz w4, 0, 0x285a78
    00285a74b 0x285ab8
    00285a78
    00285a78loc_285a78:
    00285a78ldr x3, [sp+72]
    00285a7cldrsb x27, [x3]
    00285a80ldrb w3, [x3]
    00285a84tbnz w3, 0, 0x285a8c
    00285a88b 0x285aa0
    00285a8c
    00285a8cloc_285a8c:
    00285a8cldr x1, [sp+216]
    00285a90ldr x2, [sp+72]
    00285a94ldr x0, [sp+216]
    00285a98bl math/big.(*Int).Sub
    00285a9cb 0x285ab4
    00285aa0
    00285aa0loc_285aa0:
    00285aa0ldr x1, [sp+216]
    00285aa4ldr x2, [sp+72]
    00285aa8ldr x0, [sp+216]
    00285aacbl math/big.(*Int).Add
    00285ab0b 0x285ab4
    00285ab4
    00285ab4loc_285ab4:
    00285ab4b 0x285abc
    00285ab8
    00285ab8loc_285ab8:
    00285ab8b 0x285abc
    00285abc
    00285abcloc_285abc:
    00285abcldr x0, [sp+216]
    00285ac0str x0, [sp+64]
    00285ac4ldur x29, [sp-8]
    00285ac8ldr x30, [sp], 208
    00285accret x30
    00285ad0
    00285ad0loc_285ad0:
    00285ad0stp x0, x1, [sp+8]
    00285ad4str x2, [sp+24]
    00285ad8mov x3, x30
    00285adcbl runtime.morestack_noctxt.abi0
    00285ae0ldp x0, x1, [sp+8]
    00285ae4ldr x2, [sp+24]
    00285ae8b 0x285960
    00285aecudf 0
    00285960
    00285af0
    00285af0math/big.(*Int).Cmp: ; void math/big.(*Int).Cmp(math/big.Int * x, math/big.Int * y)
    00285af0ldr x16, [x28+16]
    00285af4subs xzr, sp, x16
    00285af8b.ls 0x285c04
    00285afcstr x30, [sp-128]!
    00285b00stur x29, [sp-8]
    00285b04sub x29, sp, 8
    00285b08str x0, [sp+136]
    00285b0cstr x1, [sp+144]
    00285b10str xzr, [sp+64]
    00285b14subs xzr, x1, x0
    00285b18b.eq 0x285b20
    00285b1cb 0x285b28
    00285b20
    00285b20loc_285b20:
    00285b20b 0x285b24
    00285b24
    00285b24loc_285b24:
    00285b24b 0x285bf4
    00285b28
    00285b28loc_285b28:
    00285b28ldrsb x27, [x0]
    00285b2cldrsb x27, [x1]
    00285b30ldrb w6, [x0]
    00285b34ldrb w7, [x1]
    00285b38eor x6, x6, x7
    00285b3ceor x6, x6, 1
    00285b40tbnz w6, 0, 0x285b48
    00285b44b 0x285bc4
    00285b48
    00285b48loc_285b48:
    00285b48b 0x285b4c
    00285b4c
    00285b4cloc_285b4c:
    00285b4cldrsb x27, [x0]
    00285b50ldr x6, [x0+8]
    00285b54ldr x7, [x0+16]
    00285b58ldr x8, [x0+24]
    00285b5cstr x6, [sp+96]
    00285b60str x7, [sp+104]
    00285b64str x8, [sp+112]
    00285b68ldr x6, [sp+144]
    00285b6cldrsb x27, [x6]
    00285b70ldr x3, [x6+8]
    00285b74ldr x4, [x6+16]
    00285b78ldr x5, [x6+24]
    00285b7cstr x3, [sp+72]
    00285b80str x4, [sp+80]
    00285b84str x5, [sp+88]
    00285b88ldr x0, [sp+96]
    00285b8cldr x1, [sp+104]
    00285b90ldr x2, [sp+112]
    00285b94bl math/big.nat.cmp
    00285b98str x0, [sp+64]
    00285b9cldr x6, [sp+136]
    00285ba0ldrsb x27, [x6]
    00285ba4ldrb w6, [x6]
    00285ba8tbnz w6, 0, 0x285bb0
    00285bacb 0x285bbc
    00285bb0
    00285bb0loc_285bb0:
    00285bb0sub x1, xzr, x0
    00285bb4str x1, [sp+64]
    00285bb8b 0x285bc0
    00285bbc
    00285bbcloc_285bbc:
    00285bbcb 0x285bc0
    00285bc0
    00285bc0loc_285bc0:
    00285bc0b 0x285bf4
    00285bc4
    00285bc4loc_285bc4:
    00285bc4ldrsb x27, [x0]
    00285bc8ldrb w1, [x0]
    00285bcctbnz w1, 0, 0x285bd4
    00285bd0b 0x285be4
    00285bd4
    00285bd4loc_285bd4:
    00285bd4b 0x285bd8
    00285bd8
    00285bd8loc_285bd8:
    00285bd8movn x1, 0
    00285bdcstr x1, [sp+64]
    00285be0b 0x285bf4
    00285be4
    00285be4loc_285be4:
    00285be4b 0x285be8
    00285be8
    00285be8loc_285be8:
    00285be8orr x1, xzr, 1
    00285becstr x1, [sp+64]
    00285bf0b 0x285bf4
    00285bf4
    00285bf4loc_285bf4:
    00285bf4ldr x0, [sp+64]
    00285bf8ldur x29, [sp-8]
    00285bfcldr x30, [sp], 128
    00285c00ret x30
    00285c04
    00285c04loc_285c04:
    00285c04stp x0, x1, [sp+8]
    00285c08mov x3, x30
    00285c0cbl runtime.morestack_noctxt.abi0
    00285c10ldp x0, x1, [sp+8]
    00285c14b 0x285af0
    00285c18udf 0
    00285c1cudf 0
    00285af0
    00285c20
    00285c20math/big.low64: ; void math/big.low64(math/big.nat x)
    00285c20ldr x16, [x28+16]
    00285c24subs xzr, sp, x16
    00285c28b.ls 0x285ca0
    00285c2cstr x30, [sp-64]!
    00285c30stur x29, [sp-8]
    00285c34sub x29, sp, 8
    00285c38str x0, [sp+72]
    00285c3cstr x1, [sp+80]
    00285c40str x2, [sp+88]
    00285c44str xzr, [sp+32]
    00285c48str x1, [sp+48]
    00285c4ccbz x1, 0x285c54
    00285c50b 0x285c68
    00285c54
    00285c54loc_285c54:
    00285c54str xzr, [sp+32]
    00285c58mov x0, xzr
    00285c5cldur x29, [sp-8]
    00285c60ldr x30, [sp], 64
    00285c64ret x30
    00285c68
    00285c68loc_285c68:
    00285c68ldr x2, [sp+72]
    00285c6csubs xzr, x1, 0
    00285c70b.hi 0x285c78
    00285c74b 0x285c94
    00285c78
    00285c78loc_285c78:
    00285c78ldr x1, [x2]
    00285c7cstr x1, [sp+40]
    00285c80ldr x0, [sp+40]
    00285c84str x0, [sp+32]
    00285c88ldur x29, [sp-8]
    00285c8cldr x30, [sp], 64
    00285c90ret x30
    00285c94
    00285c94loc_285c94:
    00285c94mov x0, xzr
    00285c98bl runtime.panicIndex
    00285c9chint
    00285ca0
    00285ca0loc_285ca0:
    00285ca0stp x0, x1, [sp+8]
    00285ca4str x2, [sp+24]
    00285ca8mov x3, x30
    00285cacbl runtime.morestack_noctxt.abi0
    00285cb0ldp x0, x1, [sp+8]
    00285cb4ldr x2, [sp+24]
    00285cb8b 0x285c20
    00285cbcudf 0
    00285c20
    00285cc0
    00285cc0math/big.(*Int).Int64: ; void math/big.(*Int).Int64(math/big.Int * x)
    00285cc0ldr x16, [x28+16]
    00285cc4subs xzr, sp, x16
    00285cc8b.ls 0x285d48
    00285cccstr x30, [sp-96]!
    00285cd0stur x29, [sp-8]
    00285cd4sub x29, sp, 8
    00285cd8str x0, [sp+104]
    00285cdcstr xzr, [sp+40]
    00285ce0ldrsb x27, [x0]
    00285ce4ldr x3, [x0+8]
    00285ce8ldr x1, [x0+16]
    00285cecldr x2, [x0+24]
    00285cf0str x3, [sp+64]
    00285cf4str x1, [sp+72]
    00285cf8str x2, [sp+80]
    00285cfcmov x0, x3
    00285d00bl math/big.low64
    00285d04str x0, [sp+56]
    00285d08str x0, [sp+48]
    00285d0cldr x3, [sp+104]
    00285d10ldrsb x27, [x3]
    00285d14ldrb w3, [x3]
    00285d18tbnz w3, 0, 0x285d20
    00285d1cb 0x285d30
    00285d20
    00285d20loc_285d20:
    00285d20ldr x1, [sp+48]
    00285d24sub x1, xzr, x1
    00285d28str x1, [sp+48]
    00285d2cb 0x285d34
    00285d30
    00285d30loc_285d30:
    00285d30b 0x285d34
    00285d34
    00285d34loc_285d34:
    00285d34ldr x0, [sp+48]
    00285d38str x0, [sp+40]
    00285d3cldur x29, [sp-8]
    00285d40ldr x30, [sp], 96
    00285d44ret x30
    00285d48
    00285d48loc_285d48:
    00285d48str x0, [sp+8]
    00285d4cmov x3, x30
    00285d50bl runtime.morestack_noctxt.abi0
    00285d54ldr x0, [sp+8]
    00285d58b 0x285cc0
    00285d5cudf 0
    00285cc0
    00285d60
    00285d60math/big.(*Int).Uint64: ; void math/big.(*Int).Uint64(math/big.Int * x)
    00285d60ldr x16, [x28+16]
    00285d64subs xzr, sp, x16
    00285d68b.ls 0x285db8
    00285d6cstr x30, [sp-80]!
    00285d70stur x29, [sp-8]
    00285d74sub x29, sp, 8
    00285d78str x0, [sp+88]
    00285d7cstr xzr, [sp+32]
    00285d80ldrsb x27, [x0]
    00285d84ldr x3, [x0+8]
    00285d88ldr x1, [x0+16]
    00285d8cldr x2, [x0+24]
    00285d90str x3, [sp+48]
    00285d94str x1, [sp+56]
    00285d98str x2, [sp+64]
    00285d9cmov x0, x3
    00285da0bl math/big.low64
    00285da4str x0, [sp+40]
    00285da8str x0, [sp+32]
    00285dacldur x29, [sp-8]
    00285db0ldr x30, [sp], 80
    00285db4ret x30
    00285db8
    00285db8loc_285db8:
    00285db8str x0, [sp+8]
    00285dbcmov x3, x30
    00285dc0bl runtime.morestack_noctxt.abi0
    00285dc4ldr x0, [sp+8]
    00285dc8b 0x285d60
    00285dccudf 0
    00285d60
    00285dd0
    00285dd0math/big.(*Int).SetString: ; void math/big.(*Int).SetString(math/big.Int * z, struct string s, int base)
    00285dd0ldr x16, [x28+16]
    00285dd4subs xzr, sp, x16
    00285dd8b.ls 0x285e68
    00285ddcstr x30, [sp-96]!
    00285de0stur x29, [sp-8]
    00285de4sub x29, sp, 8
    00285de8str x0, [sp+104]
    00285decstr x1, [sp+112]
    00285df0str x2, [sp+120]
    00285df4str x3, [sp+128]
    00285df8str xzr, [sp+48]
    00285dfcstrb wzr, [sp+45]
    00285e00ldr x0, [sp+112]
    00285e04ldr x1, [sp+120]
    00285e08bl strings.NewReader
    00285e0cstr x0, [sp+72]
    00285e10str x0, [sp+64]
    00285e14str xzr, [sp+56]
    00285e18ldr x3, [sp+128]
    00285e1cldr x0, [sp+104]
    00285e20ldr x2, [sp+64]
    00285e24adrp x1, 0x492000
    00285e28add x1, x1, 2104
    00285e2cbl math/big.(*Int).setFromScanner
    00285e30str x0, [sp+56]
    00285e34strb w1, [sp+47]
    00285e38ldr x2, [sp+56]
    00285e3cstr x2, [sp+80]
    00285e40ldrb w2, [sp+47]
    00285e44strb w2, [sp+46]
    00285e48ldr x2, [sp+80]
    00285e4cstr x2, [sp+48]
    00285e50ldrb w1, [sp+46]
    00285e54strb w1, [sp+45]
    00285e58ldr x0, [sp+48]
    00285e5cldur x29, [sp-8]
    00285e60ldr x30, [sp], 96
    00285e64ret x30
    00285e68
    00285e68loc_285e68:
    00285e68stp x0, x1, [sp+8]
    00285e6cstp x2, x3, [sp+24]
    00285e70mov x3, x30
    00285e74bl runtime.morestack_noctxt.abi0
    00285e78ldp x0, x1, [sp+8]
    00285e7cldp x2, x3, [sp+24]
    00285e80b 0x285dd0
    00285e84udf 0
    00285e88udf 0
    00285e8cudf 0
    00285dd0
    00285e90
    00285e90math/big.(*Int).setFromScanner: ; void math/big.(*Int).setFromScanner(math/big.Int * z, io.ByteScanner r, int base)
    00285e90ldr x16, [x28+16]
    00285e94sub x17, sp, 48
    00285e98subs xzr, x17, x16
    00285e9cb.ls 0x285fec
    00285ea0str x30, [sp-176]!
    00285ea4stur x29, [sp-8]
    00285ea8sub x29, sp, 8
    00285eacstr x0, [sp+184]
    00285eb0str x1, [sp+192]
    00285eb4str x2, [sp+200]
    00285eb8str x3, [sp+208]
    00285ebcstr xzr, [sp+64]
    00285ec0strb wzr, [sp+45]
    00285ec4str xzr, [sp+144]
    00285ec8stp xzr, xzr, [sp+128]
    00285eccldr x3, [sp+208]
    00285ed0ldr x1, [sp+192]
    00285ed4ldr x2, [sp+200]
    00285ed8ldr x0, [sp+184]
    00285edcbl math/big.(*Int).scan
    00285ee0str x0, [sp+144]
    00285ee4str x1, [sp+56]
    00285ee8str x2, [sp+128]
    00285eecstr x3, [sp+136]
    00285ef0ldr x4, [sp+144]
    00285ef4str x4, [sp+120]
    00285ef8ldr x4, [sp+56]
    00285efcstr x4, [sp+48]
    00285f00ldr x4, [sp+136]
    00285f04ldr x5, [sp+128]
    00285f08str x5, [sp+104]
    00285f0cstr x4, [sp+112]
    00285f10str x5, [sp+88]
    00285f14str x4, [sp+96]
    00285f18cbnz x5, 0x285f20
    00285f1cb 0x285f3c
    00285f20
    00285f20loc_285f20:
    00285f20str xzr, [sp+64]
    00285f24strb wzr, [sp+45]
    00285f28ldr x0, [sp+64]
    00285f2cmov x1, xzr
    00285f30ldur x29, [sp-8]
    00285f34ldr x30, [sp], 176
    00285f38ret x30
    00285f3c
    00285f3cloc_285f3c:
    00285f3cstp xzr, xzr, [sp+128]
    00285f40ldr x1, [sp+192]
    00285f44ldrsb x27, [x1]
    00285f48ldr x1, [x1+24]
    00285f4cldr x0, [sp+200]
    00285f50blr x1
    00285f54strb w0, [sp+46]
    00285f58str x1, [sp+128]
    00285f5cstr x2, [sp+136]
    00285f60ldrb w1, [sp+46]
    00285f64strb w1, [sp+47]
    00285f68ldr x1, [sp+136]
    00285f6cldr x0, [sp+128]
    00285f70str x0, [sp+152]
    00285f74str x1, [sp+160]
    00285f78str x0, [sp+72]
    00285f7cstr x1, [sp+80]
    00285f80adrp x27, 0x79c000
    00285f84ldr x2, [x27+1520]
    00285f88subs xzr, x2, x0
    00285f8cb.ne 0x285f94
    00285f90b 0x285f98
    00285f94
    00285f94loc_285f94:
    00285f94b 0x285fd0
    00285f98
    00285f98loc_285f98:
    00285f98adrp x27, 0x79c000
    00285f9cldr x2, [x27+1528]
    00285fa0bl runtime.ifaceeq
    00285fa4tbnz w0, 0, 0x285fac
    00285fa8b 0x285fcc
    00285fac
    00285facloc_285fac:
    00285facldr x2, [sp+184]
    00285fb0str x2, [sp+64]
    00285fb4orr x1, xzr, 1
    00285fb8strb w1, [sp+45]
    00285fbcldr x0, [sp+64]
    00285fc0ldur x29, [sp-8]
    00285fc4ldr x30, [sp], 176
    00285fc8ret x30
    00285fcc
    00285fccloc_285fcc:
    00285fccb 0x285fd0
    00285fd0
    00285fd0loc_285fd0:
    00285fd0str xzr, [sp+64]
    00285fd4strb wzr, [sp+45]
    00285fd8ldr x0, [sp+64]
    00285fdcmov x1, xzr
    00285fe0ldur x29, [sp-8]
    00285fe4ldr x30, [sp], 176
    00285fe8ret x30
    00285fec
    00285fecloc_285fec:
    00285fecstp x0, x1, [sp+8]
    00285ff0stp x2, x3, [sp+24]
    00285ff4mov x3, x30
    00285ff8bl runtime.morestack_noctxt.abi0
    00285ffcldp x0, x1, [sp+8]
    00286000ldp x2, x3, [sp+24]
    00286004b 0x285e90
    00286008udf 0
    0028600cudf 0
    00285e90