File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    002b7e60
    002b7e60crypto/ecdsa.SignASN1: ; void crypto/ecdsa.SignASN1(io.Reader rand, crypto/ecdsa.PrivateKey * priv, struct []uint8 hash)
    002b7e60ldr x16, [x28+16]
    002b7e64sub x17, sp, 384
    002b7e68subs xzr, x17, x16
    002b7e6cb.ls 0x2b833c
    002b7e70sub x20, sp, 512
    002b7e74stp x29, x30, [x20-8]
    002b7e78add sp, x20, 0
    002b7e7csub x29, sp, 8
    002b7e80str x0, [sp+520]
    002b7e84str x1, [sp+528]
    002b7e88str x2, [sp+536]
    002b7e8cstr x3, [sp+544]
    002b7e90str x4, [sp+552]
    002b7e94str x5, [sp+560]
    002b7e98str xzr, [sp+96]
    002b7e9cstp xzr, xzr, [sp+104]
    002b7ea0stp xzr, xzr, [sp+80]
    002b7ea4ldr x0, [sp+520]
    002b7ea8ldr x1, [sp+528]
    002b7eacbl crypto/internal/randutil.MaybeReadByte
    002b7eb0bl crypto/internal/boring.UnreachableExceptTests
    002b7eb4ldr x2, [sp+536]
    002b7eb8ldrsb x27, [x2]
    002b7ebcldr x3, [x2]
    002b7ec0ldrsb x27, [x3]
    002b7ec4ldr x0, [x2+8]
    002b7ec8ldr x2, [x3+48]
    002b7eccblr x2
    002b7ed0str x0, [sp+328]
    002b7ed4str x0, [sp+216]
    002b7ed8bl crypto/elliptic.P224
    002b7edcstr x0, [sp+200]
    002b7ee0str x1, [sp+208]
    002b7ee4ldrsb x27, [x0]
    002b7ee8ldr x2, [x0+48]
    002b7eecmov x0, x1
    002b7ef0blr x2
    002b7ef4str x0, [sp+320]
    002b7ef8ldr x2, [sp+216]
    002b7efcsubs xzr, x0, x2
    002b7f00b.eq 0x2b7f08
    002b7f04b 0x2b7fc4
    002b7f08
    002b7f08loc_2b7f08:
    002b7f08b 0x2b7f0c
    002b7f0c
    002b7f0cloc_2b7f0c:
    002b7f0cbl crypto/internal/fips140/ecdsa.P224
    002b7f10str x0, [sp+312]
    002b7f14str xzr, [sp+288]
    002b7f18stp xzr, xzr, [sp+296]
    002b7f1cstp xzr, xzr, [sp+272]
    002b7f20ldr x3, [sp+520]
    002b7f24ldr x5, [sp+544]
    002b7f28ldr x2, [sp+536]
    002b7f2cldr x6, [sp+552]
    002b7f30ldr x4, [sp+528]
    002b7f34ldr x7, [sp+560]
    002b7f38ldr x1, [sp+312]
    002b7f3cadrp x0, 0x45c000
    002b7f40add x0, x0, 1536
    002b7f44bl crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002b7f48str x0, [sp+288]
    002b7f4cstr x1, [sp+296]
    002b7f50str x2, [sp+304]
    002b7f54str x3, [sp+272]
    002b7f58str x4, [sp+280]
    002b7f5cldr x0, [sp+288]
    002b7f60ldr x1, [sp+296]
    002b7f64ldr x2, [sp+304]
    002b7f68str x0, [sp+176]
    002b7f6cstr x1, [sp+184]
    002b7f70str x2, [sp+192]
    002b7f74ldr x0, [sp+272]
    002b7f78ldr x1, [sp+280]
    002b7f7cstr x0, [sp+160]
    002b7f80str x1, [sp+168]
    002b7f84ldr x0, [sp+176]
    002b7f88ldr x1, [sp+184]
    002b7f8cldr x2, [sp+192]
    002b7f90str x0, [sp+96]
    002b7f94str x1, [sp+104]
    002b7f98str x2, [sp+112]
    002b7f9cldr x3, [sp+160]
    002b7fa0ldr x4, [sp+168]
    002b7fa4str x3, [sp+80]
    002b7fa8str x4, [sp+88]
    002b7facldr x0, [sp+96]
    002b7fb0ldr x1, [sp+104]
    002b7fb4ldr x2, [sp+112]
    002b7fb8ldp x29, x30, [sp-8]
    002b7fbcadd sp, sp, 512
    002b7fc0ret x30
    002b7fc4
    002b7fc4loc_2b7fc4:
    002b7fc4bl crypto/elliptic.P256
    002b7fc8str x0, [sp+144]
    002b7fccstr x1, [sp+152]
    002b7fd0ldrsb x27, [x0]
    002b7fd4ldr x0, [x0+48]
    002b7fd8mov x2, x0
    002b7fdcmov x0, x1
    002b7fe0blr x2
    002b7fe4str x0, [sp+264]
    002b7fe8ldr x1, [sp+216]
    002b7fecsubs xzr, x0, x1
    002b7ff0b.eq 0x2b7ff8
    002b7ff4b 0x2b80b4
    002b7ff8
    002b7ff8loc_2b7ff8:
    002b7ff8b 0x2b7ffc
    002b7ffc
    002b7ffcloc_2b7ffc:
    002b7ffcbl crypto/internal/fips140/ecdsa.P256
    002b8000str x0, [sp+256]
    002b8004str xzr, [sp+288]
    002b8008stp xzr, xzr, [sp+296]
    002b800cstp xzr, xzr, [sp+272]
    002b8010ldr x3, [sp+520]
    002b8014ldr x5, [sp+544]
    002b8018ldr x2, [sp+536]
    002b801cldr x6, [sp+552]
    002b8020ldr x4, [sp+528]
    002b8024ldr x7, [sp+560]
    002b8028ldr x1, [sp+256]
    002b802cadrp x0, 0x45b000
    002b8030add x0, x0, 1568
    002b8034bl crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]
    002b8038str x0, [sp+288]
    002b803cstr x1, [sp+296]
    002b8040str x2, [sp+304]
    002b8044str x3, [sp+272]
    002b8048str x4, [sp+280]
    002b804cldr x0, [sp+288]
    002b8050ldr x1, [sp+296]
    002b8054ldr x2, [sp+304]
    002b8058str x0, [sp+120]
    002b805cstr x1, [sp+128]
    002b8060str x2, [sp+136]
    002b8064ldr x0, [sp+272]
    002b8068ldr x1, [sp+280]
    002b806cstr x0, [sp+488]
    002b8070str x1, [sp+496]
    002b8074ldr x0, [sp+120]
    002b8078ldr x1, [sp+128]
    002b807cldr x2, [sp+136]
    002b8080str x0, [sp+96]
    002b8084str x1, [sp+104]
    002b8088str x2, [sp+112]
    002b808cldr x3, [sp+488]
    002b8090ldr x4, [sp+496]
    002b8094str x3, [sp+80]
    002b8098str x4, [sp+88]
    002b809cldr x0, [sp+96]
    002b80a0ldr x1, [sp+104]
    002b80a4ldr x2, [sp+112]
    002b80a8ldp x29, x30, [sp-8]
    002b80acadd sp, sp, 512
    002b80b0ret x30
    002b80b4
    002b80b4loc_2b80b4:
    002b80b4bl crypto/elliptic.P384
    002b80b8str x0, [sp+472]
    002b80bcstr x1, [sp+480]
    002b80c0ldrsb x27, [x0]
    002b80c4ldr x0, [x0+48]
    002b80c8mov x2, x0
    002b80ccmov x0, x1
    002b80d0blr x2
    002b80d4str x0, [sp+248]
    002b80d8ldr x1, [sp+216]
    002b80dcsubs xzr, x0, x1
    002b80e0b.eq 0x2b80e8
    002b80e4b 0x2b81a4
    002b80e8
    002b80e8loc_2b80e8:
    002b80e8b 0x2b80ec
    002b80ec
    002b80ecloc_2b80ec:
    002b80ecbl crypto/internal/fips140/ecdsa.P384
    002b80f0str x0, [sp+240]
    002b80f4str xzr, [sp+288]
    002b80f8stp xzr, xzr, [sp+296]
    002b80fcstp xzr, xzr, [sp+272]
    002b8100ldr x3, [sp+520]
    002b8104ldr x5, [sp+544]
    002b8108ldr x2, [sp+536]
    002b810cldr x6, [sp+552]
    002b8110ldr x4, [sp+528]
    002b8114ldr x7, [sp+560]
    002b8118ldr x1, [sp+240]
    002b811cadrp x0, 0x45b000
    002b8120add x0, x0, 1600
    002b8124bl crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002b8128str x0, [sp+288]
    002b812cstr x1, [sp+296]
    002b8130str x2, [sp+304]
    002b8134str x3, [sp+272]
    002b8138str x4, [sp+280]
    002b813cldr x0, [sp+288]
    002b8140ldr x1, [sp+296]
    002b8144ldr x2, [sp+304]
    002b8148str x0, [sp+448]
    002b814cstr x1, [sp+456]
    002b8150str x2, [sp+464]
    002b8154ldr x0, [sp+272]
    002b8158ldr x1, [sp+280]
    002b815cstr x0, [sp+432]
    002b8160str x1, [sp+440]
    002b8164ldr x0, [sp+448]
    002b8168ldr x1, [sp+456]
    002b816cldr x2, [sp+464]
    002b8170str x0, [sp+96]
    002b8174str x1, [sp+104]
    002b8178str x2, [sp+112]
    002b817cldr x3, [sp+432]
    002b8180ldr x4, [sp+440]
    002b8184str x3, [sp+80]
    002b8188str x4, [sp+88]
    002b818cldr x0, [sp+96]
    002b8190ldr x1, [sp+104]
    002b8194ldr x2, [sp+112]
    002b8198ldp x29, x30, [sp-8]
    002b819cadd sp, sp, 512
    002b81a0ret x30
    002b81a4
    002b81a4loc_2b81a4:
    002b81a4bl crypto/elliptic.P521
    002b81a8str x0, [sp+416]
    002b81acstr x1, [sp+424]
    002b81b0ldrsb x27, [x0]
    002b81b4ldr x0, [x0+48]
    002b81b8mov x2, x0
    002b81bcmov x0, x1
    002b81c0blr x2
    002b81c4str x0, [sp+232]
    002b81c8ldr x1, [sp+216]
    002b81ccsubs xzr, x0, x1
    002b81d0b.eq 0x2b81d8
    002b81d4b 0x2b8294
    002b81d8
    002b81d8loc_2b81d8:
    002b81d8b 0x2b81dc
    002b81dc
    002b81dcloc_2b81dc:
    002b81dcbl crypto/internal/fips140/ecdsa.P521
    002b81e0str x0, [sp+224]
    002b81e4str xzr, [sp+288]
    002b81e8stp xzr, xzr, [sp+296]
    002b81ecstp xzr, xzr, [sp+272]
    002b81f0ldr x3, [sp+520]
    002b81f4ldr x5, [sp+544]
    002b81f8ldr x2, [sp+536]
    002b81fcldr x6, [sp+552]
    002b8200ldr x4, [sp+528]
    002b8204ldr x7, [sp+560]
    002b8208ldr x1, [sp+224]
    002b820cadrp x0, 0x45b000
    002b8210add x0, x0, 1632
    002b8214bl crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point]
    002b8218str x0, [sp+288]
    002b821cstr x1, [sp+296]
    002b8220str x2, [sp+304]
    002b8224str x3, [sp+272]
    002b8228str x4, [sp+280]
    002b822cldr x0, [sp+288]
    002b8230ldr x1, [sp+296]
    002b8234ldr x2, [sp+304]
    002b8238str x0, [sp+392]
    002b823cstr x1, [sp+400]
    002b8240str x2, [sp+408]
    002b8244ldr x0, [sp+272]
    002b8248ldr x1, [sp+280]
    002b824cstr x0, [sp+376]
    002b8250str x1, [sp+384]
    002b8254ldr x0, [sp+392]
    002b8258ldr x1, [sp+400]
    002b825cldr x2, [sp+408]
    002b8260str x0, [sp+96]
    002b8264str x1, [sp+104]
    002b8268str x2, [sp+112]
    002b826cldr x3, [sp+376]
    002b8270ldr x4, [sp+384]
    002b8274str x3, [sp+80]
    002b8278str x4, [sp+88]
    002b827cldr x0, [sp+96]
    002b8280ldr x1, [sp+104]
    002b8284ldr x2, [sp+112]
    002b8288ldp x29, x30, [sp-8]
    002b828cadd sp, sp, 512
    002b8290ret x30
    002b8294
    002b8294loc_2b8294:
    002b8294b 0x2b8298
    002b8298
    002b8298loc_2b8298:
    002b8298str xzr, [sp+288]
    002b829cstp xzr, xzr, [sp+296]
    002b82a0stp xzr, xzr, [sp+272]
    002b82a4ldr x1, [sp+520]
    002b82a8ldr x3, [sp+544]
    002b82acldr x4, [sp+552]
    002b82b0ldr x2, [sp+528]
    002b82b4ldr x5, [sp+560]
    002b82b8ldr x0, [sp+536]
    002b82bcbl crypto/ecdsa.signLegacy
    002b82c0str x0, [sp+288]
    002b82c4str x1, [sp+296]
    002b82c8str x2, [sp+304]
    002b82ccstr x3, [sp+272]
    002b82d0str x4, [sp+280]
    002b82d4ldr x6, [sp+288]
    002b82d8ldr x7, [sp+296]
    002b82dcldr x8, [sp+304]
    002b82e0str x6, [sp+352]
    002b82e4str x7, [sp+360]
    002b82e8str x8, [sp+368]
    002b82ecldr x6, [sp+272]
    002b82f0ldr x7, [sp+280]
    002b82f4str x6, [sp+336]
    002b82f8str x7, [sp+344]
    002b82fcldr x6, [sp+352]
    002b8300ldr x7, [sp+360]
    002b8304ldr x8, [sp+368]
    002b8308str x6, [sp+96]
    002b830cstr x7, [sp+104]
    002b8310str x8, [sp+112]
    002b8314ldr x3, [sp+336]
    002b8318ldr x4, [sp+344]
    002b831cstr x3, [sp+80]
    002b8320str x4, [sp+88]
    002b8324ldr x0, [sp+96]
    002b8328ldr x1, [sp+104]
    002b832cldr x2, [sp+112]
    002b8330ldp x29, x30, [sp-8]
    002b8334add sp, sp, 512
    002b8338ret x30
    002b833c
    002b833cloc_2b833c:
    002b833cstp x0, x1, [sp+8]
    002b8340stp x2, x3, [sp+24]
    002b8344stp x4, x5, [sp+40]
    002b8348mov x3, x30
    002b834cbl runtime.morestack_noctxt.abi0
    002b8350ldp x0, x1, [sp+8]
    002b8354ldp x2, x3, [sp+24]
    002b8358ldp x4, x5, [sp+40]
    002b835cb 0x2b7e60
    002b7e60
    002b8360
    002b8360crypto/ecdsa.signRFC6979: ; void crypto/ecdsa.signRFC6979(crypto/ecdsa.PrivateKey * priv, struct []uint8 hash, crypto.SignerOpts opts)
    002b8360ldr x16, [x28+16]
    002b8364sub x17, sp, 352
    002b8368subs xzr, x17, x16
    002b836cb.ls 0x2b8890
    002b8370sub x20, sp, 480
    002b8374stp x29, x30, [x20-8]
    002b8378add sp, x20, 0
    002b837csub x29, sp, 8
    002b8380str x0, [sp+488]
    002b8384str x1, [sp+496]
    002b8388str x2, [sp+504]
    002b838cstr x3, [sp+512]
    002b8390str x4, [sp+520]
    002b8394str x5, [sp+528]
    002b8398str xzr, [sp+104]
    002b839cstp xzr, xzr, [sp+112]
    002b83a0stp xzr, xzr, [sp+88]
    002b83a4ldr x2, [sp+520]
    002b83a8cbnz x2, 0x2b83b0
    002b83acb 0x2b8848
    002b83b0
    002b83b0loc_2b83b0:
    002b83b0ldr x1, [sp+520]
    002b83b4ldrsb x27, [x1]
    002b83b8ldr x1, [x1+24]
    002b83bcldr x0, [sp+528]
    002b83c0blr x1
    002b83c4str x0, [sp+64]
    002b83c8bl crypto.Hash.Size
    002b83ccstr x0, [sp+80]
    002b83d0ldr x1, [sp+504]
    002b83d4str x1, [sp+72]
    002b83d8subs xzr, x0, x1
    002b83dcb.ne 0x2b83e4
    002b83e0b 0x2b842c
    002b83e4
    002b83e4loc_2b83e4:
    002b83e4adrp x0, 0x410000
    002b83e8add x0, x0, 277
    002b83ecmovz x1, 47
    002b83f0bl errors.New
    002b83f4str x0, [sp+304]
    002b83f8str x1, [sp+312]
    002b83fcstr xzr, [sp+104]
    002b8400stp xzr, xzr, [sp+112]
    002b8404ldr x3, [sp+304]
    002b8408ldr x4, [sp+312]
    002b840cstr x3, [sp+88]
    002b8410str x4, [sp+96]
    002b8414ldr x0, [sp+104]
    002b8418ldr x1, [sp+112]
    002b841cldr x2, [sp+120]
    002b8420ldp x29, x30, [sp-8]
    002b8424add sp, sp, 480
    002b8428ret x30
    002b842c
    002b842cloc_2b842c:
    002b842cldr x1, [sp+488]
    002b8430ldrsb x27, [x1]
    002b8434ldr x2, [x1]
    002b8438ldrsb x27, [x2]
    002b843cldr x0, [x1+8]
    002b8440ldr x1, [x2+48]
    002b8444blr x1
    002b8448str x0, [sp+296]
    002b844cstr x0, [sp+200]
    002b8450bl crypto/elliptic.P224
    002b8454str x0, [sp+184]
    002b8458str x1, [sp+192]
    002b845cldrsb x27, [x0]
    002b8460ldr x2, [x0+48]
    002b8464mov x0, x1
    002b8468blr x2
    002b846cstr x0, [sp+288]
    002b8470ldr x1, [sp+200]
    002b8474subs xzr, x0, x1
    002b8478b.eq 0x2b8480
    002b847cb 0x2b8538
    002b8480
    002b8480loc_2b8480:
    002b8480b 0x2b8484
    002b8484
    002b8484loc_2b8484:
    002b8484bl crypto/internal/fips140/ecdsa.P224
    002b8488str x0, [sp+280]
    002b848cstr xzr, [sp+256]
    002b8490stp xzr, xzr, [sp+264]
    002b8494stp xzr, xzr, [sp+304]
    002b8498ldr x2, [sp+64]
    002b849cldr x4, [sp+496]
    002b84a0ldr x3, [sp+488]
    002b84a4ldr x5, [sp+504]
    002b84a8ldr x6, [sp+512]
    002b84acldr x1, [sp+280]
    002b84b0adrp x0, 0x45b000
    002b84b4add x0, x0, 1056
    002b84b8bl crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002b84bcstr x0, [sp+256]
    002b84c0str x1, [sp+264]
    002b84c4str x2, [sp+272]
    002b84c8str x3, [sp+304]
    002b84ccstr x4, [sp+312]
    002b84d0ldr x0, [sp+256]
    002b84d4ldr x1, [sp+264]
    002b84d8ldr x2, [sp+272]
    002b84dcstr x0, [sp+160]
    002b84e0str x1, [sp+168]
    002b84e4str x2, [sp+176]
    002b84e8ldr x0, [sp+304]
    002b84ecldr x1, [sp+312]
    002b84f0str x0, [sp+144]
    002b84f4str x1, [sp+152]
    002b84f8ldr x0, [sp+160]
    002b84fcldr x1, [sp+168]
    002b8500ldr x2, [sp+176]
    002b8504str x0, [sp+104]
    002b8508str x1, [sp+112]
    002b850cstr x2, [sp+120]
    002b8510ldr x3, [sp+144]
    002b8514ldr x4, [sp+152]
    002b8518str x3, [sp+88]
    002b851cstr x4, [sp+96]
    002b8520ldr x0, [sp+104]
    002b8524ldr x1, [sp+112]
    002b8528ldr x2, [sp+120]
    002b852cldp x29, x30, [sp-8]
    002b8530add sp, sp, 480
    002b8534ret x30
    002b8538
    002b8538loc_2b8538:
    002b8538bl crypto/elliptic.P256
    002b853cstr x0, [sp+128]
    002b8540str x1, [sp+136]
    002b8544ldrsb x27, [x0]
    002b8548ldr x0, [x0+48]
    002b854cmov x2, x0
    002b8550mov x0, x1
    002b8554blr x2
    002b8558str x0, [sp+248]
    002b855cldr x1, [sp+200]
    002b8560subs xzr, x0, x1
    002b8564b.eq 0x2b856c
    002b8568b 0x2b8624
    002b856c
    002b856cloc_2b856c:
    002b856cb 0x2b8570
    002b8570
    002b8570loc_2b8570:
    002b8570bl crypto/internal/fips140/ecdsa.P256
    002b8574str x0, [sp+240]
    002b8578str xzr, [sp+256]
    002b857cstp xzr, xzr, [sp+264]
    002b8580stp xzr, xzr, [sp+304]
    002b8584ldr x2, [sp+64]
    002b8588ldr x4, [sp+496]
    002b858cldr x3, [sp+488]
    002b8590ldr x5, [sp+504]
    002b8594ldr x6, [sp+512]
    002b8598ldr x1, [sp+240]
    002b859cadrp x0, 0x45b000
    002b85a0add x0, x0, 1184
    002b85a4bl crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P256Point]
    002b85a8str x0, [sp+256]
    002b85acstr x1, [sp+264]
    002b85b0str x2, [sp+272]
    002b85b4str x3, [sp+304]
    002b85b8str x4, [sp+312]
    002b85bcldr x0, [sp+256]
    002b85c0ldr x1, [sp+264]
    002b85c4ldr x2, [sp+272]
    002b85c8str x0, [sp+448]
    002b85ccstr x1, [sp+456]
    002b85d0str x2, [sp+464]
    002b85d4ldr x0, [sp+304]
    002b85d8ldr x1, [sp+312]
    002b85dcstr x0, [sp+432]
    002b85e0str x1, [sp+440]
    002b85e4ldr x0, [sp+448]
    002b85e8ldr x1, [sp+456]
    002b85ecldr x2, [sp+464]
    002b85f0str x0, [sp+104]
    002b85f4str x1, [sp+112]
    002b85f8str x2, [sp+120]
    002b85fcldr x3, [sp+432]
    002b8600ldr x4, [sp+440]
    002b8604str x3, [sp+88]
    002b8608str x4, [sp+96]
    002b860cldr x0, [sp+104]
    002b8610ldr x1, [sp+112]
    002b8614ldr x2, [sp+120]
    002b8618ldp x29, x30, [sp-8]
    002b861cadd sp, sp, 480
    002b8620ret x30
    002b8624
    002b8624loc_2b8624:
    002b8624bl crypto/elliptic.P384
    002b8628str x0, [sp+416]
    002b862cstr x1, [sp+424]
    002b8630ldrsb x27, [x0]
    002b8634ldr x0, [x0+48]
    002b8638mov x2, x0
    002b863cmov x0, x1
    002b8640blr x2
    002b8644str x0, [sp+232]
    002b8648ldr x1, [sp+200]
    002b864csubs xzr, x0, x1
    002b8650b.eq 0x2b8658
    002b8654b 0x2b8710
    002b8658
    002b8658loc_2b8658:
    002b8658b 0x2b865c
    002b865c
    002b865cloc_2b865c:
    002b865cbl crypto/internal/fips140/ecdsa.P384
    002b8660str x0, [sp+224]
    002b8664str xzr, [sp+256]
    002b8668stp xzr, xzr, [sp+264]
    002b866cstp xzr, xzr, [sp+304]
    002b8670ldr x2, [sp+64]
    002b8674ldr x4, [sp+496]
    002b8678ldr x3, [sp+488]
    002b867cldr x5, [sp+504]
    002b8680ldr x6, [sp+512]
    002b8684ldr x1, [sp+224]
    002b8688adrp x0, 0x45b000
    002b868cadd x0, x0, 1312
    002b8690bl crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002b8694str x0, [sp+256]
    002b8698str x1, [sp+264]
    002b869cstr x2, [sp+272]
    002b86a0str x3, [sp+304]
    002b86a4str x4, [sp+312]
    002b86a8ldr x0, [sp+256]
    002b86acldr x1, [sp+264]
    002b86b0ldr x2, [sp+272]
    002b86b4str x0, [sp+392]
    002b86b8str x1, [sp+400]
    002b86bcstr x2, [sp+408]
    002b86c0ldr x0, [sp+304]
    002b86c4ldr x1, [sp+312]
    002b86c8str x0, [sp+376]
    002b86ccstr x1, [sp+384]
    002b86d0ldr x0, [sp+392]
    002b86d4ldr x1, [sp+400]
    002b86d8ldr x2, [sp+408]
    002b86dcstr x0, [sp+104]
    002b86e0str x1, [sp+112]
    002b86e4str x2, [sp+120]
    002b86e8ldr x3, [sp+376]
    002b86ecldr x4, [sp+384]
    002b86f0str x3, [sp+88]
    002b86f4str x4, [sp+96]
    002b86f8ldr x0, [sp+104]
    002b86fcldr x1, [sp+112]
    002b8700ldr x2, [sp+120]
    002b8704ldp x29, x30, [sp-8]
    002b8708add sp, sp, 480
    002b870cret x30
    002b8710
    002b8710loc_2b8710:
    002b8710bl crypto/elliptic.P521
    002b8714str x0, [sp+360]
    002b8718str x1, [sp+368]
    002b871cldrsb x27, [x0]
    002b8720ldr x0, [x0+48]
    002b8724mov x2, x0
    002b8728mov x0, x1
    002b872cblr x2
    002b8730str x0, [sp+216]
    002b8734ldr x1, [sp+200]
    002b8738subs xzr, x0, x1
    002b873cb.eq 0x2b8744
    002b8740b 0x2b87fc
    002b8744
    002b8744loc_2b8744:
    002b8744b 0x2b8748
    002b8748
    002b8748loc_2b8748:
    002b8748bl crypto/internal/fips140/ecdsa.P521
    002b874cstr x0, [sp+208]
    002b8750str xzr, [sp+256]
    002b8754stp xzr, xzr, [sp+264]
    002b8758stp xzr, xzr, [sp+304]
    002b875cldr x2, [sp+64]
    002b8760ldr x4, [sp+496]
    002b8764ldr x3, [sp+488]
    002b8768ldr x5, [sp+504]
    002b876cldr x6, [sp+512]
    002b8770ldr x1, [sp+208]
    002b8774adrp x0, 0x45b000
    002b8778add x0, x0, 1440
    002b877cbl crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P521Point]
    002b8780str x0, [sp+256]
    002b8784str x1, [sp+264]
    002b8788str x2, [sp+272]
    002b878cstr x3, [sp+304]
    002b8790str x4, [sp+312]
    002b8794ldr x0, [sp+256]
    002b8798ldr x1, [sp+264]
    002b879cldr x2, [sp+272]
    002b87a0str x0, [sp+336]
    002b87a4str x1, [sp+344]
    002b87a8str x2, [sp+352]
    002b87acldr x0, [sp+304]
    002b87b0ldr x1, [sp+312]
    002b87b4str x0, [sp+320]
    002b87b8str x1, [sp+328]
    002b87bcldr x0, [sp+336]
    002b87c0ldr x1, [sp+344]
    002b87c4ldr x2, [sp+352]
    002b87c8str x0, [sp+104]
    002b87ccstr x1, [sp+112]
    002b87d0str x2, [sp+120]
    002b87d4ldr x3, [sp+320]
    002b87d8ldr x4, [sp+328]
    002b87dcstr x3, [sp+88]
    002b87e0str x4, [sp+96]
    002b87e4ldr x0, [sp+104]
    002b87e8ldr x1, [sp+112]
    002b87ecldr x2, [sp+120]
    002b87f0ldp x29, x30, [sp-8]
    002b87f4add sp, sp, 480
    002b87f8ret x30
    002b87fc
    002b87fcloc_2b87fc:
    002b87fcb 0x2b8800
    002b8800
    002b8800loc_2b8800:
    002b8800adrp x0, 0x412000
    002b8804add x0, x0, 3202
    002b8808movz x1, 54
    002b880cbl errors.New
    002b8810str x0, [sp+304]
    002b8814str x1, [sp+312]
    002b8818str xzr, [sp+104]
    002b881cstp xzr, xzr, [sp+112]
    002b8820ldr x3, [sp+304]
    002b8824ldr x4, [sp+312]
    002b8828str x3, [sp+88]
    002b882cstr x4, [sp+96]
    002b8830ldr x0, [sp+104]
    002b8834ldr x1, [sp+112]
    002b8838ldr x2, [sp+120]
    002b883cldp x29, x30, [sp-8]
    002b8840add sp, sp, 480
    002b8844ret x30
    002b8848
    002b8848loc_2b8848:
    002b8848adrp x0, 0x406000
    002b884cadd x0, x0, 3184
    002b8850orr x1, xzr, 32
    002b8854bl errors.New
    002b8858str x0, [sp+304]
    002b885cstr x1, [sp+312]
    002b8860str xzr, [sp+104]
    002b8864stp xzr, xzr, [sp+112]
    002b8868ldr x3, [sp+304]
    002b886cldr x4, [sp+312]
    002b8870str x3, [sp+88]
    002b8874str x4, [sp+96]
    002b8878ldr x0, [sp+104]
    002b887cldr x1, [sp+112]
    002b8880ldr x2, [sp+120]
    002b8884ldp x29, x30, [sp-8]
    002b8888add sp, sp, 480
    002b888cret x30
    002b8890
    002b8890loc_2b8890:
    002b8890stp x0, x1, [sp+8]
    002b8894stp x2, x3, [sp+24]
    002b8898stp x4, x5, [sp+40]
    002b889cmov x3, x30
    002b88a0bl runtime.morestack_noctxt.abi0
    002b88a4ldp x0, x1, [sp+8]
    002b88a8ldp x2, x3, [sp+24]
    002b88acldp x4, x5, [sp+40]
    002b88b0b 0x2b8360
    002b88b4udf 0
    002b88b8udf 0
    002b88bcudf 0
    002b8360
    002b88c0
    002b88c0crypto/ecdsa.encodeSignature: ; void crypto/ecdsa.encodeSignature(struct []uint8 r, struct []uint8 s)
    002b88c0ldr x16, [x28+16]
    002b88c4sub x17, sp, 192
    002b88c8subs xzr, x17, x16
    002b88ccb.ls 0x2b8a74
    002b88d0sub x20, sp, 320
    002b88d4stp x29, x30, [x20-8]
    002b88d8add sp, x20, 0
    002b88dcsub x29, sp, 8
    002b88e0str x0, [sp+328]
    002b88e4str x1, [sp+336]
    002b88e8str x2, [sp+344]
    002b88ecstr x3, [sp+352]
    002b88f0str x4, [sp+360]
    002b88f4str x5, [sp+368]
    002b88f8stp xzr, xzr, [sp+56]
    002b88fcstr xzr, [sp+72]
    002b8900stp xzr, xzr, [sp+40]
    002b8904add x20, sp, 80
    002b8908adr x27, 16
    002b890cstp x29, x27, [sp-24]
    002b8910sub x29, sp, 24
    002b8914bl fn_87cfc
    002b8918sub x29, sp, 8
    002b891cstr xzr, [sp+160]
    002b8920stp xzr, xzr, [sp+208]
    002b8924stp xzr, xzr, [sp+224]
    002b8928stp xzr, xzr, [sp+240]
    002b892cstr xzr, [sp+256]
    002b8930add x3, sp, 208
    002b8934str x3, [sp+304]
    002b8938ldrsb x27, [x3]
    002b893cadrp x4, 0
    002b8940add x4, x4, 2720
    002b8944str x4, [x3]
    002b8948ldrsb x27, [x3]
    002b894cldr x4, [sp+328]
    002b8950ldr x5, [sp+336]
    002b8954ldr x6, [sp+344]
    002b8958str x5, [x3+16]
    002b895cstr x6, [x3+24]
    002b8960adrp x27, 0x793000
    002b8964ldr w5, [x27+3056]
    002b8968cbz w5, 0x2b8970
    002b896cb 0x2b8974
    002b8970
    002b8970loc_2b8970:
    002b8970b 0x2b8988
    002b8974
    002b8974loc_2b8974:
    002b8974bl runtime.gcWriteBarrier2
    002b8978str x4, [x25]
    002b897cldr x5, [x3+8]
    002b8980str x5, [x25+8]
    002b8984b 0x2b8988
    002b8988
    002b8988loc_2b8988:
    002b8988str x4, [x3+8]
    002b898cldr x3, [sp+352]
    002b8990ldr x4, [sp+360]
    002b8994ldr x5, [sp+368]
    002b8998ldr x6, [sp+304]
    002b899cldrsb x27, [x6]
    002b89a0str x4, [x6+40]
    002b89a4str x5, [x6+48]
    002b89a8adrp x27, 0x793000
    002b89acldr w4, [x27+3056]
    002b89b0cbz w4, 0x2b89b8
    002b89b4b 0x2b89bc
    002b89b8
    002b89b8loc_2b89b8:
    002b89b8b 0x2b89d0
    002b89bc
    002b89bcloc_2b89bc:
    002b89bcbl runtime.gcWriteBarrier2
    002b89c0str x3, [x25]
    002b89c4ldr x4, [x6+32]
    002b89c8str x4, [x25+8]
    002b89ccb 0x2b89d0
    002b89d0
    002b89d0loc_2b89d0:
    002b89d0str x3, [x6+32]
    002b89d4ldr x2, [sp+304]
    002b89d8add x0, sp, 80
    002b89dcorr x1, xzr, 48
    002b89e0bl vendor/golang.org/x/crypto/cryptobyte.(*Builder).AddASN1
    002b89e4stp xzr, xzr, [sp+184]
    002b89e8str xzr, [sp+200]
    002b89ecstp xzr, xzr, [sp+168]
    002b89f0add x0, sp, 80
    002b89f4bl vendor/golang.org/x/crypto/cryptobyte.(*Builder).Bytes
    002b89f8str x0, [sp+184]
    002b89fcstr x1, [sp+192]
    002b8a00str x2, [sp+200]
    002b8a04str x3, [sp+168]
    002b8a08str x4, [sp+176]
    002b8a0cldr x3, [sp+184]
    002b8a10ldr x4, [sp+192]
    002b8a14ldr x5, [sp+200]
    002b8a18str x3, [sp+280]
    002b8a1cstr x4, [sp+288]
    002b8a20str x5, [sp+296]
    002b8a24ldr x3, [sp+168]
    002b8a28ldr x4, [sp+176]
    002b8a2cstr x3, [sp+264]
    002b8a30str x4, [sp+272]
    002b8a34ldr x3, [sp+280]
    002b8a38ldr x4, [sp+288]
    002b8a3cldr x5, [sp+296]
    002b8a40str x3, [sp+56]
    002b8a44str x4, [sp+64]
    002b8a48str x5, [sp+72]
    002b8a4cldr x3, [sp+264]
    002b8a50ldr x4, [sp+272]
    002b8a54str x3, [sp+40]
    002b8a58str x4, [sp+48]
    002b8a5cldr x0, [sp+56]
    002b8a60ldr x1, [sp+64]
    002b8a64ldr x2, [sp+72]
    002b8a68ldp x29, x30, [sp-8]
    002b8a6cadd sp, sp, 320
    002b8a70ret x30
    002b8a74
    002b8a74loc_2b8a74:
    002b8a74stp x0, x1, [sp+8]
    002b8a78stp x2, x3, [sp+24]
    002b8a7cstp x4, x5, [sp+40]
    002b8a80mov x3, x30
    002b8a84bl runtime.morestack_noctxt.abi0
    002b8a88ldp x0, x1, [sp+8]
    002b8a8cldp x2, x3, [sp+24]
    002b8a90ldp x4, x5, [sp+40]
    002b8a94b 0x2b88c0
    002b8a98udf 0
    002b8a9cudf 0
    002b88c0
    002b8aa0
    002b8aa0crypto/ecdsa.encodeSignature.func1: ; void crypto/ecdsa.encodeSignature.func1(vendor/golang.org/x/crypto/cryptobyte.Builder * b)
    002b8aa0ldr x16, [x28+16]
    002b8aa4subs xzr, sp, x16
    002b8aa8b.ls 0x2b8b20
    002b8aacstr x30, [sp-96]!
    002b8ab0stur x29, [sp-8]
    002b8ab4sub x29, sp, 8
    002b8ab8str x0, [sp+104]
    002b8abcldr x4, [x26+8]
    002b8ac0ldr x5, [x26+16]
    002b8ac4ldr x6, [x26+24]
    002b8ac8str x4, [sp+64]
    002b8accstr x5, [sp+72]
    002b8ad0str x6, [sp+80]
    002b8ad4ldr x4, [x26+32]
    002b8ad8ldr x5, [x26+40]
    002b8adcldr x6, [x26+48]
    002b8ae0str x4, [sp+40]
    002b8ae4str x5, [sp+48]
    002b8ae8str x6, [sp+56]
    002b8aecldr x1, [sp+64]
    002b8af0ldr x2, [sp+72]
    002b8af4ldr x3, [sp+80]
    002b8af8ldr x0, [sp+104]
    002b8afcbl crypto/ecdsa.addASN1IntBytes
    002b8b00ldr x1, [sp+40]
    002b8b04ldr x2, [sp+48]
    002b8b08ldr x3, [sp+56]
    002b8b0cldr x0, [sp+104]
    002b8b10bl crypto/ecdsa.addASN1IntBytes
    002b8b14ldur x29, [sp-8]
    002b8b18ldr x30, [sp], 96
    002b8b1cret x30
    002b8b20
    002b8b20loc_2b8b20:
    002b8b20str x0, [sp+8]
    002b8b24mov x3, x30
    002b8b28bl runtime.morestack.abi0
    002b8b2cldr x0, [sp+8]
    002b8b30b 0x2b8aa0
    002b8b34udf 0
    002b8b38udf 0
    002b8b3cudf 0
    002b8aa0
    002b8b40
    002b8b40crypto/ecdsa.addASN1IntBytes: ; void crypto/ecdsa.addASN1IntBytes(vendor/golang.org/x/crypto/cryptobyte.Builder * b, struct []uint8 bytes)
    002b8b40ldr x16, [x28+16]
    002b8b44subs xzr, sp, x16
    002b8b48b.ls 0x2b8cec
    002b8b4cstr x30, [sp-112]!
    002b8b50stur x29, [sp-8]
    002b8b54sub x29, sp, 8
    002b8b58str x0, [sp+120]
    002b8b5cstr x1, [sp+128]
    002b8b60str x2, [sp+136]
    002b8b64str x3, [sp+144]
    002b8b68b 0x2b8b6c
    002b8b6c
    002b8b6cloc_2b8b6c:
    002b8b6cldr x3, [sp+136]
    002b8b70str x3, [sp+40]
    002b8b74subs xzr, x3, 0
    002b8b78cset x4, ne
    002b8b7cstrb w4, [sp+39]
    002b8b80cbnz x3, 0x2b8b88
    002b8b84b 0x2b8bb0
    002b8b88
    002b8b88loc_2b8b88:
    002b8b88ldr x1, [sp+136]
    002b8b8cldr x3, [sp+128]
    002b8b90subs xzr, x1, 0
    002b8b94b.hi 0x2b8b9c
    002b8b98b 0x2b8ce0
    002b8b9c
    002b8b9cloc_2b8b9c:
    002b8b9cldrb w3, [x3]
    002b8ba0subs wzr, w3, 0
    002b8ba4cset x3, eq
    002b8ba8strb w3, [sp+39]
    002b8bacb 0x2b8bb4
    002b8bb0
    002b8bb0loc_2b8bb0:
    002b8bb0b 0x2b8bb4
    002b8bb4
    002b8bb4loc_2b8bb4:
    002b8bb4ldrb w3, [sp+39]
    002b8bb8tbnz w3, 0, 0x2b8bc0
    002b8bbcb 0x2b8c08
    002b8bc0
    002b8bc0loc_2b8bc0:
    002b8bc0ldr x1, [sp+136]
    002b8bc4ldr x3, [sp+128]
    002b8bc8ldr x4, [sp+144]
    002b8bccb 0x2b8bd0
    002b8bd0
    002b8bd0loc_2b8bd0:
    002b8bd0subs xzr, x1, 1
    002b8bd4b.hs 0x2b8bdc
    002b8bd8b 0x2b8cd8
    002b8bdc
    002b8bdcloc_2b8bdc:
    002b8bdcsub x4, x4, 1
    002b8be0sub x5, xzr, x4
    002b8be4sub x6, x1, 1
    002b8be8sbfm x5, x5, 63, 63
    002b8becand x5, x5, 1
    002b8bf0add x3, x3, x5
    002b8bf4str x3, [sp+128]
    002b8bf8str x6, [sp+136]
    002b8bfcstr x4, [sp+144]
    002b8c00b 0x2b8c04
    002b8c04
    002b8c04loc_2b8c04:
    002b8c04b 0x2b8b6c
    002b8c08
    002b8c08loc_2b8c08:
    002b8c08ldr x3, [sp+136]
    002b8c0cstr x3, [sp+40]
    002b8c10cbz x3, 0x2b8c18
    002b8c14b 0x2b8c58
    002b8c18
    002b8c18loc_2b8c18:
    002b8c18adrp x0, 0x3fc000
    002b8c1cadd x0, x0, 1692
    002b8c20orr x1, xzr, 15
    002b8c24bl errors.New
    002b8c28str x0, [sp+88]
    002b8c2cstr x1, [sp+96]
    002b8c30ldr x2, [sp+120]
    002b8c34mov x3, x0
    002b8c38mov x0, x2
    002b8c3cmov x4, x1
    002b8c40mov x1, x3
    002b8c44mov x2, x4
    002b8c48bl vendor/golang.org/x/crypto/cryptobyte.(*Builder).SetError
    002b8c4cldur x29, [sp-8]
    002b8c50ldr x30, [sp], 112
    002b8c54ret x30
    002b8c58
    002b8c58loc_2b8c58:
    002b8c58stp xzr, xzr, [sp+56]
    002b8c5cstp xzr, xzr, [sp+72]
    002b8c60add x3, sp, 56
    002b8c64str x3, [sp+48]
    002b8c68ldrsb x27, [x3]
    002b8c6cadrp x4, 0
    002b8c70add x4, x4, 3344
    002b8c74str x4, [x3]
    002b8c78ldrsb x27, [x3]
    002b8c7cldr x4, [sp+128]
    002b8c80ldr x5, [sp+136]
    002b8c84ldr x6, [sp+144]
    002b8c88str x5, [x3+16]
    002b8c8cstr x6, [x3+24]
    002b8c90adrp x27, 0x793000
    002b8c94ldr w5, [x27+3056]
    002b8c98cbz w5, 0x2b8ca0
    002b8c9cb 0x2b8ca4
    002b8ca0
    002b8ca0loc_2b8ca0:
    002b8ca0b 0x2b8cb8
    002b8ca4
    002b8ca4loc_2b8ca4:
    002b8ca4bl runtime.gcWriteBarrier2
    002b8ca8str x4, [x25]
    002b8cacldr x5, [x3+8]
    002b8cb0str x5, [x25+8]
    002b8cb4b 0x2b8cb8
    002b8cb8
    002b8cb8loc_2b8cb8:
    002b8cb8str x4, [x3+8]
    002b8cbcldr x0, [sp+120]
    002b8cc0ldr x2, [sp+48]
    002b8cc4orr x1, xzr, 2
    002b8cc8bl vendor/golang.org/x/crypto/cryptobyte.(*Builder).AddASN1
    002b8cccldur x29, [sp-8]
    002b8cd0ldr x30, [sp], 112
    002b8cd4ret x30
    002b8cd8
    002b8cd8loc_2b8cd8:
    002b8cd8orr x0, xzr, 1
    002b8cdcbl runtime.panicSliceB
    002b8ce0
    002b8ce0loc_2b8ce0:
    002b8ce0mov x0, xzr
    002b8ce4bl runtime.panicIndex
    002b8ce8hint
    002b8cec
    002b8cecloc_2b8cec:
    002b8cecstp x0, x1, [sp+8]
    002b8cf0stp x2, x3, [sp+24]
    002b8cf4mov x3, x30
    002b8cf8bl runtime.morestack_noctxt.abi0
    002b8cfcldp x0, x1, [sp+8]
    002b8d00ldp x2, x3, [sp+24]
    002b8d04b 0x2b8b40
    002b8d08udf 0
    002b8d0cudf 0
    002b8b40
    002b8d10
    002b8d10crypto/ecdsa.addASN1IntBytes.func1: ; void crypto/ecdsa.addASN1IntBytes.func1(vendor/golang.org/x/crypto/cryptobyte.Builder * c)
    002b8d10ldr x16, [x28+16]
    002b8d14subs xzr, sp, x16
    002b8d18b.ls 0x2b8d9c
    002b8d1cstr x30, [sp-80]!
    002b8d20stur x29, [sp-8]
    002b8d24sub x29, sp, 8
    002b8d28str x0, [sp+88]
    002b8d2cldr x1, [x26+16]
    002b8d30ldr x4, [x26+8]
    002b8d34ldr x5, [x26+24]
    002b8d38str x4, [sp+48]
    002b8d3cstr x1, [sp+56]
    002b8d40str x5, [sp+64]
    002b8d44subs xzr, x1, 0
    002b8d48b.hi 0x2b8d50
    002b8d4cb 0x2b8d90
    002b8d50
    002b8d50loc_2b8d50:
    002b8d50ldrb w4, [x4]
    002b8d54tbnz w4, 7, 0x2b8d5c
    002b8d58b 0x2b8d6c
    002b8d5c
    002b8d5cloc_2b8d5c:
    002b8d5cldr x0, [sp+88]
    002b8d60mov x1, xzr
    002b8d64bl vendor/golang.org/x/crypto/cryptobyte.(*Builder).AddUint8
    002b8d68b 0x2b8d70
    002b8d6c
    002b8d6cloc_2b8d6c:
    002b8d6cb 0x2b8d70
    002b8d70
    002b8d70loc_2b8d70:
    002b8d70ldr x1, [sp+48]
    002b8d74ldr x2, [sp+56]
    002b8d78ldr x3, [sp+64]
    002b8d7cldr x0, [sp+88]
    002b8d80bl vendor/golang.org/x/crypto/cryptobyte.(*Builder).AddBytes
    002b8d84ldur x29, [sp-8]
    002b8d88ldr x30, [sp], 80
    002b8d8cret x30
    002b8d90
    002b8d90loc_2b8d90:
    002b8d90mov x0, xzr
    002b8d94bl runtime.panicIndex
    002b8d98hint
    002b8d9c
    002b8d9cloc_2b8d9c:
    002b8d9cstr x0, [sp+8]
    002b8da0mov x3, x30
    002b8da4bl runtime.morestack.abi0
    002b8da8ldr x0, [sp+8]
    002b8dacb 0x2b8d10
    002b8d10
    002b8db0
    002b8db0crypto/ecdsa.VerifyASN1: ; void crypto/ecdsa.VerifyASN1(crypto/ecdsa.PublicKey * pub, struct []uint8 hash, struct []uint8 sig)
    002b8db0ldr x16, [x28+16]
    002b8db4sub x17, sp, 112
    002b8db8subs xzr, x17, x16
    002b8dbcb.ls 0x2b904c
    002b8dc0str x30, [sp-240]!
    002b8dc4stur x29, [sp-8]
    002b8dc8sub x29, sp, 8
    002b8dccstr x0, [sp+248]
    002b8dd0str x1, [sp+256]
    002b8dd4str x2, [sp+264]
    002b8dd8str x3, [sp+272]
    002b8ddcstr x4, [sp+280]
    002b8de0str x5, [sp+288]
    002b8de4str x6, [sp+296]
    002b8de8strb wzr, [sp+86]
    002b8decbl crypto/internal/boring.UnreachableExceptTests
    002b8df0ldr x0, [sp+248]
    002b8df4ldrsb x27, [x0]
    002b8df8ldr x1, [x0]
    002b8dfcldrsb x27, [x1]
    002b8e00ldr x0, [x0+8]
    002b8e04ldr x1, [x1+48]
    002b8e08blr x1
    002b8e0cstr x0, [sp+96]
    002b8e10str x0, [sp+168]
    002b8e14bl crypto/elliptic.P224
    002b8e18str x0, [sp+152]
    002b8e1cstr x1, [sp+160]
    002b8e20ldrsb x27, [x0]
    002b8e24ldr x0, [x0+48]
    002b8e28mov x2, x0
    002b8e2cmov x0, x1
    002b8e30blr x2
    002b8e34str x0, [sp+88]
    002b8e38ldr x1, [sp+168]
    002b8e3csubs xzr, x0, x1
    002b8e40b.eq 0x2b8e48
    002b8e44b 0x2b8e94
    002b8e48
    002b8e48loc_2b8e48:
    002b8e48b 0x2b8e4c
    002b8e4c
    002b8e4cloc_2b8e4c:
    002b8e4cbl crypto/internal/fips140/ecdsa.P224
    002b8e50str x0, [sp+224]
    002b8e54ldr x3, [sp+256]
    002b8e58ldr x6, [sp+280]
    002b8e5cldr x2, [sp+248]
    002b8e60ldr x4, [sp+264]
    002b8e64ldr x7, [sp+288]
    002b8e68ldr x5, [sp+272]
    002b8e6cldr x8, [sp+296]
    002b8e70mov x1, x0
    002b8e74adrp x0, 0x45b000
    002b8e78add x0, x0, 800
    002b8e7cbl crypto/ecdsa.verifyFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002b8e80strb w0, [sp+87]
    002b8e84strb w0, [sp+86]
    002b8e88ldur x29, [sp-8]
    002b8e8cldr x30, [sp], 240
    002b8e90ret x30
    002b8e94
    002b8e94loc_2b8e94:
    002b8e94bl crypto/elliptic.P256
    002b8e98str x0, [sp+136]
    002b8e9cstr x1, [sp+144]
    002b8ea0ldrsb x27, [x0]
    002b8ea4ldr x0, [x0+48]
    002b8ea8mov x2, x0
    002b8eacmov x0, x1
    002b8eb0blr x2
    002b8eb4str x0, [sp+216]
    002b8eb8ldr x1, [sp+168]
    002b8ebcsubs xzr, x0, x1
    002b8ec0b.eq 0x2b8ec8
    002b8ec4b 0x2b8f14
    002b8ec8
    002b8ec8loc_2b8ec8:
    002b8ec8b 0x2b8ecc
    002b8ecc
    002b8eccloc_2b8ecc:
    002b8eccbl crypto/internal/fips140/ecdsa.P256
    002b8ed0str x0, [sp+208]
    002b8ed4ldr x3, [sp+256]
    002b8ed8ldr x6, [sp+280]
    002b8edcldr x2, [sp+248]
    002b8ee0ldr x4, [sp+264]
    002b8ee4ldr x7, [sp+288]
    002b8ee8ldr x5, [sp+272]
    002b8eecldr x8, [sp+296]
    002b8ef0mov x1, x0
    002b8ef4adrp x0, 0x45b000
    002b8ef8add x0, x0, 832
    002b8efcbl crypto/ecdsa.verifyFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]
    002b8f00strb w0, [sp+87]
    002b8f04strb w0, [sp+86]
    002b8f08ldur x29, [sp-8]
    002b8f0cldr x30, [sp], 240
    002b8f10ret x30
    002b8f14
    002b8f14loc_2b8f14:
    002b8f14bl crypto/elliptic.P384
    002b8f18str x0, [sp+120]
    002b8f1cstr x1, [sp+128]
    002b8f20ldrsb x27, [x0]
    002b8f24ldr x0, [x0+48]
    002b8f28mov x2, x0
    002b8f2cmov x0, x1
    002b8f30blr x2
    002b8f34str x0, [sp+200]
    002b8f38ldr x1, [sp+168]
    002b8f3csubs xzr, x0, x1
    002b8f40b.eq 0x2b8f48
    002b8f44b 0x2b8f94
    002b8f48
    002b8f48loc_2b8f48:
    002b8f48b 0x2b8f4c
    002b8f4c
    002b8f4cloc_2b8f4c:
    002b8f4cbl crypto/internal/fips140/ecdsa.P384
    002b8f50str x0, [sp+192]
    002b8f54ldr x3, [sp+256]
    002b8f58ldr x6, [sp+280]
    002b8f5cldr x2, [sp+248]
    002b8f60ldr x4, [sp+264]
    002b8f64ldr x7, [sp+288]
    002b8f68ldr x5, [sp+272]
    002b8f6cldr x8, [sp+296]
    002b8f70mov x1, x0
    002b8f74adrp x0, 0x45b000
    002b8f78add x0, x0, 864
    002b8f7cbl crypto/ecdsa.verifyFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002b8f80strb w0, [sp+87]
    002b8f84strb w0, [sp+86]
    002b8f88ldur x29, [sp-8]
    002b8f8cldr x30, [sp], 240
    002b8f90ret x30
    002b8f94
    002b8f94loc_2b8f94:
    002b8f94bl crypto/elliptic.P521
    002b8f98str x0, [sp+104]
    002b8f9cstr x1, [sp+112]
    002b8fa0ldrsb x27, [x0]
    002b8fa4ldr x0, [x0+48]
    002b8fa8mov x2, x0
    002b8facmov x0, x1
    002b8fb0blr x2
    002b8fb4str x0, [sp+184]
    002b8fb8ldr x1, [sp+168]
    002b8fbcsubs xzr, x0, x1
    002b8fc0b.eq 0x2b8fc8
    002b8fc4b 0x2b9014
    002b8fc8
    002b8fc8loc_2b8fc8:
    002b8fc8b 0x2b8fcc
    002b8fcc
    002b8fccloc_2b8fcc:
    002b8fccbl crypto/internal/fips140/ecdsa.P521
    002b8fd0str x0, [sp+176]
    002b8fd4ldr x3, [sp+256]
    002b8fd8ldr x6, [sp+280]
    002b8fdcldr x2, [sp+248]
    002b8fe0ldr x4, [sp+264]
    002b8fe4ldr x7, [sp+288]
    002b8fe8ldr x5, [sp+272]
    002b8fecldr x8, [sp+296]
    002b8ff0mov x1, x0
    002b8ff4adrp x0, 0x45b000
    002b8ff8add x0, x0, 896
    002b8ffcbl crypto/ecdsa.verifyFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point]
    002b9000strb w0, [sp+87]
    002b9004strb w0, [sp+86]
    002b9008ldur x29, [sp-8]
    002b900cldr x30, [sp], 240
    002b9010ret x30
    002b9014
    002b9014loc_2b9014:
    002b9014b 0x2b9018
    002b9018
    002b9018loc_2b9018:
    002b9018ldr x1, [sp+256]
    002b901cldr x4, [sp+280]
    002b9020ldr x2, [sp+264]
    002b9024ldr x5, [sp+288]
    002b9028ldr x3, [sp+272]
    002b902cldr x6, [sp+296]
    002b9030ldr x0, [sp+248]
    002b9034bl crypto/ecdsa.verifyLegacy
    002b9038strb w0, [sp+87]
    002b903cstrb w0, [sp+86]
    002b9040ldur x29, [sp-8]
    002b9044ldr x30, [sp], 240
    002b9048ret x30
    002b904c
    002b904cloc_2b904c:
    002b904cstp x0, x1, [sp+8]
    002b9050stp x2, x3, [sp+24]
    002b9054stp x4, x5, [sp+40]
    002b9058str x6, [sp+56]
    002b905cmov x3, x30
    002b9060bl runtime.morestack_noctxt.abi0
    002b9064ldp x0, x1, [sp+8]
    002b9068ldp x2, x3, [sp+24]
    002b906cldp x4, x5, [sp+40]
    002b9070ldr x6, [sp+56]
    002b9074b 0x2b8db0
    002b9078udf 0
    002b907cudf 0
    002b8db0
    002b9080
    002b9080crypto/ecdsa.parseSignature: ; void crypto/ecdsa.parseSignature(struct []uint8 sig)
    002b9080ldr x16, [x28+16]
    002b9084sub x17, sp, 64
    002b9088subs xzr, x17, x16
    002b908cb.ls 0x2b9268
    002b9090str x30, [sp-192]!
    002b9094stur x29, [sp-8]
    002b9098sub x29, sp, 8
    002b909cstr x0, [sp+200]
    002b90a0str x1, [sp+208]
    002b90a4str x2, [sp+216]
    002b90a8str xzr, [sp+72]
    002b90acstp xzr, xzr, [sp+80]
    002b90b0str xzr, [sp+48]
    002b90b4stp xzr, xzr, [sp+56]
    002b90b8stp xzr, xzr, [sp+144]
    002b90bcstr xzr, [sp+120]
    002b90c0stp xzr, xzr, [sp+128]
    002b90c4ldr x3, [sp+200]
    002b90c8ldr x4, [sp+208]
    002b90ccldr x5, [sp+216]
    002b90d0str x3, [sp+96]
    002b90d4str x4, [sp+104]
    002b90d8str x5, [sp+112]
    002b90dcadd x0, sp, 96
    002b90e0add x1, sp, 120
    002b90e4orr x2, xzr, 48
    002b90e8bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadASN1
    002b90ecstrb w0, [sp+47]
    002b90f0eor x3, x0, 1
    002b90f4strb w3, [sp+42]
    002b90f8tbnz w0, 0, 0x2b9100
    002b90fcb 0x2b9120
    002b9100
    002b9100loc_2b9100:
    002b9100ldr x0, [sp+96]
    002b9104ldr x1, [sp+104]
    002b9108ldr x2, [sp+112]
    002b910cbl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    002b9110strb w0, [sp+46]
    002b9114eor x3, x0, 1
    002b9118strb w3, [sp+42]
    002b911cb 0x2b9124
    002b9120
    002b9120loc_2b9120:
    002b9120b 0x2b9124
    002b9124
    002b9124loc_2b9124:
    002b9124ldrb w8, [sp+42]
    002b9128strb w8, [sp+43]
    002b912ctbnz w8, 0, 0x2b9134
    002b9130b 0x2b9138
    002b9134
    002b9134loc_2b9134:
    002b9134b 0x2b9160
    002b9138
    002b9138loc_2b9138:
    002b9138add x2, sp, 72
    002b913cstr x2, [sp+176]
    002b9140add x0, sp, 120
    002b9144adrp x1, 0x334000
    002b9148add x1, x1, 0
    002b914cbl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadASN1Integer
    002b9150strb w0, [sp+46]
    002b9154eor x3, x0, 1
    002b9158strb w3, [sp+43]
    002b915cb 0x2b9160
    002b9160
    002b9160loc_2b9160:
    002b9160ldrb w8, [sp+43]
    002b9164strb w8, [sp+44]
    002b9168tbnz w8, 0, 0x2b9170
    002b916cb 0x2b9174
    002b9170
    002b9170loc_2b9170:
    002b9170b 0x2b919c
    002b9174
    002b9174loc_2b9174:
    002b9174add x2, sp, 48
    002b9178str x2, [sp+176]
    002b917cadd x0, sp, 120
    002b9180adrp x1, 0x334000
    002b9184add x1, x1, 0
    002b9188bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadASN1Integer
    002b918cstrb w0, [sp+46]
    002b9190eor x3, x0, 1
    002b9194strb w3, [sp+44]
    002b9198b 0x2b919c
    002b919c
    002b919cloc_2b919c:
    002b919cldrb w8, [sp+44]
    002b91a0strb w8, [sp+45]
    002b91a4tbnz w8, 0, 0x2b91ac
    002b91a8b 0x2b91b0
    002b91ac
    002b91acloc_2b91ac:
    002b91acb 0x2b91d0
    002b91b0
    002b91b0loc_2b91b0:
    002b91b0ldr x0, [sp+120]
    002b91b4ldr x1, [sp+128]
    002b91b8ldr x2, [sp+136]
    002b91bcbl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    002b91c0strb w0, [sp+46]
    002b91c4eor x3, x0, 1
    002b91c8strb w3, [sp+45]
    002b91ccb 0x2b91d0
    002b91d0
    002b91d0loc_2b91d0:
    002b91d0ldrb w8, [sp+45]
    002b91d4tbnz w8, 0, 0x2b91dc
    002b91d8b 0x2b9238
    002b91dc
    002b91dcloc_2b91dc:
    002b91dcadrp x0, 0x3fa000
    002b91e0add x0, x0, 2668
    002b91e4movz x1, 13
    002b91e8bl errors.New
    002b91ecstr x0, [sp+160]
    002b91f0str x1, [sp+168]
    002b91f4str xzr, [sp+72]
    002b91f8stp xzr, xzr, [sp+80]
    002b91fcstr xzr, [sp+48]
    002b9200stp xzr, xzr, [sp+56]
    002b9204ldr x6, [sp+160]
    002b9208ldr x7, [sp+168]
    002b920cstr x6, [sp+144]
    002b9210str x7, [sp+152]
    002b9214ldr x0, [sp+72]
    002b9218ldr x3, [sp+48]
    002b921cldr x1, [sp+80]
    002b9220ldr x4, [sp+56]
    002b9224ldr x2, [sp+88]
    002b9228ldr x5, [sp+64]
    002b922cldur x29, [sp-8]
    002b9230ldr x30, [sp], 192
    002b9234ret x30
    002b9238
    002b9238loc_2b9238:
    002b9238stp xzr, xzr, [sp+144]
    002b923cldr x3, [sp+48]
    002b9240ldr x1, [sp+80]
    002b9244ldr x4, [sp+56]
    002b9248ldr x2, [sp+88]
    002b924cldr x5, [sp+64]
    002b9250ldr x0, [sp+72]
    002b9254mov x6, xzr
    002b9258mov x7, xzr
    002b925cldur x29, [sp-8]
    002b9260ldr x30, [sp], 192
    002b9264ret x30
    002b9268
    002b9268loc_2b9268:
    002b9268stp x0, x1, [sp+8]
    002b926cstr x2, [sp+24]
    002b9270mov x3, x30
    002b9274bl runtime.morestack_noctxt.abi0
    002b9278ldp x0, x1, [sp+8]
    002b927cldr x2, [sp+24]
    002b9280b 0x2b9080
    002b9284udf 0
    002b9288udf 0
    002b928cudf 0
    002b9080
    002b9290
    002b9290crypto/ecdsa.publicKeyFromFIPS: ; void crypto/ecdsa.publicKeyFromFIPS(crypto/elliptic.Curve curve, crypto/internal/fips140/ecdsa.PublicKey * pub)
    002b9290ldr x16, [x28+16]
    002b9294sub x17, sp, 80
    002b9298subs xzr, x17, x16
    002b929cb.ls 0x2b9450
    002b92a0str x30, [sp-208]!
    002b92a4stur x29, [sp-8]
    002b92a8sub x29, sp, 8
    002b92acstr x0, [sp+216]
    002b92b0str x1, [sp+224]
    002b92b4str x2, [sp+232]
    002b92b8str xzr, [sp+64]
    002b92bcstp xzr, xzr, [sp+48]
    002b92c0ldr x0, [sp+232]
    002b92c4bl crypto/internal/fips140/ecdsa.(*PublicKey).Bytes
    002b92c8str x0, [sp+176]
    002b92ccstr x1, [sp+184]
    002b92d0str x2, [sp+192]
    002b92d4str xzr, [sp+168]
    002b92d8str xzr, [sp+160]
    002b92dcstp xzr, xzr, [sp+144]
    002b92e0ldr x0, [sp+216]
    002b92e4ldr x1, [sp+224]
    002b92e8ldr x2, [sp+176]
    002b92ecldr x3, [sp+184]
    002b92f0ldr x4, [sp+192]
    002b92f4bl crypto/ecdsa.pointToAffine
    002b92f8str x0, [sp+168]
    002b92fcstr x1, [sp+160]
    002b9300str x2, [sp+144]
    002b9304str x3, [sp+152]
    002b9308ldr x1, [sp+168]
    002b930cstr x1, [sp+128]
    002b9310ldr x1, [sp+160]
    002b9314str x1, [sp+120]
    002b9318ldr x1, [sp+144]
    002b931cldr x2, [sp+152]
    002b9320str x1, [sp+104]
    002b9324str x2, [sp+112]
    002b9328ldr x1, [sp+128]
    002b932cstr x1, [sp+80]
    002b9330ldr x1, [sp+120]
    002b9334str x1, [sp+72]
    002b9338ldr x1, [sp+112]
    002b933cldr x2, [sp+104]
    002b9340str x2, [sp+88]
    002b9344str x1, [sp+96]
    002b9348cbnz x2, 0x2b9350
    002b934cb 0x2b9374
    002b9350
    002b9350loc_2b9350:
    002b9350str xzr, [sp+64]
    002b9354ldr x1, [sp+88]
    002b9358ldr x2, [sp+96]
    002b935cstr x1, [sp+48]
    002b9360str x2, [sp+56]
    002b9364ldr x0, [sp+64]
    002b9368ldur x29, [sp-8]
    002b936cldr x30, [sp], 208
    002b9370ret x30
    002b9374
    002b9374loc_2b9374:
    002b9374adrp x0, 0x3cd000
    002b9378add x0, x0, 3008
    002b937cbl runtime.newobject
    002b9380str x0, [sp+136]
    002b9384ldr x1, [sp+224]
    002b9388ldr x2, [sp+216]
    002b938cstr x2, [x0]
    002b9390adrp x27, 0x792000
    002b9394ldr w2, [x27+3056]
    002b9398cbz w2, 0x2b93a0
    002b939cb 0x2b93a4
    002b93a0
    002b93a0loc_2b93a0:
    002b93a0b 0x2b93b8
    002b93a4
    002b93a4loc_2b93a4:
    002b93a4bl runtime.gcWriteBarrier2
    002b93a8str x1, [x25]
    002b93acldr x3, [x0+8]
    002b93b0str x3, [x25+8]
    002b93b4b 0x2b93b8
    002b93b8
    002b93b8loc_2b93b8:
    002b93b8str x1, [x0+8]
    002b93bcldr x3, [sp+136]
    002b93c0ldrsb x27, [x3]
    002b93c4ldr x4, [sp+80]
    002b93c8adrp x27, 0x792000
    002b93ccldr w5, [x27+3056]
    002b93d0cbz w5, 0x2b93d8
    002b93d4b 0x2b93dc
    002b93d8
    002b93d8loc_2b93d8:
    002b93d8b 0x2b93f0
    002b93dc
    002b93dcloc_2b93dc:
    002b93dcbl runtime.gcWriteBarrier2
    002b93e0str x4, [x25]
    002b93e4ldr x5, [x3+16]
    002b93e8str x5, [x25+8]
    002b93ecb 0x2b93f0
    002b93f0
    002b93f0loc_2b93f0:
    002b93f0str x4, [x3+16]
    002b93f4ldr x3, [sp+136]
    002b93f8ldrsb x27, [x3]
    002b93fcldr x4, [sp+72]
    002b9400adrp x27, 0x792000
    002b9404ldr w5, [x27+3056]
    002b9408cbz w5, 0x2b9410
    002b940cb 0x2b9414
    002b9410
    002b9410loc_2b9410:
    002b9410b 0x2b9428
    002b9414
    002b9414loc_2b9414:
    002b9414bl runtime.gcWriteBarrier2
    002b9418str x4, [x25]
    002b941cldr x5, [x3+24]
    002b9420str x5, [x25+8]
    002b9424b 0x2b9428
    002b9428
    002b9428loc_2b9428:
    002b9428str x4, [x3+24]
    002b942cldr x3, [sp+136]
    002b9430str x3, [sp+64]
    002b9434stp xzr, xzr, [sp+48]
    002b9438ldr x0, [sp+64]
    002b943cmov x1, xzr
    002b9440mov x2, xzr
    002b9444ldur x29, [sp-8]
    002b9448ldr x30, [sp], 208
    002b944cret x30
    002b9450
    002b9450loc_2b9450:
    002b9450stp x0, x1, [sp+8]
    002b9454str x2, [sp+24]
    002b9458mov x3, x30
    002b945cbl runtime.morestack_noctxt.abi0
    002b9460ldp x0, x1, [sp+8]
    002b9464ldr x2, [sp+24]
    002b9468b 0x2b9290
    002b946cudf 0
    002b9290
    002b9470
    002b9470crypto/ecdsa.privateKeyFromFIPS: ; void crypto/ecdsa.privateKeyFromFIPS(crypto/elliptic.Curve curve, crypto/internal/fips140/ecdsa.PrivateKey * priv)
    002b9470ldr x16, [x28+16]
    002b9474sub x17, sp, 80
    002b9478subs xzr, x17, x16
    002b947cb.ls 0x2b964c
    002b9480str x30, [sp-208]!
    002b9484stur x29, [sp-8]
    002b9488sub x29, sp, 8
    002b948cstr x0, [sp+216]
    002b9490str x1, [sp+224]
    002b9494str x2, [sp+232]
    002b9498str xzr, [sp+64]
    002b949cstp xzr, xzr, [sp+48]
    002b94a0ldr x0, [sp+232]
    002b94a4bl crypto/internal/fips140/ecdsa.(*PrivateKey).PublicKey
    002b94a8str x0, [sp+104]
    002b94acstr xzr, [sp+96]
    002b94b0stp xzr, xzr, [sp+184]
    002b94b4ldr x0, [sp+216]
    002b94b8ldr x1, [sp+224]
    002b94bcldr x2, [sp+104]
    002b94c0bl crypto/ecdsa.publicKeyFromFIPS
    002b94c4str x0, [sp+96]
    002b94c8str x1, [sp+184]
    002b94ccstr x2, [sp+192]
    002b94d0ldr x1, [sp+96]
    002b94d4str x1, [sp+128]
    002b94d8ldr x1, [sp+184]
    002b94dcldr x2, [sp+192]
    002b94e0str x1, [sp+112]
    002b94e4str x2, [sp+120]
    002b94e8ldr x1, [sp+128]
    002b94ecstr x1, [sp+72]
    002b94f0ldr x1, [sp+120]
    002b94f4ldr x2, [sp+112]
    002b94f8str x2, [sp+80]
    002b94fcstr x1, [sp+88]
    002b9500cbnz x2, 0x2b9508
    002b9504b 0x2b952c
    002b9508
    002b9508loc_2b9508:
    002b9508str xzr, [sp+64]
    002b950cldr x1, [sp+80]
    002b9510ldr x2, [sp+88]
    002b9514str x1, [sp+48]
    002b9518str x2, [sp+56]
    002b951cldr x0, [sp+64]
    002b9520ldur x29, [sp-8]
    002b9524ldr x30, [sp], 208
    002b9528ret x30
    002b952c
    002b952cloc_2b952c:
    002b952cadrp x0, 0x38c000
    002b9530add x0, x0, 1024
    002b9534bl runtime.newobject
    002b9538str x0, [sp+176]
    002b953cldr x0, [sp+232]
    002b9540bl crypto/internal/fips140/ecdsa.(*PrivateKey).Bytes
    002b9544str x0, [sp+152]
    002b9548str x1, [sp+160]
    002b954cstr x2, [sp+168]
    002b9550ldr x3, [sp+176]
    002b9554mov x4, x0
    002b9558mov x0, x3
    002b955cmov x5, x1
    002b9560mov x1, x4
    002b9564mov x6, x2
    002b9568mov x2, x5
    002b956cmov x3, x6
    002b9570bl math/big.(*Int).SetBytes
    002b9574str x0, [sp+144]
    002b9578adrp x0, 0x3c6000
    002b957cadd x0, x0, 1056
    002b9580bl runtime.newobject
    002b9584str x0, [sp+136]
    002b9588ldr x1, [sp+72]
    002b958cldrsb x27, [x1]
    002b9590ldr x2, [x1+8]
    002b9594ldr x3, [x1]
    002b9598ldr x4, [x1+16]
    002b959cldr x1, [x1+24]
    002b95a0str x3, [x0]
    002b95a4adrp x27, 0x792000
    002b95a8ldr w3, [x27+3056]
    002b95accbz w3, 0x2b95b4
    002b95b0b 0x2b95b8
    002b95b4
    002b95b4loc_2b95b4:
    002b95b4b 0x2b95e4
    002b95b8
    002b95b8loc_2b95b8:
    002b95b8bl runtime.gcWriteBarrier6
    002b95bcstr x2, [x25]
    002b95c0ldr x3, [x0+8]
    002b95c4str x3, [x25+8]
    002b95c8str x4, [x25+16]
    002b95ccldr x3, [x0+16]
    002b95d0str x3, [x25+24]
    002b95d4str x1, [x25+32]
    002b95d8ldr x3, [x0+24]
    002b95dcstr x3, [x25+40]
    002b95e0b 0x2b95e4
    002b95e4
    002b95e4loc_2b95e4:
    002b95e4str x2, [x0+8]
    002b95e8str x4, [x0+16]
    002b95ecstr x1, [x0+24]
    002b95f0ldr x3, [sp+136]
    002b95f4ldrsb x27, [x3]
    002b95f8ldr x4, [sp+144]
    002b95fcadrp x27, 0x792000
    002b9600ldr w5, [x27+3056]
    002b9604cbz w5, 0x2b960c
    002b9608b 0x2b9610
    002b960c
    002b960cloc_2b960c:
    002b960cb 0x2b9624
    002b9610
    002b9610loc_2b9610:
    002b9610bl runtime.gcWriteBarrier2
    002b9614str x4, [x25]
    002b9618ldr x5, [x3+32]
    002b961cstr x5, [x25+8]
    002b9620b 0x2b9624
    002b9624
    002b9624loc_2b9624:
    002b9624str x4, [x3+32]
    002b9628ldr x3, [sp+136]
    002b962cstr x3, [sp+64]
    002b9630stp xzr, xzr, [sp+48]
    002b9634ldr x0, [sp+64]
    002b9638mov x1, xzr
    002b963cmov x2, xzr
    002b9640ldur x29, [sp-8]
    002b9644ldr x30, [sp], 208
    002b9648ret x30
    002b964c
    002b964cloc_2b964c:
    002b964cstp x0, x1, [sp+8]
    002b9650str x2, [sp+24]
    002b9654mov x3, x30
    002b9658bl runtime.morestack_noctxt.abi0
    002b965cldp x0, x1, [sp+8]
    002b9660ldr x2, [sp+24]
    002b9664b 0x2b9470
    002b9668udf 0
    002b966cudf 0
    002b9470
    002b9670
    002b9670crypto/ecdsa.pointFromAffine: ; void crypto/ecdsa.pointFromAffine(crypto/elliptic.Curve curve, math/big.Int * x, math/big.Int * y)
    002b9670ldr x16, [x28+16]
    002b9674sub x17, sp, 80
    002b9678subs xzr, x17, x16
    002b967cb.ls 0x2b997c
    002b9680str x30, [sp-208]!
    002b9684stur x29, [sp-8]
    002b9688sub x29, sp, 8
    002b968cstr x0, [sp+216]
    002b9690str x1, [sp+224]
    002b9694str x2, [sp+232]
    002b9698str x3, [sp+240]
    002b969cstr xzr, [sp+104]
    002b96a0stp xzr, xzr, [sp+112]
    002b96a4stp xzr, xzr, [sp+88]
    002b96a8ldr x1, [sp+216]
    002b96acldrsb x27, [x1]
    002b96b0ldr x1, [x1+48]
    002b96b4ldr x0, [sp+224]
    002b96b8blr x1
    002b96bcstr x0, [sp+152]
    002b96c0ldrsb x27, [x0]
    002b96c4ldr x1, [x0+40]
    002b96c8str x1, [sp+56]
    002b96ccldr x0, [sp+232]
    002b96d0bl math/big.(*Int).Sign
    002b96d4str x0, [sp+80]
    002b96d8subs xzr, x0, 0
    002b96dccset x1, lt
    002b96e0strb w1, [sp+47]
    002b96e4tbnz x0, 63, 0x2b96ec
    002b96e8b 0x2b96f0
    002b96ec
    002b96ecloc_2b96ec:
    002b96ecb 0x2b970c
    002b96f0
    002b96f0loc_2b96f0:
    002b96f0ldr x0, [sp+240]
    002b96f4bl math/big.(*Int).Sign
    002b96f8str x0, [sp+72]
    002b96fcsubs xzr, x0, 0
    002b9700cset x1, lt
    002b9704strb w1, [sp+47]
    002b9708b 0x2b970c
    002b970c
    002b970cloc_2b970c:
    002b970cldrb w2, [sp+47]
    002b9710tbnz w2, 0, 0x2b9718
    002b9714b 0x2b9760
    002b9718
    002b9718loc_2b9718:
    002b9718adrp x0, 0x3fd000
    002b971cadd x0, x0, 1669
    002b9720movz x1, 19
    002b9724bl errors.New
    002b9728str x0, [sp+184]
    002b972cstr x1, [sp+192]
    002b9730str xzr, [sp+104]
    002b9734stp xzr, xzr, [sp+112]
    002b9738ldr x3, [sp+184]
    002b973cldr x4, [sp+192]
    002b9740str x3, [sp+88]
    002b9744str x4, [sp+96]
    002b9748ldr x0, [sp+104]
    002b974cldr x1, [sp+112]
    002b9750ldr x2, [sp+120]
    002b9754ldur x29, [sp-8]
    002b9758ldr x30, [sp], 208
    002b975cret x30
    002b9760
    002b9760loc_2b9760:
    002b9760ldr x0, [sp+232]
    002b9764bl math/big.(*Int).BitLen
    002b9768str x0, [sp+80]
    002b976cldr x1, [sp+56]
    002b9770subs xzr, x0, x1
    002b9774cset x1, gt
    002b9778strb w1, [sp+47]
    002b977cb.gt 0x2b9784
    002b9780b 0x2b9788
    002b9784
    002b9784loc_2b9784:
    002b9784b 0x2b97a8
    002b9788
    002b9788loc_2b9788:
    002b9788ldr x0, [sp+240]
    002b978cbl math/big.(*Int).BitLen
    002b9790str x0, [sp+72]
    002b9794ldr x1, [sp+56]
    002b9798subs xzr, x0, x1
    002b979ccset x1, gt
    002b97a0strb w1, [sp+47]
    002b97a4b 0x2b97a8
    002b97a8
    002b97a8loc_2b97a8:
    002b97a8ldrb w3, [sp+47]
    002b97actbnz w3, 0, 0x2b97b4
    002b97b0b 0x2b97fc
    002b97b4
    002b97b4loc_2b97b4:
    002b97b4adrp x0, 0x3ff000
    002b97b8add x0, x0, 132
    002b97bcmovz x1, 22
    002b97c0bl errors.New
    002b97c4str x0, [sp+184]
    002b97c8str x1, [sp+192]
    002b97ccstr xzr, [sp+104]
    002b97d0stp xzr, xzr, [sp+112]
    002b97d4ldr x3, [sp+184]
    002b97d8ldr x4, [sp+192]
    002b97dcstr x3, [sp+88]
    002b97e0str x4, [sp+96]
    002b97e4ldr x0, [sp+104]
    002b97e8ldr x1, [sp+112]
    002b97ecldr x2, [sp+120]
    002b97f0ldur x29, [sp-8]
    002b97f4ldr x30, [sp], 208
    002b97f8ret x30
    002b97fc
    002b97fcloc_2b97fc:
    002b97fcldr x3, [sp+56]
    002b9800add x4, x3, 7
    002b9804sbfm x4, x4, 63, 63
    002b9808add x3, x3, x4, lsr #61
    002b980cadd x3, x3, 7
    002b9810sbfm x3, x3, 3, 63
    002b9814str x3, [sp+48]
    002b9818ubfm x3, x3, 63, 62
    002b981cadd x2, x3, 1
    002b9820str x2, [sp+64]
    002b9824adrp x0, 0x33c000
    002b9828add x0, x0, 3072
    002b982cmov x1, x2
    002b9830bl runtime.makeslice
    002b9834ldr x1, [sp+64]
    002b9838ldr x3, [sp+64]
    002b983cstr x0, [sp+128]
    002b9840str x1, [sp+136]
    002b9844str x3, [sp+144]
    002b9848subs xzr, x1, 0
    002b984cb.hi 0x2b9854
    002b9850b 0x2b9970
    002b9854
    002b9854loc_2b9854:
    002b9854orr x4, xzr, 4
    002b9858strb w4, [x0]
    002b985cldr x2, [sp+48]
    002b9860add x1, x2, 1
    002b9864str x1, [sp+80]
    002b9868ldr x4, [sp+144]
    002b986cldr x5, [sp+128]
    002b9870subs xzr, x4, x1
    002b9874b.hs 0x2b987c
    002b9878b 0x2b9968
    002b987c
    002b987cloc_2b987c:
    002b987csubs xzr, x1, 1
    002b9880b.hs 0x2b9888
    002b9884b 0x2b9960
    002b9888
    002b9888loc_2b9888:
    002b9888sub x3, x4, 1
    002b988csub x4, xzr, x3
    002b9890sbfm x4, x4, 63, 63
    002b9894and x4, x4, 1
    002b9898add x1, x5, x4
    002b989cstr x1, [sp+160]
    002b98a0str x2, [sp+168]
    002b98a4str x3, [sp+176]
    002b98a8ldr x0, [sp+232]
    002b98acbl math/big.(*Int).FillBytes
    002b98b0ldr x4, [sp+48]
    002b98b4add x0, x4, 1
    002b98b8str x0, [sp+80]
    002b98bcldr x5, [sp+48]
    002b98c0ubfm x5, x5, 63, 62
    002b98c4add x1, x5, 1
    002b98c8str x1, [sp+72]
    002b98ccldr x2, [sp+144]
    002b98d0ldr x6, [sp+128]
    002b98d4subs xzr, x2, x1
    002b98d8b.hs 0x2b98e0
    002b98dcb 0x2b995c
    002b98e0
    002b98e0loc_2b98e0:
    002b98e0subs xzr, x1, x0
    002b98e4b.hs 0x2b98ec
    002b98e8b 0x2b9958
    002b98ec
    002b98ecloc_2b98ec:
    002b98ecsub x5, x5, x4
    002b98f0sub x4, x2, x4
    002b98f4sub x3, x4, 1
    002b98f8sub x4, xzr, x3
    002b98fcand x4, x0, x4, asr #63
    002b9900add x1, x6, x4
    002b9904str x1, [sp+160]
    002b9908str x5, [sp+168]
    002b990cstr x3, [sp+176]
    002b9910ldr x0, [sp+240]
    002b9914mov x2, x5
    002b9918bl math/big.(*Int).FillBytes
    002b991cldr x4, [sp+128]
    002b9920ldr x5, [sp+136]
    002b9924ldr x6, [sp+144]
    002b9928str x4, [sp+104]
    002b992cstr x5, [sp+112]
    002b9930str x6, [sp+120]
    002b9934stp xzr, xzr, [sp+88]
    002b9938ldr x0, [sp+104]
    002b993cldr x1, [sp+112]
    002b9940ldr x2, [sp+120]
    002b9944mov x3, xzr
    002b9948mov x4, xzr
    002b994cldur x29, [sp-8]
    002b9950ldr x30, [sp], 208
    002b9954ret x30
    002b9958
    002b9958loc_2b9958:
    002b9958bl runtime.panicSliceB
    002b995c
    002b995cloc_2b995c:
    002b995cbl runtime.panicSliceAcap
    002b9960
    002b9960loc_2b9960:
    002b9960orr x0, xzr, 1
    002b9964bl runtime.panicSliceB
    002b9968
    002b9968loc_2b9968:
    002b9968mov x2, x4
    002b996cbl runtime.panicSliceAcap
    002b9970
    002b9970loc_2b9970:
    002b9970mov x0, xzr
    002b9974bl runtime.panicIndex
    002b9978hint
    002b997c
    002b997cloc_2b997c:
    002b997cstp x0, x1, [sp+8]
    002b9980stp x2, x3, [sp+24]
    002b9984mov x3, x30
    002b9988bl runtime.morestack_noctxt.abi0
    002b998cldp x0, x1, [sp+8]
    002b9990ldp x2, x3, [sp+24]
    002b9994b 0x2b9670
    002b9998udf 0
    002b999cudf 0
    002b9670
    002b99a0
    002b99a0crypto/ecdsa.pointToAffine: ; void crypto/ecdsa.pointToAffine(crypto/elliptic.Curve curve, struct []uint8 p)
    002b99a0ldr x16, [x28+16]
    002b99a4sub x17, sp, 32
    002b99a8subs xzr, x17, x16
    002b99acb.ls 0x2b9bc0
    002b99b0str x30, [sp-160]!
    002b99b4stur x29, [sp-8]
    002b99b8sub x29, sp, 8
    002b99bcstr x0, [sp+168]
    002b99c0str x1, [sp+176]
    002b99c4str x2, [sp+184]
    002b99c8str x3, [sp+192]
    002b99ccstr x4, [sp+200]
    002b99d0str xzr, [sp+72]
    002b99d4str xzr, [sp+64]
    002b99d8stp xzr, xzr, [sp+80]
    002b99dcldr x2, [sp+192]
    002b99e0str x2, [sp+56]
    002b99e4subs xzr, x2, 1
    002b99e8cset x2, eq
    002b99ecstrb w2, [sp+47]
    002b99f0b.eq 0x2b99f8
    002b99f4b 0x2b9a20
    002b99f8
    002b99f8loc_2b99f8:
    002b99f8ldr x1, [sp+192]
    002b99fcldr x2, [sp+184]
    002b9a00subs xzr, x1, 0
    002b9a04b.hi 0x2b9a0c
    002b9a08b 0x2b9bb4
    002b9a0c
    002b9a0cloc_2b9a0c:
    002b9a0cldrb w2, [x2]
    002b9a10subs wzr, w2, 0
    002b9a14cset x2, eq
    002b9a18strb w2, [sp+47]
    002b9a1cb 0x2b9a24
    002b9a20
    002b9a20loc_2b9a20:
    002b9a20b 0x2b9a24
    002b9a24
    002b9a24loc_2b9a24:
    002b9a24ldrb w2, [sp+47]
    002b9a28tbnz w2, 0, 0x2b9a30
    002b9a2cb 0x2b9a74
    002b9a30
    002b9a30loc_2b9a30:
    002b9a30adrp x0, 0x40a000
    002b9a34add x0, x0, 3172
    002b9a38movz x1, 39
    002b9a3cbl errors.New
    002b9a40str x0, [sp+104]
    002b9a44str x1, [sp+112]
    002b9a48str xzr, [sp+72]
    002b9a4cstr xzr, [sp+64]
    002b9a50ldr x2, [sp+104]
    002b9a54ldr x3, [sp+112]
    002b9a58str x2, [sp+80]
    002b9a5cstr x3, [sp+88]
    002b9a60ldr x0, [sp+72]
    002b9a64ldr x1, [sp+64]
    002b9a68ldur x29, [sp-8]
    002b9a6cldr x30, [sp], 160
    002b9a70ret x30
    002b9a74
    002b9a74loc_2b9a74:
    002b9a74ldr x1, [sp+168]
    002b9a78ldrsb x27, [x1]
    002b9a7cldr x1, [x1+48]
    002b9a80ldr x0, [sp+176]
    002b9a84blr x1
    002b9a88str x0, [sp+96]
    002b9a8cldrsb x27, [x0]
    002b9a90ldr x1, [x0+40]
    002b9a94add x2, x1, 7
    002b9a98sbfm x2, x2, 63, 63
    002b9a9cadd x1, x1, x2, lsr #61
    002b9aa0add x1, x1, 7
    002b9aa4sbfm x1, x1, 3, 63
    002b9aa8str x1, [sp+48]
    002b9aacadrp x0, 0x38c000
    002b9ab0add x0, x0, 1024
    002b9ab4bl runtime.newobject
    002b9ab8str x0, [sp+144]
    002b9abcldr x2, [sp+48]
    002b9ac0add x1, x2, 1
    002b9ac4str x1, [sp+56]
    002b9ac8ldr x3, [sp+200]
    002b9accldr x4, [sp+184]
    002b9ad0subs xzr, x3, x1
    002b9ad4b.hs 0x2b9adc
    002b9ad8b 0x2b9bac
    002b9adc
    002b9adcloc_2b9adc:
    002b9adcsubs xzr, x1, 1
    002b9ae0b.hs 0x2b9ae8
    002b9ae4b 0x2b9ba4
    002b9ae8
    002b9ae8loc_2b9ae8:
    002b9ae8sub x3, x3, 1
    002b9aecsub x5, xzr, x3
    002b9af0sbfm x5, x5, 63, 63
    002b9af4and x5, x5, 1
    002b9af8add x1, x4, x5
    002b9afcstr x1, [sp+120]
    002b9b00str x2, [sp+128]
    002b9b04str x3, [sp+136]
    002b9b08ldr x0, [sp+144]
    002b9b0cbl math/big.(*Int).SetBytes
    002b9b10str x0, [sp+72]
    002b9b14adrp x0, 0x38c000
    002b9b18add x0, x0, 1024
    002b9b1cbl runtime.newobject
    002b9b20str x0, [sp+144]
    002b9b24ldr x4, [sp+48]
    002b9b28add x0, x4, 1
    002b9b2cstr x0, [sp+56]
    002b9b30ldr x1, [sp+192]
    002b9b34ldr x5, [sp+184]
    002b9b38ldr x6, [sp+200]
    002b9b3cb 0x2b9b40
    002b9b40
    002b9b40loc_2b9b40:
    002b9b40subs xzr, x1, x0
    002b9b44b.hs 0x2b9b4c
    002b9b48b 0x2b9ba0
    002b9b4c
    002b9b4cloc_2b9b4c:
    002b9b4csub x7, x1, x4
    002b9b50sub x4, x6, x4
    002b9b54sub x3, x4, 1
    002b9b58sub x2, x7, 1
    002b9b5csub x4, xzr, x3
    002b9b60and x4, x0, x4, asr #63
    002b9b64add x1, x5, x4
    002b9b68str x1, [sp+120]
    002b9b6cstr x2, [sp+128]
    002b9b70str x3, [sp+136]
    002b9b74ldr x0, [sp+144]
    002b9b78bl math/big.(*Int).SetBytes
    002b9b7cstr x0, [sp+64]
    002b9b80stp xzr, xzr, [sp+80]
    002b9b84ldr x0, [sp+72]
    002b9b88ldr x1, [sp+64]
    002b9b8cmov x2, xzr
    002b9b90mov x3, xzr
    002b9b94ldur x29, [sp-8]
    002b9b98ldr x30, [sp], 160
    002b9b9cret x30
    002b9ba0
    002b9ba0loc_2b9ba0:
    002b9ba0bl runtime.panicSliceB
    002b9ba4
    002b9ba4loc_2b9ba4:
    002b9ba4orr x0, xzr, 1
    002b9ba8bl runtime.panicSliceB
    002b9bac
    002b9bacloc_2b9bac:
    002b9bacmov x2, x3
    002b9bb0bl runtime.panicSliceAcap
    002b9bb4
    002b9bb4loc_2b9bb4:
    002b9bb4mov x0, xzr
    002b9bb8bl runtime.panicIndex
    002b9bbchint
    002b9bc0
    002b9bc0loc_2b9bc0:
    002b9bc0stp x0, x1, [sp+8]
    002b9bc4stp x2, x3, [sp+24]
    002b9bc8str x4, [sp+40]
    002b9bccmov x3, x30
    002b9bd0bl runtime.morestack_noctxt.abi0
    002b9bd4ldp x0, x1, [sp+8]
    002b9bd8ldp x2, x3, [sp+24]
    002b9bdcldr x4, [sp+40]
    002b9be0b 0x2b99a0
    002b9be4udf 0
    002b9be8udf 0
    002b9becudf 0
    002b99a0
    002b9bf0
    002b9bf0crypto/ecdsa.generateLegacy: ; void crypto/ecdsa.generateLegacy(crypto/elliptic.Curve c, io.Reader rand)
    002b9bf0ldr x16, [x28+16]
    002b9bf4sub x17, sp, 80
    002b9bf8subs xzr, x17, x16
    002b9bfcb.ls 0x2b9e6c
    002b9c00str x30, [sp-208]!
    002b9c04stur x29, [sp-8]
    002b9c08sub x29, sp, 8
    002b9c0cstr x0, [sp+216]
    002b9c10str x1, [sp+224]
    002b9c14str x2, [sp+232]
    002b9c18str x3, [sp+240]
    002b9c1cstr xzr, [sp+64]
    002b9c20stp xzr, xzr, [sp+48]
    002b9c24adrp x27, 0x792000
    002b9c28ldrb w4, [x27+1551]
    002b9c2ctbnz w4, 0, 0x2b9c34
    002b9c30b 0x2b9c70
    002b9c34
    002b9c34loc_2b9c34:
    002b9c34adrp x0, 0x415000
    002b9c38add x0, x0, 2659
    002b9c3cmovz x1, 71
    002b9c40bl errors.New
    002b9c44str x0, [sp+176]
    002b9c48str x1, [sp+184]
    002b9c4cstr xzr, [sp+64]
    002b9c50ldr x1, [sp+176]
    002b9c54ldr x2, [sp+184]
    002b9c58str x1, [sp+48]
    002b9c5cstr x2, [sp+56]
    002b9c60ldr x0, [sp+64]
    002b9c64ldur x29, [sp-8]
    002b9c68ldr x30, [sp], 208
    002b9c6cret x30
    002b9c70
    002b9c70loc_2b9c70:
    002b9c70str xzr, [sp+168]
    002b9c74stp xzr, xzr, [sp+176]
    002b9c78ldr x0, [sp+216]
    002b9c7cldr x2, [sp+232]
    002b9c80ldr x1, [sp+224]
    002b9c84ldr x3, [sp+240]
    002b9c88bl crypto/ecdsa.randFieldElement
    002b9c8cstr x0, [sp+168]
    002b9c90str x1, [sp+176]
    002b9c94str x2, [sp+184]
    002b9c98ldr x4, [sp+168]
    002b9c9cstr x4, [sp+128]
    002b9ca0ldr x4, [sp+184]
    002b9ca4ldr x5, [sp+176]
    002b9ca8str x5, [sp+112]
    002b9cacstr x4, [sp+120]
    002b9cb0ldr x4, [sp+128]
    002b9cb4str x4, [sp+80]
    002b9cb8ldr x4, [sp+120]
    002b9cbcldr x5, [sp+112]
    002b9cc0str x5, [sp+88]
    002b9cc4str x4, [sp+96]
    002b9cc8cbnz x5, 0x2b9cd0
    002b9cccb 0x2b9cf4
    002b9cd0
    002b9cd0loc_2b9cd0:
    002b9cd0str xzr, [sp+64]
    002b9cd4ldr x1, [sp+88]
    002b9cd8ldr x2, [sp+96]
    002b9cdcstr x1, [sp+48]
    002b9ce0str x2, [sp+56]
    002b9ce4ldr x0, [sp+64]
    002b9ce8ldur x29, [sp-8]
    002b9cecldr x30, [sp], 208
    002b9cf0ret x30
    002b9cf4
    002b9cf4loc_2b9cf4:
    002b9cf4adrp x0, 0x3c6000
    002b9cf8add x0, x0, 1056
    002b9cfcbl runtime.newobject
    002b9d00str x0, [sp+72]
    002b9d04ldr x1, [sp+224]
    002b9d08ldr x2, [sp+216]
    002b9d0cstr x2, [x0]
    002b9d10adrp x27, 0x792000
    002b9d14ldr w2, [x27+3056]
    002b9d18cbz w2, 0x2b9d20
    002b9d1cb 0x2b9d24
    002b9d20
    002b9d20loc_2b9d20:
    002b9d20b 0x2b9d38
    002b9d24
    002b9d24loc_2b9d24:
    002b9d24bl runtime.gcWriteBarrier2
    002b9d28str x1, [x25]
    002b9d2cldr x2, [x0+8]
    002b9d30str x2, [x25+8]
    002b9d34b 0x2b9d38
    002b9d38
    002b9d38loc_2b9d38:
    002b9d38str x1, [x0+8]
    002b9d3cldr x1, [sp+72]
    002b9d40ldrsb x27, [x1]
    002b9d44ldr x2, [sp+80]
    002b9d48adrp x27, 0x792000
    002b9d4cldr w3, [x27+3056]
    002b9d50cbz w3, 0x2b9d58
    002b9d54b 0x2b9d5c
    002b9d58
    002b9d58loc_2b9d58:
    002b9d58b 0x2b9d70
    002b9d5c
    002b9d5cloc_2b9d5c:
    002b9d5cbl runtime.gcWriteBarrier2
    002b9d60str x2, [x25]
    002b9d64ldr x3, [x1+32]
    002b9d68str x3, [x25+8]
    002b9d6cb 0x2b9d70
    002b9d70
    002b9d70loc_2b9d70:
    002b9d70str x2, [x1+32]
    002b9d74ldr x0, [sp+80]
    002b9d78bl math/big.(*Int).Bytes
    002b9d7cstr x0, [sp+144]
    002b9d80str x1, [sp+152]
    002b9d84str x2, [sp+160]
    002b9d88str xzr, [sp+168]
    002b9d8cstr xzr, [sp+136]
    002b9d90ldr x1, [sp+216]
    002b9d94ldrsb x27, [x1]
    002b9d98ldr x0, [sp+224]
    002b9d9cldr x1, [x1+56]
    002b9da0ldr x2, [sp+144]
    002b9da4ldr x3, [sp+152]
    002b9da8ldr x4, [sp+160]
    002b9dacmov x5, x1
    002b9db0mov x1, x2
    002b9db4mov x2, x3
    002b9db8mov x3, x4
    002b9dbcblr x5
    002b9dc0str x0, [sp+168]
    002b9dc4str x1, [sp+136]
    002b9dc8ldr x1, [sp+168]
    002b9dccstr x1, [sp+104]
    002b9dd0ldr x1, [sp+136]
    002b9dd4str x1, [sp+192]
    002b9dd8ldr x1, [sp+72]
    002b9ddcldrsb x27, [x1]
    002b9de0ldr x2, [sp+104]
    002b9de4adrp x27, 0x792000
    002b9de8ldr w3, [x27+3056]
    002b9deccbz w3, 0x2b9df4
    002b9df0b 0x2b9df8
    002b9df4
    002b9df4loc_2b9df4:
    002b9df4b 0x2b9e0c
    002b9df8
    002b9df8loc_2b9df8:
    002b9df8bl runtime.gcWriteBarrier2
    002b9dfcstr x2, [x25]
    002b9e00ldr x3, [x1+16]
    002b9e04str x3, [x25+8]
    002b9e08b 0x2b9e0c
    002b9e0c
    002b9e0cloc_2b9e0c:
    002b9e0cstr x2, [x1+16]
    002b9e10ldr x3, [sp+72]
    002b9e14ldrsb x27, [x3]
    002b9e18ldr x4, [sp+192]
    002b9e1cadrp x27, 0x792000
    002b9e20ldr w5, [x27+3056]
    002b9e24cbz w5, 0x2b9e2c
    002b9e28b 0x2b9e30
    002b9e2c
    002b9e2cloc_2b9e2c:
    002b9e2cb 0x2b9e44
    002b9e30
    002b9e30loc_2b9e30:
    002b9e30bl runtime.gcWriteBarrier2
    002b9e34str x4, [x25]
    002b9e38ldr x5, [x3+24]
    002b9e3cstr x5, [x25+8]
    002b9e40b 0x2b9e44
    002b9e44
    002b9e44loc_2b9e44:
    002b9e44str x4, [x3+24]
    002b9e48ldr x3, [sp+72]
    002b9e4cstr x3, [sp+64]
    002b9e50stp xzr, xzr, [sp+48]
    002b9e54ldr x0, [sp+64]
    002b9e58mov x1, xzr
    002b9e5cmov x2, xzr
    002b9e60ldur x29, [sp-8]
    002b9e64ldr x30, [sp], 208
    002b9e68ret x30
    002b9e6c
    002b9e6cloc_2b9e6c:
    002b9e6cstp x0, x1, [sp+8]
    002b9e70stp x2, x3, [sp+24]
    002b9e74mov x3, x30
    002b9e78bl runtime.morestack_noctxt.abi0
    002b9e7cldp x0, x1, [sp+8]
    002b9e80ldp x2, x3, [sp+24]
    002b9e84b 0x2b9bf0
    002b9e88udf 0
    002b9e8cudf 0
    002b9bf0
    002b9e90
    002b9e90crypto/ecdsa.hashToInt: ; void crypto/ecdsa.hashToInt(struct []uint8 hash, crypto/elliptic.Curve c)
    002b9e90ldr x16, [x28+16]
    002b9e94subs xzr, sp, x16
    002b9e98b.ls 0x2b9fb4
    002b9e9cstr x30, [sp-128]!
    002b9ea0stur x29, [sp-8]
    002b9ea4sub x29, sp, 8
    002b9ea8str x0, [sp+136]
    002b9eacstr x1, [sp+144]
    002b9eb0str x2, [sp+152]
    002b9eb4str x3, [sp+160]
    002b9eb8str x4, [sp+168]
    002b9ebcstr xzr, [sp+80]
    002b9ec0ldr x1, [sp+160]
    002b9ec4ldrsb x27, [x1]
    002b9ec8ldr x1, [x1+48]
    002b9eccldr x0, [sp+168]
    002b9ed0blr x1
    002b9ed4str x0, [sp+104]
    002b9ed8ldrsb x27, [x0]
    002b9edcldr x0, [x0+8]
    002b9ee0str x0, [sp+112]
    002b9ee4bl math/big.(*Int).BitLen
    002b9ee8str x0, [sp+56]
    002b9eecadd x1, x0, 7
    002b9ef0sbfm x1, x1, 63, 63
    002b9ef4add x1, x0, x1, lsr #61
    002b9ef8add x1, x1, 7
    002b9efcsbfm x2, x1, 3, 63
    002b9f00str x2, [sp+48]
    002b9f04ldr x3, [sp+144]
    002b9f08str x3, [sp+72]
    002b9f0csubs xzr, x3, x1, asr #3
    002b9f10b.gt 0x2b9f18
    002b9f14b 0x2b9f34
    002b9f18
    002b9f18loc_2b9f18:
    002b9f18ldr x3, [sp+152]
    002b9f1csubs xzr, x3, x1, asr #3
    002b9f20b.hs 0x2b9f28
    002b9f24b 0x2b9fa4
    002b9f28
    002b9f28loc_2b9f28:
    002b9f28b 0x2b9f2c
    002b9f2c
    002b9f2cloc_2b9f2c:
    002b9f2cstr x2, [sp+144]
    002b9f30b 0x2b9f38
    002b9f34
    002b9f34loc_2b9f34:
    002b9f34b 0x2b9f38
    002b9f38
    002b9f38loc_2b9f38:
    002b9f38adrp x0, 0x38c000
    002b9f3cadd x0, x0, 1024
    002b9f40bl runtime.newobject
    002b9f44str x0, [sp+96]
    002b9f48ldr x1, [sp+136]
    002b9f4cldr x2, [sp+144]
    002b9f50ldr x3, [sp+152]
    002b9f54bl math/big.(*Int).SetBytes
    002b9f58str x0, [sp+88]
    002b9f5cldr x1, [sp+144]
    002b9f60str x1, [sp+72]
    002b9f64ubfm x1, x1, 61, 60
    002b9f68ldr x2, [sp+56]
    002b9f6csub x2, x1, x2
    002b9f70str x2, [sp+64]
    002b9f74subs xzr, x2, 0
    002b9f78b.gt 0x2b9f80
    002b9f7cb 0x2b9f8c
    002b9f80
    002b9f80loc_2b9f80:
    002b9f80mov x1, x0
    002b9f84bl math/big.(*Int).Rsh
    002b9f88b 0x2b9f90
    002b9f8c
    002b9f8cloc_2b9f8c:
    002b9f8cb 0x2b9f90
    002b9f90
    002b9f90loc_2b9f90:
    002b9f90ldr x0, [sp+88]
    002b9f94str x0, [sp+80]
    002b9f98ldur x29, [sp-8]
    002b9f9cldr x30, [sp], 128
    002b9fa0ret x30
    002b9fa4
    002b9fa4loc_2b9fa4:
    002b9fa4mov x1, x2
    002b9fa8mov x2, x3
    002b9facbl runtime.panicSliceAcap
    002b9fb0hint
    002b9fb4
    002b9fb4loc_2b9fb4:
    002b9fb4stp x0, x1, [sp+8]
    002b9fb8stp x2, x3, [sp+24]
    002b9fbcstr x4, [sp+40]
    002b9fc0mov x3, x30
    002b9fc4bl runtime.morestack_noctxt.abi0
    002b9fc8ldp x0, x1, [sp+8]
    002b9fccldp x2, x3, [sp+24]
    002b9fd0ldr x4, [sp+40]
    002b9fd4b 0x2b9e90
    002b9fd8udf 0
    002b9fdcudf 0
    002b9e90
    002b9fe0
    002b9fe0crypto/ecdsa.signLegacy: ; void crypto/ecdsa.signLegacy(crypto/ecdsa.PrivateKey * priv, io.Reader csprng, struct []uint8 hash)
    002b9fe0ldr x16, [x28+16]
    002b9fe4sub x17, sp, 400
    002b9fe8subs xzr, x17, x16
    002b9fecb.ls 0x2ba638
    002b9ff0sub x20, sp, 528
    002b9ff4stp x29, x30, [x20-8]
    002b9ff8add sp, x20, 0
    002b9ffcsub x29, sp, 8
    002ba000str x0, [sp+536]
    002ba004str x1, [sp+544]
    002ba008str x2, [sp+552]
    002ba00cstr x3, [sp+560]
    002ba010str x4, [sp+568]
    002ba014str x5, [sp+576]
    002ba018str xzr, [sp+152]
    002ba01cstp xzr, xzr, [sp+160]
    002ba020stp xzr, xzr, [sp+224]
    002ba024adrp x27, 0x791000
    002ba028ldrb w2, [x27+1551]
    002ba02ctbnz w2, 0, 0x2ba034
    002ba030b 0x2ba07c
    002ba034
    002ba034loc_2ba034:
    002ba034adrp x0, 0x414000
    002ba038add x0, x0, 2659
    002ba03cmovz x1, 71
    002ba040bl errors.New
    002ba044str x0, [sp+416]
    002ba048str x1, [sp+424]
    002ba04cstr xzr, [sp+152]
    002ba050stp xzr, xzr, [sp+160]
    002ba054ldr x3, [sp+416]
    002ba058ldr x4, [sp+424]
    002ba05cstr x3, [sp+224]
    002ba060str x4, [sp+232]
    002ba064ldr x0, [sp+152]
    002ba068ldr x1, [sp+160]
    002ba06cldr x2, [sp+168]
    002ba070ldp x29, x30, [sp-8]
    002ba074add sp, sp, 528
    002ba078ret x30
    002ba07c
    002ba07cloc_2ba07c:
    002ba07cldr x1, [sp+536]
    002ba080ldrsb x27, [x1]
    002ba084ldr x2, [x1]
    002ba088ldr x1, [x1+8]
    002ba08cstr x2, [sp+248]
    002ba090str x1, [sp+256]
    002ba094adrp x0, 0x343000
    002ba098add x0, x0, 2240
    002ba09cbl runtime.newobject
    002ba0a0str x0, [sp+512]
    002ba0a4stp xzr, xzr, [x0]
    002ba0a8stp xzr, xzr, [x0+16]
    002ba0acldr x1, [sp+512]
    002ba0b0ldrsb x27, [x1]
    002ba0b4b 0x2ba0b8
    002ba0b8
    002ba0b8loc_2ba0b8:
    002ba0b8str x1, [sp+392]
    002ba0bcorr x5, xzr, 32
    002ba0c0str x5, [sp+400]
    002ba0c4str x5, [sp+408]
    002ba0c8stp xzr, xzr, [sp+416]
    002ba0ccldr x0, [sp+544]
    002ba0d0ldr x1, [sp+552]
    002ba0d4ldr x2, [sp+392]
    002ba0d8ldr x3, [sp+400]
    002ba0dcldr x4, [sp+408]
    002ba0e0bl io.ReadFull
    002ba0e4str x0, [sp+144]
    002ba0e8str x1, [sp+416]
    002ba0ecstr x2, [sp+424]
    002ba0f0ldr x5, [sp+144]
    002ba0f4str x5, [sp+88]
    002ba0f8str x1, [sp+272]
    002ba0fcstr x2, [sp+280]
    002ba100str x1, [sp+208]
    002ba104str x2, [sp+216]
    002ba108cbnz x1, 0x2ba110
    002ba10cb 0x2ba140
    002ba110
    002ba110loc_2ba110:
    002ba110str xzr, [sp+152]
    002ba114stp xzr, xzr, [sp+160]
    002ba118ldr x3, [sp+208]
    002ba11cldr x4, [sp+216]
    002ba120str x3, [sp+224]
    002ba124str x4, [sp+232]
    002ba128ldr x0, [sp+152]
    002ba12cldr x1, [sp+160]
    002ba130ldr x2, [sp+168]
    002ba134ldp x29, x30, [sp-8]
    002ba138add sp, sp, 528
    002ba13cret x30
    002ba140
    002ba140loc_2ba140:
    002ba140ldr x1, [sp+536]
    002ba144ldrsb x27, [x1]
    002ba148ldr x0, [x1+32]
    002ba14cstr x0, [sp+296]
    002ba150bl math/big.(*Int).Bytes
    002ba154str x0, [sp+392]
    002ba158str x1, [sp+400]
    002ba15cstr x2, [sp+408]
    002ba160str x0, [sp+368]
    002ba164str x1, [sp+376]
    002ba168str x2, [sp+384]
    002ba16cstr xzr, [sp+136]
    002ba170str x1, [sp+128]
    002ba174b 0x2ba178
    002ba178
    002ba178loc_2ba178:
    002ba178ldr x2, [sp+128]
    002ba17cldr x3, [sp+136]
    002ba180subs xzr, x2, x3
    002ba184b.gt 0x2ba18c
    002ba188b 0x2ba200
    002ba18c
    002ba18cloc_2ba18c:
    002ba18cldr x2, [sp+136]
    002ba190str x2, [sp+80]
    002ba194ldr x2, [sp+136]
    002ba198ldr x3, [sp+368]
    002ba19cldrb w2, [x3+x2]
    002ba1a0strb w2, [sp+71]
    002ba1a4ldr x2, [sp+80]
    002ba1a8sbfm x3, x2, 63, 63
    002ba1acadd x3, x2, x3, lsr #59
    002ba1b0and x3, x3, -32
    002ba1b4sub x0, x2, x3
    002ba1b8str x0, [sp+120]
    002ba1bcldr x2, [sp+512]
    002ba1c0subs xzr, x0, 32
    002ba1c4b.lo 0x2ba1cc
    002ba1c8b 0x2ba62c
    002ba1cc
    002ba1ccloc_2ba1cc:
    002ba1ccldrb w2, [x2+x0]
    002ba1d0ldr x3, [sp+512]
    002ba1d4ldrb w4, [sp+71]
    002ba1d8eor x2, x2, x4
    002ba1dcsubs xzr, x0, 32
    002ba1e0b.lo 0x2ba1e8
    002ba1e4b 0x2ba624
    002ba1e8
    002ba1e8loc_2ba1e8:
    002ba1e8strb w2, [x3+x0]
    002ba1ecb 0x2ba1f0
    002ba1f0
    002ba1f0loc_2ba1f0:
    002ba1f0ldr x2, [sp+136]
    002ba1f4add x2, x2, 1
    002ba1f8str x2, [sp+136]
    002ba1fcb 0x2ba178
    002ba200
    002ba200loc_2ba200:
    002ba200ldr x2, [sp+568]
    002ba204ldr x3, [sp+560]
    002ba208ldr x4, [sp+576]
    002ba20cstr x3, [sp+368]
    002ba210str x2, [sp+376]
    002ba214str x4, [sp+384]
    002ba218str xzr, [sp+112]
    002ba21cstr x2, [sp+104]
    002ba220b 0x2ba224
    002ba224
    002ba224loc_2ba224:
    002ba224ldr x2, [sp+104]
    002ba228ldr x3, [sp+112]
    002ba22csubs xzr, x2, x3
    002ba230b.gt 0x2ba238
    002ba234b 0x2ba2ac
    002ba238
    002ba238loc_2ba238:
    002ba238ldr x2, [sp+112]
    002ba23cstr x2, [sp+72]
    002ba240ldr x2, [sp+112]
    002ba244ldr x3, [sp+368]
    002ba248ldrb w2, [x3+x2]
    002ba24cstrb w2, [sp+70]
    002ba250ldr x2, [sp+72]
    002ba254sbfm x3, x2, 63, 63
    002ba258add x3, x2, x3, lsr #59
    002ba25cand x3, x3, -32
    002ba260sub x0, x2, x3
    002ba264str x0, [sp+96]
    002ba268ldr x2, [sp+512]
    002ba26csubs xzr, x0, 32
    002ba270b.lo 0x2ba278
    002ba274b 0x2ba61c
    002ba278
    002ba278loc_2ba278:
    002ba278ldrb w2, [x2+x0]
    002ba27cldr x3, [sp+512]
    002ba280ldrb w4, [sp+70]
    002ba284eor x2, x2, x4
    002ba288subs xzr, x0, 32
    002ba28cb.lo 0x2ba294
    002ba290b 0x2ba614
    002ba294
    002ba294loc_2ba294:
    002ba294strb w2, [x3+x0]
    002ba298b 0x2ba29c
    002ba29c
    002ba29cloc_2ba29c:
    002ba29cldr x2, [sp+112]
    002ba2a0add x2, x2, 1
    002ba2a4str x2, [sp+112]
    002ba2a8b 0x2ba224
    002ba2ac
    002ba2acloc_2ba2ac:
    002ba2acldr x0, [sp+512]
    002ba2b0ldp x1, x2, [x0]
    002ba2b4ldp x0, x3, [x0+16]
    002ba2b8stp x1, x2, [sp+8]
    002ba2bcstp x0, x3, [sp+24]
    002ba2c0bl math/rand/v2.NewChaCha8
    002ba2c4str x0, [sp+360]
    002ba2c8str x0, [sp+352]
    002ba2ccadrp x1, 0x45c000
    002ba2d0add x1, x1, 736
    002ba2d4str x1, [sp+544]
    002ba2d8str x0, [sp+552]
    002ba2dcldr x0, [sp+248]
    002ba2e0ldrsb x27, [x0]
    002ba2e4ldr x0, [x0+48]
    002ba2e8ldr x1, [sp+256]
    002ba2ecmov x2, x0
    002ba2f0mov x0, x1
    002ba2f4blr x2
    002ba2f8str x0, [sp+344]
    002ba2fcldrsb x27, [x0]
    002ba300ldr x0, [x0+8]
    002ba304str x0, [sp+264]
    002ba308bl math/big.(*Int).Sign
    002ba30cstr x0, [sp+144]
    002ba310cbz x0, 0x2ba318
    002ba314b 0x2ba350
    002ba318
    002ba318loc_2ba318:
    002ba318str xzr, [sp+152]
    002ba31cstp xzr, xzr, [sp+160]
    002ba320adrp x27, 0x767000
    002ba324ldr x3, [x27+3984]
    002ba328adrp x27, 0x767000
    002ba32cldr x4, [x27+3992]
    002ba330str x3, [sp+224]
    002ba334str x4, [sp+232]
    002ba338ldr x0, [sp+152]
    002ba33cldr x1, [sp+160]
    002ba340ldr x2, [sp+168]
    002ba344ldp x29, x30, [sp-8]
    002ba348add sp, sp, 528
    002ba34cret x30
    002ba350
    002ba350loc_2ba350:
    002ba350str xzr, [sp+200]
    002ba354str xzr, [sp+192]
    002ba358str xzr, [sp+184]
    002ba35cstr xzr, [sp+176]
    002ba360b 0x2ba364
    002ba364
    002ba364loc_2ba364:
    002ba364b 0x2ba368
    002ba368
    002ba368loc_2ba368:
    002ba368b 0x2ba36c
    002ba36c
    002ba36cloc_2ba36c:
    002ba36cb 0x2ba370
    002ba370
    002ba370loc_2ba370:
    002ba370str xzr, [sp+336]
    002ba374stp xzr, xzr, [sp+416]
    002ba378ldr x0, [sp+248]
    002ba37cldr x2, [sp+544]
    002ba380ldr x1, [sp+256]
    002ba384ldr x3, [sp+552]
    002ba388bl crypto/ecdsa.randFieldElement
    002ba38cstr x0, [sp+336]
    002ba390str x1, [sp+416]
    002ba394str x2, [sp+424]
    002ba398ldr x4, [sp+336]
    002ba39cstr x4, [sp+504]
    002ba3a0ldr x4, [sp+424]
    002ba3a4ldr x5, [sp+416]
    002ba3a8str x5, [sp+488]
    002ba3acstr x4, [sp+496]
    002ba3b0ldr x4, [sp+504]
    002ba3b4str x4, [sp+200]
    002ba3b8ldr x4, [sp+496]
    002ba3bcldr x5, [sp+488]
    002ba3c0str x5, [sp+224]
    002ba3c4str x4, [sp+232]
    002ba3c8cbnz x5, 0x2ba3d0
    002ba3ccb 0x2ba3f8
    002ba3d0
    002ba3d0loc_2ba3d0:
    002ba3d0str xzr, [sp+152]
    002ba3d4stp xzr, xzr, [sp+160]
    002ba3d8ldr x3, [sp+224]
    002ba3dcldr x4, [sp+232]
    002ba3e0mov x0, xzr
    002ba3e4mov x1, xzr
    002ba3e8mov x2, x1
    002ba3ecldp x29, x30, [sp-8]
    002ba3f0add sp, sp, 528
    002ba3f4ret x30
    002ba3f8
    002ba3f8loc_2ba3f8:
    002ba3f8adrp x0, 0x38b000
    002ba3fcadd x0, x0, 1024
    002ba400bl runtime.newobject
    002ba404str x0, [sp+336]
    002ba408ldr x1, [sp+200]
    002ba40cldr x2, [sp+264]
    002ba410bl math/big.(*Int).ModInverse
    002ba414str x0, [sp+192]
    002ba418ldr x0, [sp+200]
    002ba41cbl math/big.(*Int).Bytes
    002ba420str x0, [sp+368]
    002ba424str x1, [sp+376]
    002ba428str x2, [sp+384]
    002ba42cstr xzr, [sp+336]
    002ba430str xzr, [sp+328]
    002ba434ldr x1, [sp+248]
    002ba438ldrsb x27, [x1]
    002ba43cldr x0, [sp+256]
    002ba440ldr x1, [x1+56]
    002ba444ldr x2, [sp+368]
    002ba448ldr x3, [sp+376]
    002ba44cldr x4, [sp+384]
    002ba450mov x5, x1
    002ba454mov x1, x2
    002ba458mov x2, x3
    002ba45cmov x3, x4
    002ba460blr x5
    002ba464str x0, [sp+336]
    002ba468str x1, [sp+328]
    002ba46cldr x1, [sp+336]
    002ba470str x1, [sp+480]
    002ba474ldr x1, [sp+328]
    002ba478str x1, [sp+472]
    002ba47cldr x1, [sp+480]
    002ba480str x1, [sp+184]
    002ba484ldr x2, [sp+264]
    002ba488mov x0, x1
    002ba48cbl math/big.(*Int).Mod
    002ba490ldr x0, [sp+184]
    002ba494bl math/big.(*Int).Sign
    002ba498str x0, [sp+144]
    002ba49ccbnz x0, 0x2ba4a4
    002ba4a0b 0x2ba60c
    002ba4a4
    002ba4a4loc_2ba4a4:
    002ba4a4b 0x2ba4a8
    002ba4a8
    002ba4a8loc_2ba4a8:
    002ba4a8ldr x3, [sp+248]
    002ba4acldr x0, [sp+560]
    002ba4b0ldr x1, [sp+568]
    002ba4b4ldr x4, [sp+256]
    002ba4b8ldr x2, [sp+576]
    002ba4bcbl crypto/ecdsa.hashToInt
    002ba4c0str x0, [sp+240]
    002ba4c4adrp x0, 0x38b000
    002ba4c8add x0, x0, 1024
    002ba4ccbl runtime.newobject
    002ba4d0str x0, [sp+328]
    002ba4d4ldr x5, [sp+536]
    002ba4d8ldrsb x27, [x5]
    002ba4dcldr x1, [x5+32]
    002ba4e0str x1, [sp+288]
    002ba4e4ldr x2, [sp+184]
    002ba4e8ldr x0, [sp+328]
    002ba4ecbl math/big.(*Int).Mul
    002ba4f0str x0, [sp+176]
    002ba4f4ldr x2, [sp+240]
    002ba4f8mov x1, x0
    002ba4fcbl math/big.(*Int).Add
    002ba500ldr x1, [sp+176]
    002ba504ldr x2, [sp+192]
    002ba508ldr x0, [sp+176]
    002ba50cbl math/big.(*Int).Mul
    002ba510ldr x1, [sp+176]
    002ba514ldr x2, [sp+264]
    002ba518ldr x0, [sp+176]
    002ba51cbl math/big.(*Int).Mod
    002ba520ldr x0, [sp+176]
    002ba524bl math/big.(*Int).Sign
    002ba528str x0, [sp+144]
    002ba52ccbnz x0, 0x2ba534
    002ba530b 0x2ba604
    002ba534
    002ba534loc_2ba534:
    002ba534b 0x2ba538
    002ba538
    002ba538loc_2ba538:
    002ba538ldr x0, [sp+184]
    002ba53cbl math/big.(*Int).Bytes
    002ba540str x0, [sp+368]
    002ba544str x1, [sp+376]
    002ba548str x2, [sp+384]
    002ba54cldr x0, [sp+176]
    002ba550bl math/big.(*Int).Bytes
    002ba554str x0, [sp+392]
    002ba558str x1, [sp+400]
    002ba55cstr x2, [sp+408]
    002ba560str xzr, [sp+304]
    002ba564stp xzr, xzr, [sp+312]
    002ba568stp xzr, xzr, [sp+416]
    002ba56cldr x3, [sp+392]
    002ba570ldr x4, [sp+400]
    002ba574ldr x5, [sp+408]
    002ba578ldr x0, [sp+368]
    002ba57cldr x1, [sp+376]
    002ba580ldr x2, [sp+384]
    002ba584bl crypto/ecdsa.encodeSignature
    002ba588str x0, [sp+304]
    002ba58cstr x1, [sp+312]
    002ba590str x2, [sp+320]
    002ba594str x3, [sp+416]
    002ba598str x4, [sp+424]
    002ba59cldr x1, [sp+304]
    002ba5a0ldr x2, [sp+312]
    002ba5a4ldr x3, [sp+320]
    002ba5a8str x1, [sp+448]
    002ba5acstr x2, [sp+456]
    002ba5b0str x3, [sp+464]
    002ba5b4ldr x1, [sp+416]
    002ba5b8ldr x2, [sp+424]
    002ba5bcstr x1, [sp+432]
    002ba5c0str x2, [sp+440]
    002ba5c4ldr x1, [sp+448]
    002ba5c8ldr x2, [sp+456]
    002ba5ccldr x3, [sp+464]
    002ba5d0str x1, [sp+152]
    002ba5d4str x2, [sp+160]
    002ba5d8str x3, [sp+168]
    002ba5dcldr x3, [sp+432]
    002ba5e0ldr x4, [sp+440]
    002ba5e4str x3, [sp+224]
    002ba5e8str x4, [sp+232]
    002ba5ecldr x0, [sp+152]
    002ba5f0ldr x1, [sp+160]
    002ba5f4ldr x2, [sp+168]
    002ba5f8ldp x29, x30, [sp-8]
    002ba5fcadd sp, sp, 528
    002ba600ret x30
    002ba604
    002ba604loc_2ba604:
    002ba604b 0x2ba608
    002ba608
    002ba608loc_2ba608:
    002ba608b 0x2ba364
    002ba60c
    002ba60cloc_2ba60c:
    002ba60cb 0x2ba610
    002ba610
    002ba610loc_2ba610:
    002ba610b 0x2ba36c
    002ba614
    002ba614loc_2ba614:
    002ba614orr x1, xzr, 32
    002ba618bl runtime.panicIndex
    002ba61c
    002ba61cloc_2ba61c:
    002ba61corr x1, xzr, 32
    002ba620bl runtime.panicIndex
    002ba624
    002ba624loc_2ba624:
    002ba624orr x1, xzr, 32
    002ba628bl runtime.panicIndex
    002ba62c
    002ba62cloc_2ba62c:
    002ba62corr x1, xzr, 32
    002ba630bl runtime.panicIndex
    002ba634hint
    002ba638
    002ba638loc_2ba638:
    002ba638stp x0, x1, [sp+8]
    002ba63cstp x2, x3, [sp+24]
    002ba640stp x4, x5, [sp+40]
    002ba644mov x3, x30
    002ba648bl runtime.morestack_noctxt.abi0
    002ba64cldp x0, x1, [sp+8]
    002ba650ldp x2, x3, [sp+24]
    002ba654ldp x4, x5, [sp+40]
    002ba658b 0x2b9fe0
    002ba65cudf 0
    002b9fe0