File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    002bc8d0
    002bc8d0crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P384Point]: ; void crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P384Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P384Point] * c, crypto.Hash hashFunc, crypto/ecdsa.PrivateKey * priv, struct []uint8 hash)
    002bc8d0ldr x16, [x28+16]
    002bc8d4sub x17, sp, 272
    002bc8d8subs xzr, x17, x16
    002bc8dcb.ls 0x2bcc04
    002bc8e0sub x20, sp, 400
    002bc8e4stp x29, x30, [x20-8]
    002bc8e8add sp, x20, 0
    002bc8ecsub x29, sp, 8
    002bc8f0str x0, [sp+408]
    002bc8f4str x1, [sp+416]
    002bc8f8str x2, [sp+424]
    002bc8fcstr x3, [sp+432]
    002bc900str x4, [sp+440]
    002bc904str x5, [sp+448]
    002bc908str x6, [sp+456]
    002bc90cstr xzr, [sp+96]
    002bc910stp xzr, xzr, [sp+104]
    002bc914stp xzr, xzr, [sp+80]
    002bc918str xzr, [sp+304]
    002bc91cstp xzr, xzr, [sp+288]
    002bc920ldr x3, [sp+408]
    002bc924ldrsb x27, [x3]
    002bc928ldr x0, [x3]
    002bc92cstr x0, [sp+232]
    002bc930ldr x2, [sp+432]
    002bc934ldr x1, [sp+416]
    002bc938bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002bc93cstr x0, [sp+304]
    002bc940str x1, [sp+288]
    002bc944str x2, [sp+296]
    002bc948ldr x3, [sp+304]
    002bc94cstr x3, [sp+160]
    002bc950ldr x3, [sp+288]
    002bc954ldr x4, [sp+296]
    002bc958str x3, [sp+376]
    002bc95cstr x4, [sp+384]
    002bc960ldr x3, [sp+160]
    002bc964str x3, [sp+128]
    002bc968ldr x3, [sp+384]
    002bc96cldr x4, [sp+376]
    002bc970str x4, [sp+144]
    002bc974str x3, [sp+152]
    002bc978cbnz x4, 0x2bc980
    002bc97cb 0x2bc9b0
    002bc980
    002bc980loc_2bc980:
    002bc980str xzr, [sp+96]
    002bc984stp xzr, xzr, [sp+104]
    002bc988ldr x3, [sp+144]
    002bc98cldr x4, [sp+152]
    002bc990str x3, [sp+80]
    002bc994str x4, [sp+88]
    002bc998ldr x0, [sp+96]
    002bc99cldr x1, [sp+104]
    002bc9a0ldr x2, [sp+112]
    002bc9a4ldp x29, x30, [sp-8]
    002bc9a8add sp, sp, 400
    002bc9acret x30
    002bc9b0
    002bc9b0loc_2bc9b0:
    002bc9b0adrp x0, 0x378000
    002bc9b4add x0, x0, 2112
    002bc9b8bl runtime.newobject
    002bc9bcstr x0, [sp+224]
    002bc9c0adrp x1, 12288
    002bc9c4add x1, x1, 3360
    002bc9c8str x1, [x0]
    002bc9ccldr x1, [sp+424]
    002bc9d0ldr x2, [sp+224]
    002bc9d4ldrsb x27, [x2]
    002bc9d8str x1, [x2+8]
    002bc9dcldr x1, [sp+224]
    002bc9e0adrp x0, 0x457000
    002bc9e4add x0, x0, 768
    002bc9e8bl crypto/internal/fips140hash.UnwrapNew[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bc9ecstr x0, [sp+136]
    002bc9f0adrp x27, 0x78f000
    002bc9f4ldrb w1, [x27+1551]
    002bc9f8strb w1, [sp+79]
    002bc9fctbnz w1, 0, 0x2bca04
    002bca00b 0x2bca2c
    002bca04
    002bca04loc_2bca04:
    002bca04ldr x26, [sp+136]
    002bca08ldr x0, [x26]
    002bca0cblr x0
    002bca10str x0, [sp+272]
    002bca14str x1, [sp+280]
    002bca18bl crypto/internal/fips140only.ApprovedHash
    002bca1cstrb w0, [sp+78]
    002bca20eor x0, x0, 1
    002bca24strb w0, [sp+79]
    002bca28b 0x2bca30
    002bca2c
    002bca2cloc_2bca2c:
    002bca2cb 0x2bca30
    002bca30
    002bca30loc_2bca30:
    002bca30ldrb w7, [sp+79]
    002bca34tbnz w7, 0, 0x2bca3c
    002bca38b 0x2bca84
    002bca3c
    002bca3cloc_2bca3c:
    002bca3cadrp x0, 0x414000
    002bca40add x0, x0, 2527
    002bca44movz x1, 98
    002bca48bl errors.New
    002bca4cstr x0, [sp+288]
    002bca50str x1, [sp+296]
    002bca54str xzr, [sp+96]
    002bca58stp xzr, xzr, [sp+104]
    002bca5cldr x3, [sp+288]
    002bca60ldr x4, [sp+296]
    002bca64str x3, [sp+80]
    002bca68str x4, [sp+88]
    002bca6cldr x0, [sp+96]
    002bca70ldr x1, [sp+104]
    002bca74ldr x2, [sp+112]
    002bca78ldp x29, x30, [sp-8]
    002bca7cadd sp, sp, 400
    002bca80ret x30
    002bca84
    002bca84loc_2bca84:
    002bca84str xzr, [sp+264]
    002bca88stp xzr, xzr, [sp+288]
    002bca8cldr x7, [sp+408]
    002bca90ldrsb x27, [x7]
    002bca94ldr x0, [x7+8]
    002bca98str x0, [sp+216]
    002bca9cldr x4, [sp+440]
    002bcaa0ldr x3, [sp+128]
    002bcaa4ldr x1, [sp+416]
    002bcaa8ldr x2, [sp+136]
    002bcaacldr x5, [sp+448]
    002bcab0ldr x6, [sp+456]
    002bcab4bl crypto/internal/fips140/ecdsa.SignDeterministic[go.shape.*crypto/internal/fips140/nistec.P384Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bcab8str x0, [sp+264]
    002bcabcstr x1, [sp+288]
    002bcac0str x2, [sp+296]
    002bcac4ldr x7, [sp+264]
    002bcac8str x7, [sp+368]
    002bcaccldr x7, [sp+288]
    002bcad0ldr x8, [sp+296]
    002bcad4str x7, [sp+352]
    002bcad8str x8, [sp+360]
    002bcadcldr x7, [sp+368]
    002bcae0str x7, [sp+120]
    002bcae4ldr x7, [sp+360]
    002bcae8ldr x8, [sp+352]
    002bcaecstr x8, [sp+144]
    002bcaf0str x7, [sp+152]
    002bcaf4cbnz x8, 0x2bcafc
    002bcaf8b 0x2bcb2c
    002bcafc
    002bcafcloc_2bcafc:
    002bcafcstr xzr, [sp+96]
    002bcb00stp xzr, xzr, [sp+104]
    002bcb04ldr x3, [sp+144]
    002bcb08ldr x4, [sp+152]
    002bcb0cstr x3, [sp+80]
    002bcb10str x4, [sp+88]
    002bcb14ldr x0, [sp+96]
    002bcb18ldr x1, [sp+104]
    002bcb1cldr x2, [sp+112]
    002bcb20ldp x29, x30, [sp-8]
    002bcb24add sp, sp, 400
    002bcb28ret x30
    002bcb2c
    002bcb2cloc_2bcb2c:
    002bcb2cstr xzr, [sp+240]
    002bcb30stp xzr, xzr, [sp+248]
    002bcb34stp xzr, xzr, [sp+288]
    002bcb38ldr x6, [sp+120]
    002bcb3cldrsb x27, [x6]
    002bcb40ldr x7, [x6]
    002bcb44ldr x8, [x6+8]
    002bcb48ldr x6, [x6+16]
    002bcb4cstr x7, [sp+192]
    002bcb50str x8, [sp+200]
    002bcb54str x6, [sp+208]
    002bcb58ldr x6, [sp+120]
    002bcb5cldrsb x27, [x6]
    002bcb60ldr x3, [x6+24]
    002bcb64ldr x4, [x6+32]
    002bcb68ldr x5, [x6+40]
    002bcb6cstr x3, [sp+168]
    002bcb70str x4, [sp+176]
    002bcb74str x5, [sp+184]
    002bcb78ldr x0, [sp+192]
    002bcb7cldr x1, [sp+200]
    002bcb80ldr x2, [sp+208]
    002bcb84bl crypto/ecdsa.encodeSignature
    002bcb88str x0, [sp+240]
    002bcb8cstr x1, [sp+248]
    002bcb90str x2, [sp+256]
    002bcb94str x3, [sp+288]
    002bcb98str x4, [sp+296]
    002bcb9cldr x6, [sp+240]
    002bcba0ldr x7, [sp+248]
    002bcba4ldr x8, [sp+256]
    002bcba8str x6, [sp+328]
    002bcbacstr x7, [sp+336]
    002bcbb0str x8, [sp+344]
    002bcbb4ldr x6, [sp+288]
    002bcbb8ldr x7, [sp+296]
    002bcbbcstr x6, [sp+312]
    002bcbc0str x7, [sp+320]
    002bcbc4ldr x6, [sp+328]
    002bcbc8ldr x7, [sp+336]
    002bcbccldr x8, [sp+344]
    002bcbd0str x6, [sp+96]
    002bcbd4str x7, [sp+104]
    002bcbd8str x8, [sp+112]
    002bcbdcldr x3, [sp+312]
    002bcbe0ldr x4, [sp+320]
    002bcbe4str x3, [sp+80]
    002bcbe8str x4, [sp+88]
    002bcbecldr x0, [sp+96]
    002bcbf0ldr x1, [sp+104]
    002bcbf4ldr x2, [sp+112]
    002bcbf8ldp x29, x30, [sp-8]
    002bcbfcadd sp, sp, 400
    002bcc00ret x30
    002bcc04
    002bcc04loc_2bcc04:
    002bcc04stp x0, x1, [sp+8]
    002bcc08stp x2, x3, [sp+24]
    002bcc0cstp x4, x5, [sp+40]
    002bcc10str x6, [sp+56]
    002bcc14mov x3, x30
    002bcc18bl runtime.morestack_noctxt.abi0
    002bcc1cldp x0, x1, [sp+8]
    002bcc20ldp x2, x3, [sp+24]
    002bcc24ldp x4, x5, [sp+40]
    002bcc28ldr x6, [sp+56]
    002bcc2cb 0x2bc8d0
    002bc8d0
    002bcc30
    002bcc30crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]: ; void crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point](uintptr[2] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P384Point] * c, crypto/ecdsa.PrivateKey * priv)
    002bcc30ldr x16, [x28+16]
    002bcc34sub x17, sp, 176
    002bcc38subs xzr, x17, x16
    002bcc3cb.ls 0x2bcdec
    002bcc40sub x20, sp, 304
    002bcc44stp x29, x30, [x20-8]
    002bcc48add sp, x20, 0
    002bcc4csub x29, sp, 8
    002bcc50str x0, [sp+312]
    002bcc54str x1, [sp+320]
    002bcc58str x2, [sp+328]
    002bcc5cstr xzr, [sp+88]
    002bcc60stp xzr, xzr, [sp+72]
    002bcc64str xzr, [sp+256]
    002bcc68stp xzr, xzr, [sp+264]
    002bcc6cstp xzr, xzr, [sp+240]
    002bcc70ldr x4, [sp+328]
    002bcc74ldrsb x27, [x4]
    002bcc78ldr x5, [x4]
    002bcc7cldr x4, [x4+8]
    002bcc80str x5, [sp+216]
    002bcc84str x4, [sp+224]
    002bcc88ldr x4, [sp+328]
    002bcc8cldrsb x27, [x4]
    002bcc90ldr x4, [x4+16]
    002bcc94str x4, [sp+208]
    002bcc98ldr x4, [sp+328]
    002bcc9cldrsb x27, [x4]
    002bcca0ldr x3, [x4+24]
    002bcca4str x3, [sp+200]
    002bcca8ldr x0, [sp+216]
    002bccacldr x1, [sp+224]
    002bccb0ldr x2, [sp+208]
    002bccb4bl crypto/ecdsa.pointFromAffine
    002bccb8str x0, [sp+256]
    002bccbcstr x1, [sp+264]
    002bccc0str x2, [sp+272]
    002bccc4str x3, [sp+240]
    002bccc8str x4, [sp+248]
    002bccccldr x4, [sp+256]
    002bccd0ldr x5, [sp+264]
    002bccd4ldr x6, [sp+272]
    002bccd8str x4, [sp+160]
    002bccdcstr x5, [sp+168]
    002bcce0str x6, [sp+176]
    002bcce4ldr x4, [sp+240]
    002bcce8ldr x5, [sp+248]
    002bccecstr x4, [sp+144]
    002bccf0str x5, [sp+152]
    002bccf4ldr x4, [sp+160]
    002bccf8ldr x5, [sp+168]
    002bccfcldr x6, [sp+176]
    002bcd00str x4, [sp+112]
    002bcd04str x5, [sp+120]
    002bcd08str x6, [sp+128]
    002bcd0cldr x4, [sp+152]
    002bcd10ldr x5, [sp+144]
    002bcd14str x5, [sp+96]
    002bcd18str x4, [sp+104]
    002bcd1ccbnz x5, 0x2bcd24
    002bcd20b 0x2bcd48
    002bcd24
    002bcd24loc_2bcd24:
    002bcd24str xzr, [sp+88]
    002bcd28ldr x1, [sp+96]
    002bcd2cldr x2, [sp+104]
    002bcd30str x1, [sp+72]
    002bcd34str x2, [sp+80]
    002bcd38ldr x0, [sp+88]
    002bcd3cldp x29, x30, [sp-8]
    002bcd40add sp, sp, 304
    002bcd44ret x30
    002bcd48
    002bcd48loc_2bcd48:
    002bcd48ldr x1, [sp+328]
    002bcd4cldrsb x27, [x1]
    002bcd50ldr x0, [x1+32]
    002bcd54str x0, [sp+192]
    002bcd58bl math/big.(*Int).Bytes
    002bcd5cstr x0, [sp+256]
    002bcd60str x1, [sp+264]
    002bcd64str x2, [sp+272]
    002bcd68str xzr, [sp+232]
    002bcd6cstp xzr, xzr, [sp+240]
    002bcd70ldr x1, [sp+312]
    002bcd74ldrsb x27, [x1]
    002bcd78ldr x0, [x1]
    002bcd7cstr x0, [sp+184]
    002bcd80ldr x5, [sp+112]
    002bcd84ldr x1, [sp+320]
    002bcd88ldr x6, [sp+120]
    002bcd8cldr x7, [sp+128]
    002bcd90ldr x2, [sp+256]
    002bcd94ldr x3, [sp+264]
    002bcd98ldr x4, [sp+272]
    002bcd9cbl crypto/internal/fips140/ecdsa.NewPrivateKey[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002bcda0str x0, [sp+232]
    002bcda4str x1, [sp+240]
    002bcda8str x2, [sp+248]
    002bcdacldr x1, [sp+232]
    002bcdb0str x1, [sp+136]
    002bcdb4ldr x1, [sp+240]
    002bcdb8ldr x2, [sp+248]
    002bcdbcstr x1, [sp+280]
    002bcdc0str x2, [sp+288]
    002bcdc4ldr x1, [sp+136]
    002bcdc8str x1, [sp+88]
    002bcdccldr x1, [sp+280]
    002bcdd0ldr x2, [sp+288]
    002bcdd4str x1, [sp+72]
    002bcdd8str x2, [sp+80]
    002bcddcldr x0, [sp+88]
    002bcde0ldp x29, x30, [sp-8]
    002bcde4add sp, sp, 304
    002bcde8ret x30
    002bcdec
    002bcdecloc_2bcdec:
    002bcdecstp x0, x1, [sp+8]
    002bcdf0str x2, [sp+24]
    002bcdf4mov x3, x30
    002bcdf8bl runtime.morestack_noctxt.abi0
    002bcdfcldp x0, x1, [sp+8]
    002bce00ldr x2, [sp+24]
    002bce04b 0x2bcc30
    002bce08udf 0
    002bce0cudf 0
    002bcc30
    002bce10
    002bce10crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P256Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P256Point] * c, crypto.Hash hashFunc, crypto/ecdsa.PrivateKey * priv, struct []uint8 hash)
    002bce10ldr x16, [x28+16]
    002bce14sub x17, sp, 272
    002bce18subs xzr, x17, x16
    002bce1cb.ls 0x2bd144
    002bce20sub x20, sp, 400
    002bce24stp x29, x30, [x20-8]
    002bce28add sp, x20, 0
    002bce2csub x29, sp, 8
    002bce30str x0, [sp+408]
    002bce34str x1, [sp+416]
    002bce38str x2, [sp+424]
    002bce3cstr x3, [sp+432]
    002bce40str x4, [sp+440]
    002bce44str x5, [sp+448]
    002bce48str x6, [sp+456]
    002bce4cstr xzr, [sp+96]
    002bce50stp xzr, xzr, [sp+104]
    002bce54stp xzr, xzr, [sp+80]
    002bce58str xzr, [sp+304]
    002bce5cstp xzr, xzr, [sp+288]
    002bce60ldr x3, [sp+408]
    002bce64ldrsb x27, [x3]
    002bce68ldr x0, [x3]
    002bce6cstr x0, [sp+232]
    002bce70ldr x2, [sp+432]
    002bce74ldr x1, [sp+416]
    002bce78bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]
    002bce7cstr x0, [sp+304]
    002bce80str x1, [sp+288]
    002bce84str x2, [sp+296]
    002bce88ldr x3, [sp+304]
    002bce8cstr x3, [sp+160]
    002bce90ldr x3, [sp+288]
    002bce94ldr x4, [sp+296]
    002bce98str x3, [sp+376]
    002bce9cstr x4, [sp+384]
    002bcea0ldr x3, [sp+160]
    002bcea4str x3, [sp+128]
    002bcea8ldr x3, [sp+384]
    002bceacldr x4, [sp+376]
    002bceb0str x4, [sp+144]
    002bceb4str x3, [sp+152]
    002bceb8cbnz x4, 0x2bcec0
    002bcebcb 0x2bcef0
    002bcec0
    002bcec0loc_2bcec0:
    002bcec0str xzr, [sp+96]
    002bcec4stp xzr, xzr, [sp+104]
    002bcec8ldr x3, [sp+144]
    002bceccldr x4, [sp+152]
    002bced0str x3, [sp+80]
    002bced4str x4, [sp+88]
    002bced8ldr x0, [sp+96]
    002bcedcldr x1, [sp+104]
    002bcee0ldr x2, [sp+112]
    002bcee4ldp x29, x30, [sp-8]
    002bcee8add sp, sp, 400
    002bceecret x30
    002bcef0
    002bcef0loc_2bcef0:
    002bcef0adrp x0, 0x378000
    002bcef4add x0, x0, 2112
    002bcef8bl runtime.newobject
    002bcefcstr x0, [sp+224]
    002bcf00adrp x1, 12288
    002bcf04add x1, x1, 3360
    002bcf08str x1, [x0]
    002bcf0cldr x1, [sp+424]
    002bcf10ldr x2, [sp+224]
    002bcf14ldrsb x27, [x2]
    002bcf18str x1, [x2+8]
    002bcf1cldr x1, [sp+224]
    002bcf20adrp x0, 0x457000
    002bcf24add x0, x0, 768
    002bcf28bl crypto/internal/fips140hash.UnwrapNew[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bcf2cstr x0, [sp+136]
    002bcf30adrp x27, 0x78f000
    002bcf34ldrb w1, [x27+1551]
    002bcf38strb w1, [sp+79]
    002bcf3ctbnz w1, 0, 0x2bcf44
    002bcf40b 0x2bcf6c
    002bcf44
    002bcf44loc_2bcf44:
    002bcf44ldr x26, [sp+136]
    002bcf48ldr x0, [x26]
    002bcf4cblr x0
    002bcf50str x0, [sp+272]
    002bcf54str x1, [sp+280]
    002bcf58bl crypto/internal/fips140only.ApprovedHash
    002bcf5cstrb w0, [sp+78]
    002bcf60eor x0, x0, 1
    002bcf64strb w0, [sp+79]
    002bcf68b 0x2bcf70
    002bcf6c
    002bcf6cloc_2bcf6c:
    002bcf6cb 0x2bcf70
    002bcf70
    002bcf70loc_2bcf70:
    002bcf70ldrb w7, [sp+79]
    002bcf74tbnz w7, 0, 0x2bcf7c
    002bcf78b 0x2bcfc4
    002bcf7c
    002bcf7cloc_2bcf7c:
    002bcf7cadrp x0, 0x414000
    002bcf80add x0, x0, 2527
    002bcf84movz x1, 98
    002bcf88bl errors.New
    002bcf8cstr x0, [sp+288]
    002bcf90str x1, [sp+296]
    002bcf94str xzr, [sp+96]
    002bcf98stp xzr, xzr, [sp+104]
    002bcf9cldr x3, [sp+288]
    002bcfa0ldr x4, [sp+296]
    002bcfa4str x3, [sp+80]
    002bcfa8str x4, [sp+88]
    002bcfacldr x0, [sp+96]
    002bcfb0ldr x1, [sp+104]
    002bcfb4ldr x2, [sp+112]
    002bcfb8ldp x29, x30, [sp-8]
    002bcfbcadd sp, sp, 400
    002bcfc0ret x30
    002bcfc4
    002bcfc4loc_2bcfc4:
    002bcfc4str xzr, [sp+264]
    002bcfc8stp xzr, xzr, [sp+288]
    002bcfccldr x7, [sp+408]
    002bcfd0ldrsb x27, [x7]
    002bcfd4ldr x0, [x7+8]
    002bcfd8str x0, [sp+216]
    002bcfdcldr x4, [sp+440]
    002bcfe0ldr x3, [sp+128]
    002bcfe4ldr x1, [sp+416]
    002bcfe8ldr x2, [sp+136]
    002bcfecldr x5, [sp+448]
    002bcff0ldr x6, [sp+456]
    002bcff4bl crypto/internal/fips140/ecdsa.SignDeterministic[go.shape.*crypto/internal/fips140/nistec.P256Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bcff8str x0, [sp+264]
    002bcffcstr x1, [sp+288]
    002bd000str x2, [sp+296]
    002bd004ldr x7, [sp+264]
    002bd008str x7, [sp+368]
    002bd00cldr x7, [sp+288]
    002bd010ldr x8, [sp+296]
    002bd014str x7, [sp+352]
    002bd018str x8, [sp+360]
    002bd01cldr x7, [sp+368]
    002bd020str x7, [sp+120]
    002bd024ldr x7, [sp+360]
    002bd028ldr x8, [sp+352]
    002bd02cstr x8, [sp+144]
    002bd030str x7, [sp+152]
    002bd034cbnz x8, 0x2bd03c
    002bd038b 0x2bd06c
    002bd03c
    002bd03cloc_2bd03c:
    002bd03cstr xzr, [sp+96]
    002bd040stp xzr, xzr, [sp+104]
    002bd044ldr x3, [sp+144]
    002bd048ldr x4, [sp+152]
    002bd04cstr x3, [sp+80]
    002bd050str x4, [sp+88]
    002bd054ldr x0, [sp+96]
    002bd058ldr x1, [sp+104]
    002bd05cldr x2, [sp+112]
    002bd060ldp x29, x30, [sp-8]
    002bd064add sp, sp, 400
    002bd068ret x30
    002bd06c
    002bd06cloc_2bd06c:
    002bd06cstr xzr, [sp+240]
    002bd070stp xzr, xzr, [sp+248]
    002bd074stp xzr, xzr, [sp+288]
    002bd078ldr x6, [sp+120]
    002bd07cldrsb x27, [x6]
    002bd080ldr x7, [x6]
    002bd084ldr x8, [x6+8]
    002bd088ldr x6, [x6+16]
    002bd08cstr x7, [sp+192]
    002bd090str x8, [sp+200]
    002bd094str x6, [sp+208]
    002bd098ldr x6, [sp+120]
    002bd09cldrsb x27, [x6]
    002bd0a0ldr x3, [x6+24]
    002bd0a4ldr x4, [x6+32]
    002bd0a8ldr x5, [x6+40]
    002bd0acstr x3, [sp+168]
    002bd0b0str x4, [sp+176]
    002bd0b4str x5, [sp+184]
    002bd0b8ldr x0, [sp+192]
    002bd0bcldr x1, [sp+200]
    002bd0c0ldr x2, [sp+208]
    002bd0c4bl crypto/ecdsa.encodeSignature
    002bd0c8str x0, [sp+240]
    002bd0ccstr x1, [sp+248]
    002bd0d0str x2, [sp+256]
    002bd0d4str x3, [sp+288]
    002bd0d8str x4, [sp+296]
    002bd0dcldr x6, [sp+240]
    002bd0e0ldr x7, [sp+248]
    002bd0e4ldr x8, [sp+256]
    002bd0e8str x6, [sp+328]
    002bd0ecstr x7, [sp+336]
    002bd0f0str x8, [sp+344]
    002bd0f4ldr x6, [sp+288]
    002bd0f8ldr x7, [sp+296]
    002bd0fcstr x6, [sp+312]
    002bd100str x7, [sp+320]
    002bd104ldr x6, [sp+328]
    002bd108ldr x7, [sp+336]
    002bd10cldr x8, [sp+344]
    002bd110str x6, [sp+96]
    002bd114str x7, [sp+104]
    002bd118str x8, [sp+112]
    002bd11cldr x3, [sp+312]
    002bd120ldr x4, [sp+320]
    002bd124str x3, [sp+80]
    002bd128str x4, [sp+88]
    002bd12cldr x0, [sp+96]
    002bd130ldr x1, [sp+104]
    002bd134ldr x2, [sp+112]
    002bd138ldp x29, x30, [sp-8]
    002bd13cadd sp, sp, 400
    002bd140ret x30
    002bd144
    002bd144loc_2bd144:
    002bd144stp x0, x1, [sp+8]
    002bd148stp x2, x3, [sp+24]
    002bd14cstp x4, x5, [sp+40]
    002bd150str x6, [sp+56]
    002bd154mov x3, x30
    002bd158bl runtime.morestack_noctxt.abi0
    002bd15cldp x0, x1, [sp+8]
    002bd160ldp x2, x3, [sp+24]
    002bd164ldp x4, x5, [sp+40]
    002bd168ldr x6, [sp+56]
    002bd16cb 0x2bce10
    002bce10
    002bd170
    002bd170crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point](uintptr[2] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P256Point] * c, crypto/ecdsa.PrivateKey * priv)
    002bd170ldr x16, [x28+16]
    002bd174sub x17, sp, 176
    002bd178subs xzr, x17, x16
    002bd17cb.ls 0x2bd32c
    002bd180sub x20, sp, 304
    002bd184stp x29, x30, [x20-8]
    002bd188add sp, x20, 0
    002bd18csub x29, sp, 8
    002bd190str x0, [sp+312]
    002bd194str x1, [sp+320]
    002bd198str x2, [sp+328]
    002bd19cstr xzr, [sp+88]
    002bd1a0stp xzr, xzr, [sp+72]
    002bd1a4str xzr, [sp+256]
    002bd1a8stp xzr, xzr, [sp+264]
    002bd1acstp xzr, xzr, [sp+240]
    002bd1b0ldr x4, [sp+328]
    002bd1b4ldrsb x27, [x4]
    002bd1b8ldr x5, [x4]
    002bd1bcldr x4, [x4+8]
    002bd1c0str x5, [sp+216]
    002bd1c4str x4, [sp+224]
    002bd1c8ldr x4, [sp+328]
    002bd1ccldrsb x27, [x4]
    002bd1d0ldr x4, [x4+16]
    002bd1d4str x4, [sp+208]
    002bd1d8ldr x4, [sp+328]
    002bd1dcldrsb x27, [x4]
    002bd1e0ldr x3, [x4+24]
    002bd1e4str x3, [sp+200]
    002bd1e8ldr x0, [sp+216]
    002bd1ecldr x1, [sp+224]
    002bd1f0ldr x2, [sp+208]
    002bd1f4bl crypto/ecdsa.pointFromAffine
    002bd1f8str x0, [sp+256]
    002bd1fcstr x1, [sp+264]
    002bd200str x2, [sp+272]
    002bd204str x3, [sp+240]
    002bd208str x4, [sp+248]
    002bd20cldr x4, [sp+256]
    002bd210ldr x5, [sp+264]
    002bd214ldr x6, [sp+272]
    002bd218str x4, [sp+160]
    002bd21cstr x5, [sp+168]
    002bd220str x6, [sp+176]
    002bd224ldr x4, [sp+240]
    002bd228ldr x5, [sp+248]
    002bd22cstr x4, [sp+144]
    002bd230str x5, [sp+152]
    002bd234ldr x4, [sp+160]
    002bd238ldr x5, [sp+168]
    002bd23cldr x6, [sp+176]
    002bd240str x4, [sp+112]
    002bd244str x5, [sp+120]
    002bd248str x6, [sp+128]
    002bd24cldr x4, [sp+152]
    002bd250ldr x5, [sp+144]
    002bd254str x5, [sp+96]
    002bd258str x4, [sp+104]
    002bd25ccbnz x5, 0x2bd264
    002bd260b 0x2bd288
    002bd264
    002bd264loc_2bd264:
    002bd264str xzr, [sp+88]
    002bd268ldr x1, [sp+96]
    002bd26cldr x2, [sp+104]
    002bd270str x1, [sp+72]
    002bd274str x2, [sp+80]
    002bd278ldr x0, [sp+88]
    002bd27cldp x29, x30, [sp-8]
    002bd280add sp, sp, 304
    002bd284ret x30
    002bd288
    002bd288loc_2bd288:
    002bd288ldr x1, [sp+328]
    002bd28cldrsb x27, [x1]
    002bd290ldr x0, [x1+32]
    002bd294str x0, [sp+192]
    002bd298bl math/big.(*Int).Bytes
    002bd29cstr x0, [sp+256]
    002bd2a0str x1, [sp+264]
    002bd2a4str x2, [sp+272]
    002bd2a8str xzr, [sp+232]
    002bd2acstp xzr, xzr, [sp+240]
    002bd2b0ldr x1, [sp+312]
    002bd2b4ldrsb x27, [x1]
    002bd2b8ldr x0, [x1]
    002bd2bcstr x0, [sp+184]
    002bd2c0ldr x5, [sp+112]
    002bd2c4ldr x1, [sp+320]
    002bd2c8ldr x6, [sp+120]
    002bd2ccldr x7, [sp+128]
    002bd2d0ldr x2, [sp+256]
    002bd2d4ldr x3, [sp+264]
    002bd2d8ldr x4, [sp+272]
    002bd2dcbl crypto/internal/fips140/ecdsa.NewPrivateKey[go.shape.*crypto/internal/fips140/nistec.P256Point]
    002bd2e0str x0, [sp+232]
    002bd2e4str x1, [sp+240]
    002bd2e8str x2, [sp+248]
    002bd2ecldr x1, [sp+232]
    002bd2f0str x1, [sp+136]
    002bd2f4ldr x1, [sp+240]
    002bd2f8ldr x2, [sp+248]
    002bd2fcstr x1, [sp+280]
    002bd300str x2, [sp+288]
    002bd304ldr x1, [sp+136]
    002bd308str x1, [sp+88]
    002bd30cldr x1, [sp+280]
    002bd310ldr x2, [sp+288]
    002bd314str x1, [sp+72]
    002bd318str x2, [sp+80]
    002bd31cldr x0, [sp+88]
    002bd320ldp x29, x30, [sp-8]
    002bd324add sp, sp, 304
    002bd328ret x30
    002bd32c
    002bd32cloc_2bd32c:
    002bd32cstp x0, x1, [sp+8]
    002bd330str x2, [sp+24]
    002bd334mov x3, x30
    002bd338bl runtime.morestack_noctxt.abi0
    002bd33cldp x0, x1, [sp+8]
    002bd340ldr x2, [sp+24]
    002bd344b 0x2bd170
    002bd348udf 0
    002bd34cudf 0
    002bd170
    002bd350
    002bd350crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P224Point]: ; void crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P224Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P224Point] * c, crypto.Hash hashFunc, crypto/ecdsa.PrivateKey * priv, struct []uint8 hash)
    002bd350ldr x16, [x28+16]
    002bd354sub x17, sp, 272
    002bd358subs xzr, x17, x16
    002bd35cb.ls 0x2bd684
    002bd360sub x20, sp, 400
    002bd364stp x29, x30, [x20-8]
    002bd368add sp, x20, 0
    002bd36csub x29, sp, 8
    002bd370str x0, [sp+408]
    002bd374str x1, [sp+416]
    002bd378str x2, [sp+424]
    002bd37cstr x3, [sp+432]
    002bd380str x4, [sp+440]
    002bd384str x5, [sp+448]
    002bd388str x6, [sp+456]
    002bd38cstr xzr, [sp+96]
    002bd390stp xzr, xzr, [sp+104]
    002bd394stp xzr, xzr, [sp+80]
    002bd398str xzr, [sp+304]
    002bd39cstp xzr, xzr, [sp+288]
    002bd3a0ldr x3, [sp+408]
    002bd3a4ldrsb x27, [x3]
    002bd3a8ldr x0, [x3]
    002bd3acstr x0, [sp+232]
    002bd3b0ldr x2, [sp+432]
    002bd3b4ldr x1, [sp+416]
    002bd3b8bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002bd3bcstr x0, [sp+304]
    002bd3c0str x1, [sp+288]
    002bd3c4str x2, [sp+296]
    002bd3c8ldr x3, [sp+304]
    002bd3ccstr x3, [sp+160]
    002bd3d0ldr x3, [sp+288]
    002bd3d4ldr x4, [sp+296]
    002bd3d8str x3, [sp+376]
    002bd3dcstr x4, [sp+384]
    002bd3e0ldr x3, [sp+160]
    002bd3e4str x3, [sp+128]
    002bd3e8ldr x3, [sp+384]
    002bd3ecldr x4, [sp+376]
    002bd3f0str x4, [sp+144]
    002bd3f4str x3, [sp+152]
    002bd3f8cbnz x4, 0x2bd400
    002bd3fcb 0x2bd430
    002bd400
    002bd400loc_2bd400:
    002bd400str xzr, [sp+96]
    002bd404stp xzr, xzr, [sp+104]
    002bd408ldr x3, [sp+144]
    002bd40cldr x4, [sp+152]
    002bd410str x3, [sp+80]
    002bd414str x4, [sp+88]
    002bd418ldr x0, [sp+96]
    002bd41cldr x1, [sp+104]
    002bd420ldr x2, [sp+112]
    002bd424ldp x29, x30, [sp-8]
    002bd428add sp, sp, 400
    002bd42cret x30
    002bd430
    002bd430loc_2bd430:
    002bd430adrp x0, 0x377000
    002bd434add x0, x0, 2112
    002bd438bl runtime.newobject
    002bd43cstr x0, [sp+224]
    002bd440adrp x1, 8192
    002bd444add x1, x1, 3360
    002bd448str x1, [x0]
    002bd44cldr x1, [sp+424]
    002bd450ldr x2, [sp+224]
    002bd454ldrsb x27, [x2]
    002bd458str x1, [x2+8]
    002bd45cldr x1, [sp+224]
    002bd460adrp x0, 0x456000
    002bd464add x0, x0, 768
    002bd468bl crypto/internal/fips140hash.UnwrapNew[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bd46cstr x0, [sp+136]
    002bd470adrp x27, 0x78e000
    002bd474ldrb w1, [x27+1551]
    002bd478strb w1, [sp+79]
    002bd47ctbnz w1, 0, 0x2bd484
    002bd480b 0x2bd4ac
    002bd484
    002bd484loc_2bd484:
    002bd484ldr x26, [sp+136]
    002bd488ldr x0, [x26]
    002bd48cblr x0
    002bd490str x0, [sp+272]
    002bd494str x1, [sp+280]
    002bd498bl crypto/internal/fips140only.ApprovedHash
    002bd49cstrb w0, [sp+78]
    002bd4a0eor x0, x0, 1
    002bd4a4strb w0, [sp+79]
    002bd4a8b 0x2bd4b0
    002bd4ac
    002bd4acloc_2bd4ac:
    002bd4acb 0x2bd4b0
    002bd4b0
    002bd4b0loc_2bd4b0:
    002bd4b0ldrb w7, [sp+79]
    002bd4b4tbnz w7, 0, 0x2bd4bc
    002bd4b8b 0x2bd504
    002bd4bc
    002bd4bcloc_2bd4bc:
    002bd4bcadrp x0, 0x413000
    002bd4c0add x0, x0, 2527
    002bd4c4movz x1, 98
    002bd4c8bl errors.New
    002bd4ccstr x0, [sp+288]
    002bd4d0str x1, [sp+296]
    002bd4d4str xzr, [sp+96]
    002bd4d8stp xzr, xzr, [sp+104]
    002bd4dcldr x3, [sp+288]
    002bd4e0ldr x4, [sp+296]
    002bd4e4str x3, [sp+80]
    002bd4e8str x4, [sp+88]
    002bd4ecldr x0, [sp+96]
    002bd4f0ldr x1, [sp+104]
    002bd4f4ldr x2, [sp+112]
    002bd4f8ldp x29, x30, [sp-8]
    002bd4fcadd sp, sp, 400
    002bd500ret x30
    002bd504
    002bd504loc_2bd504:
    002bd504str xzr, [sp+264]
    002bd508stp xzr, xzr, [sp+288]
    002bd50cldr x7, [sp+408]
    002bd510ldrsb x27, [x7]
    002bd514ldr x0, [x7+8]
    002bd518str x0, [sp+216]
    002bd51cldr x4, [sp+440]
    002bd520ldr x3, [sp+128]
    002bd524ldr x1, [sp+416]
    002bd528ldr x2, [sp+136]
    002bd52cldr x5, [sp+448]
    002bd530ldr x6, [sp+456]
    002bd534bl crypto/internal/fips140/ecdsa.SignDeterministic[go.shape.*crypto/internal/fips140/nistec.P224Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bd538str x0, [sp+264]
    002bd53cstr x1, [sp+288]
    002bd540str x2, [sp+296]
    002bd544ldr x7, [sp+264]
    002bd548str x7, [sp+368]
    002bd54cldr x7, [sp+288]
    002bd550ldr x8, [sp+296]
    002bd554str x7, [sp+352]
    002bd558str x8, [sp+360]
    002bd55cldr x7, [sp+368]
    002bd560str x7, [sp+120]
    002bd564ldr x7, [sp+360]
    002bd568ldr x8, [sp+352]
    002bd56cstr x8, [sp+144]
    002bd570str x7, [sp+152]
    002bd574cbnz x8, 0x2bd57c
    002bd578b 0x2bd5ac
    002bd57c
    002bd57cloc_2bd57c:
    002bd57cstr xzr, [sp+96]
    002bd580stp xzr, xzr, [sp+104]
    002bd584ldr x3, [sp+144]
    002bd588ldr x4, [sp+152]
    002bd58cstr x3, [sp+80]
    002bd590str x4, [sp+88]
    002bd594ldr x0, [sp+96]
    002bd598ldr x1, [sp+104]
    002bd59cldr x2, [sp+112]
    002bd5a0ldp x29, x30, [sp-8]
    002bd5a4add sp, sp, 400
    002bd5a8ret x30
    002bd5ac
    002bd5acloc_2bd5ac:
    002bd5acstr xzr, [sp+240]
    002bd5b0stp xzr, xzr, [sp+248]
    002bd5b4stp xzr, xzr, [sp+288]
    002bd5b8ldr x6, [sp+120]
    002bd5bcldrsb x27, [x6]
    002bd5c0ldr x7, [x6]
    002bd5c4ldr x8, [x6+8]
    002bd5c8ldr x6, [x6+16]
    002bd5ccstr x7, [sp+192]
    002bd5d0str x8, [sp+200]
    002bd5d4str x6, [sp+208]
    002bd5d8ldr x6, [sp+120]
    002bd5dcldrsb x27, [x6]
    002bd5e0ldr x3, [x6+24]
    002bd5e4ldr x4, [x6+32]
    002bd5e8ldr x5, [x6+40]
    002bd5ecstr x3, [sp+168]
    002bd5f0str x4, [sp+176]
    002bd5f4str x5, [sp+184]
    002bd5f8ldr x0, [sp+192]
    002bd5fcldr x1, [sp+200]
    002bd600ldr x2, [sp+208]
    002bd604bl crypto/ecdsa.encodeSignature
    002bd608str x0, [sp+240]
    002bd60cstr x1, [sp+248]
    002bd610str x2, [sp+256]
    002bd614str x3, [sp+288]
    002bd618str x4, [sp+296]
    002bd61cldr x6, [sp+240]
    002bd620ldr x7, [sp+248]
    002bd624ldr x8, [sp+256]
    002bd628str x6, [sp+328]
    002bd62cstr x7, [sp+336]
    002bd630str x8, [sp+344]
    002bd634ldr x6, [sp+288]
    002bd638ldr x7, [sp+296]
    002bd63cstr x6, [sp+312]
    002bd640str x7, [sp+320]
    002bd644ldr x6, [sp+328]
    002bd648ldr x7, [sp+336]
    002bd64cldr x8, [sp+344]
    002bd650str x6, [sp+96]
    002bd654str x7, [sp+104]
    002bd658str x8, [sp+112]
    002bd65cldr x3, [sp+312]
    002bd660ldr x4, [sp+320]
    002bd664str x3, [sp+80]
    002bd668str x4, [sp+88]
    002bd66cldr x0, [sp+96]
    002bd670ldr x1, [sp+104]
    002bd674ldr x2, [sp+112]
    002bd678ldp x29, x30, [sp-8]
    002bd67cadd sp, sp, 400
    002bd680ret x30
    002bd684
    002bd684loc_2bd684:
    002bd684stp x0, x1, [sp+8]
    002bd688stp x2, x3, [sp+24]
    002bd68cstp x4, x5, [sp+40]
    002bd690str x6, [sp+56]
    002bd694mov x3, x30
    002bd698bl runtime.morestack_noctxt.abi0
    002bd69cldp x0, x1, [sp+8]
    002bd6a0ldp x2, x3, [sp+24]
    002bd6a4ldp x4, x5, [sp+40]
    002bd6a8ldr x6, [sp+56]
    002bd6acb 0x2bd350
    002bd350
    002bd6b0
    002bd6b0crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]: ; void crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point](uintptr[2] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P224Point] * c, crypto/ecdsa.PrivateKey * priv)
    002bd6b0ldr x16, [x28+16]
    002bd6b4sub x17, sp, 176
    002bd6b8subs xzr, x17, x16
    002bd6bcb.ls 0x2bd86c
    002bd6c0sub x20, sp, 304
    002bd6c4stp x29, x30, [x20-8]
    002bd6c8add sp, x20, 0
    002bd6ccsub x29, sp, 8
    002bd6d0str x0, [sp+312]
    002bd6d4str x1, [sp+320]
    002bd6d8str x2, [sp+328]
    002bd6dcstr xzr, [sp+88]
    002bd6e0stp xzr, xzr, [sp+72]
    002bd6e4str xzr, [sp+256]
    002bd6e8stp xzr, xzr, [sp+264]
    002bd6ecstp xzr, xzr, [sp+240]
    002bd6f0ldr x4, [sp+328]
    002bd6f4ldrsb x27, [x4]
    002bd6f8ldr x5, [x4]
    002bd6fcldr x4, [x4+8]
    002bd700str x5, [sp+216]
    002bd704str x4, [sp+224]
    002bd708ldr x4, [sp+328]
    002bd70cldrsb x27, [x4]
    002bd710ldr x4, [x4+16]
    002bd714str x4, [sp+208]
    002bd718ldr x4, [sp+328]
    002bd71cldrsb x27, [x4]
    002bd720ldr x3, [x4+24]
    002bd724str x3, [sp+200]
    002bd728ldr x0, [sp+216]
    002bd72cldr x1, [sp+224]
    002bd730ldr x2, [sp+208]
    002bd734bl crypto/ecdsa.pointFromAffine
    002bd738str x0, [sp+256]
    002bd73cstr x1, [sp+264]
    002bd740str x2, [sp+272]
    002bd744str x3, [sp+240]
    002bd748str x4, [sp+248]
    002bd74cldr x4, [sp+256]
    002bd750ldr x5, [sp+264]
    002bd754ldr x6, [sp+272]
    002bd758str x4, [sp+160]
    002bd75cstr x5, [sp+168]
    002bd760str x6, [sp+176]
    002bd764ldr x4, [sp+240]
    002bd768ldr x5, [sp+248]
    002bd76cstr x4, [sp+144]
    002bd770str x5, [sp+152]
    002bd774ldr x4, [sp+160]
    002bd778ldr x5, [sp+168]
    002bd77cldr x6, [sp+176]
    002bd780str x4, [sp+112]
    002bd784str x5, [sp+120]
    002bd788str x6, [sp+128]
    002bd78cldr x4, [sp+152]
    002bd790ldr x5, [sp+144]
    002bd794str x5, [sp+96]
    002bd798str x4, [sp+104]
    002bd79ccbnz x5, 0x2bd7a4
    002bd7a0b 0x2bd7c8
    002bd7a4
    002bd7a4loc_2bd7a4:
    002bd7a4str xzr, [sp+88]
    002bd7a8ldr x1, [sp+96]
    002bd7acldr x2, [sp+104]
    002bd7b0str x1, [sp+72]
    002bd7b4str x2, [sp+80]
    002bd7b8ldr x0, [sp+88]
    002bd7bcldp x29, x30, [sp-8]
    002bd7c0add sp, sp, 304
    002bd7c4ret x30
    002bd7c8
    002bd7c8loc_2bd7c8:
    002bd7c8ldr x1, [sp+328]
    002bd7ccldrsb x27, [x1]
    002bd7d0ldr x0, [x1+32]
    002bd7d4str x0, [sp+192]
    002bd7d8bl math/big.(*Int).Bytes
    002bd7dcstr x0, [sp+256]
    002bd7e0str x1, [sp+264]
    002bd7e4str x2, [sp+272]
    002bd7e8str xzr, [sp+232]
    002bd7ecstp xzr, xzr, [sp+240]
    002bd7f0ldr x1, [sp+312]
    002bd7f4ldrsb x27, [x1]
    002bd7f8ldr x0, [x1]
    002bd7fcstr x0, [sp+184]
    002bd800ldr x5, [sp+112]
    002bd804ldr x1, [sp+320]
    002bd808ldr x6, [sp+120]
    002bd80cldr x7, [sp+128]
    002bd810ldr x2, [sp+256]
    002bd814ldr x3, [sp+264]
    002bd818ldr x4, [sp+272]
    002bd81cbl crypto/internal/fips140/ecdsa.NewPrivateKey[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002bd820str x0, [sp+232]
    002bd824str x1, [sp+240]
    002bd828str x2, [sp+248]
    002bd82cldr x1, [sp+232]
    002bd830str x1, [sp+136]
    002bd834ldr x1, [sp+240]
    002bd838ldr x2, [sp+248]
    002bd83cstr x1, [sp+280]
    002bd840str x2, [sp+288]
    002bd844ldr x1, [sp+136]
    002bd848str x1, [sp+88]
    002bd84cldr x1, [sp+280]
    002bd850ldr x2, [sp+288]
    002bd854str x1, [sp+72]
    002bd858str x2, [sp+80]
    002bd85cldr x0, [sp+88]
    002bd860ldp x29, x30, [sp-8]
    002bd864add sp, sp, 304
    002bd868ret x30
    002bd86c
    002bd86cloc_2bd86c:
    002bd86cstp x0, x1, [sp+8]
    002bd870str x2, [sp+24]
    002bd874mov x3, x30
    002bd878bl runtime.morestack_noctxt.abi0
    002bd87cldp x0, x1, [sp+8]
    002bd880ldr x2, [sp+24]
    002bd884b 0x2bd6b0
    002bd888udf 0
    002bd88cudf 0
    002bd6b0
    002bd890
    002bd890crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point]: ; void crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P521Point] * c, crypto/ecdsa.PrivateKey * priv, io.Reader rand, struct []uint8 hash)
    002bd890ldr x16, [x28+16]
    002bd894sub x17, sp, 256
    002bd898subs xzr, x17, x16
    002bd89cb.ls 0x2bdb88
    002bd8a0sub x20, sp, 384
    002bd8a4stp x29, x30, [x20-8]
    002bd8a8add sp, x20, 0
    002bd8acsub x29, sp, 8
    002bd8b0str x0, [sp+392]
    002bd8b4str x1, [sp+400]
    002bd8b8str x2, [sp+408]
    002bd8bcstr x3, [sp+416]
    002bd8c0str x4, [sp+424]
    002bd8c4str x5, [sp+432]
    002bd8c8str x6, [sp+440]
    002bd8ccstr x7, [sp+448]
    002bd8d0str xzr, [sp+112]
    002bd8d4stp xzr, xzr, [sp+120]
    002bd8d8stp xzr, xzr, [sp+96]
    002bd8dcadrp x27, 0x78e000
    002bd8e0ldrb w3, [x27+1551]
    002bd8e4strb w3, [sp+95]
    002bd8e8tbnz w3, 0, 0x2bd8f0
    002bd8ecb 0x2bd90c
    002bd8f0
    002bd8f0loc_2bd8f0:
    002bd8f0ldr x0, [sp+416]
    002bd8f4ldr x1, [sp+424]
    002bd8f8bl crypto/internal/fips140only.ApprovedRandomReader
    002bd8fcstrb w0, [sp+94]
    002bd900eor x2, x0, 1
    002bd904strb w2, [sp+95]
    002bd908b 0x2bd910
    002bd90c
    002bd90cloc_2bd90c:
    002bd90cb 0x2bd910
    002bd910
    002bd910loc_2bd910:
    002bd910ldrb w3, [sp+95]
    002bd914tbnz w3, 0, 0x2bd91c
    002bd918b 0x2bd964
    002bd91c
    002bd91cloc_2bd91c:
    002bd91cadrp x0, 0x411000
    002bd920add x0, x0, 2093
    002bd924movz x1, 70
    002bd928bl errors.New
    002bd92cstr x0, [sp+280]
    002bd930str x1, [sp+288]
    002bd934str xzr, [sp+112]
    002bd938stp xzr, xzr, [sp+120]
    002bd93cldr x3, [sp+280]
    002bd940ldr x4, [sp+288]
    002bd944str x3, [sp+96]
    002bd948str x4, [sp+104]
    002bd94cldr x0, [sp+112]
    002bd950ldr x1, [sp+120]
    002bd954ldr x2, [sp+128]
    002bd958ldp x29, x30, [sp-8]
    002bd95cadd sp, sp, 384
    002bd960ret x30
    002bd964
    002bd964loc_2bd964:
    002bd964str xzr, [sp+272]
    002bd968stp xzr, xzr, [sp+280]
    002bd96cldr x3, [sp+392]
    002bd970ldrsb x27, [x3]
    002bd974ldr x0, [x3]
    002bd978str x0, [sp+232]
    002bd97cldr x2, [sp+408]
    002bd980ldr x1, [sp+400]
    002bd984bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point]
    002bd988str x0, [sp+272]
    002bd98cstr x1, [sp+280]
    002bd990str x2, [sp+288]
    002bd994ldr x3, [sp+272]
    002bd998str x3, [sp+168]
    002bd99cldr x3, [sp+280]
    002bd9a0ldr x4, [sp+288]
    002bd9a4str x3, [sp+360]
    002bd9a8str x4, [sp+368]
    002bd9acldr x3, [sp+168]
    002bd9b0str x3, [sp+144]
    002bd9b4ldr x3, [sp+368]
    002bd9b8ldr x4, [sp+360]
    002bd9bcstr x4, [sp+152]
    002bd9c0str x3, [sp+160]
    002bd9c4cbnz x4, 0x2bd9cc
    002bd9c8b 0x2bd9fc
    002bd9cc
    002bd9ccloc_2bd9cc:
    002bd9ccstr xzr, [sp+112]
    002bd9d0stp xzr, xzr, [sp+120]
    002bd9d4ldr x3, [sp+152]
    002bd9d8ldr x4, [sp+160]
    002bd9dcstr x3, [sp+96]
    002bd9e0str x4, [sp+104]
    002bd9e4ldr x0, [sp+112]
    002bd9e8ldr x1, [sp+120]
    002bd9ecldr x2, [sp+128]
    002bd9f0ldp x29, x30, [sp-8]
    002bd9f4add sp, sp, 384
    002bd9f8ret x30
    002bd9fc
    002bd9fcloc_2bd9fc:
    002bd9fcstr xzr, [sp+264]
    002bda00stp xzr, xzr, [sp+280]
    002bda04ldr x9, [sp+392]
    002bda08ldrsb x27, [x9]
    002bda0cldr x0, [x9+8]
    002bda10str x0, [sp+224]
    002bda14ldr x4, [sp+416]
    002bda18ldr x6, [sp+432]
    002bda1cldr x3, [sp+144]
    002bda20ldr x1, [sp+400]
    002bda24ldr x7, [sp+440]
    002bda28ldr x5, [sp+424]
    002bda2cldr x8, [sp+448]
    002bda30adrp x2, 0x41c000
    002bda34add x2, x2, 592
    002bda38bl crypto/internal/fips140/ecdsa.Sign[go.shape.*crypto/internal/fips140/nistec.P521Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bda3cstr x0, [sp+264]
    002bda40str x1, [sp+280]
    002bda44str x2, [sp+288]
    002bda48ldr x9, [sp+264]
    002bda4cstr x9, [sp+352]
    002bda50ldr x9, [sp+280]
    002bda54ldr x10, [sp+288]
    002bda58str x9, [sp+336]
    002bda5cstr x10, [sp+344]
    002bda60ldr x9, [sp+352]
    002bda64str x9, [sp+136]
    002bda68ldr x9, [sp+344]
    002bda6cldr x10, [sp+336]
    002bda70str x10, [sp+152]
    002bda74str x9, [sp+160]
    002bda78cbnz x10, 0x2bda80
    002bda7cb 0x2bdab0
    002bda80
    002bda80loc_2bda80:
    002bda80str xzr, [sp+112]
    002bda84stp xzr, xzr, [sp+120]
    002bda88ldr x3, [sp+152]
    002bda8cldr x4, [sp+160]
    002bda90str x3, [sp+96]
    002bda94str x4, [sp+104]
    002bda98ldr x0, [sp+112]
    002bda9cldr x1, [sp+120]
    002bdaa0ldr x2, [sp+128]
    002bdaa4ldp x29, x30, [sp-8]
    002bdaa8add sp, sp, 384
    002bdaacret x30
    002bdab0
    002bdab0loc_2bdab0:
    002bdab0str xzr, [sp+240]
    002bdab4stp xzr, xzr, [sp+248]
    002bdab8stp xzr, xzr, [sp+280]
    002bdabcldr x6, [sp+136]
    002bdac0ldrsb x27, [x6]
    002bdac4ldr x7, [x6]
    002bdac8ldr x8, [x6+8]
    002bdaccldr x6, [x6+16]
    002bdad0str x7, [sp+200]
    002bdad4str x8, [sp+208]
    002bdad8str x6, [sp+216]
    002bdadcldr x6, [sp+136]
    002bdae0ldrsb x27, [x6]
    002bdae4ldr x3, [x6+24]
    002bdae8ldr x4, [x6+32]
    002bdaecldr x5, [x6+40]
    002bdaf0str x3, [sp+176]
    002bdaf4str x4, [sp+184]
    002bdaf8str x5, [sp+192]
    002bdafcldr x0, [sp+200]
    002bdb00ldr x1, [sp+208]
    002bdb04ldr x2, [sp+216]
    002bdb08bl crypto/ecdsa.encodeSignature
    002bdb0cstr x0, [sp+240]
    002bdb10str x1, [sp+248]
    002bdb14str x2, [sp+256]
    002bdb18str x3, [sp+280]
    002bdb1cstr x4, [sp+288]
    002bdb20ldr x6, [sp+240]
    002bdb24ldr x7, [sp+248]
    002bdb28ldr x8, [sp+256]
    002bdb2cstr x6, [sp+312]
    002bdb30str x7, [sp+320]
    002bdb34str x8, [sp+328]
    002bdb38ldr x6, [sp+280]
    002bdb3cldr x7, [sp+288]
    002bdb40str x6, [sp+296]
    002bdb44str x7, [sp+304]
    002bdb48ldr x6, [sp+312]
    002bdb4cldr x7, [sp+320]
    002bdb50ldr x8, [sp+328]
    002bdb54str x6, [sp+112]
    002bdb58str x7, [sp+120]
    002bdb5cstr x8, [sp+128]
    002bdb60ldr x3, [sp+296]
    002bdb64ldr x4, [sp+304]
    002bdb68str x3, [sp+96]
    002bdb6cstr x4, [sp+104]
    002bdb70ldr x0, [sp+112]
    002bdb74ldr x1, [sp+120]
    002bdb78ldr x2, [sp+128]
    002bdb7cldp x29, x30, [sp-8]
    002bdb80add sp, sp, 384
    002bdb84ret x30
    002bdb88
    002bdb88loc_2bdb88:
    002bdb88stp x0, x1, [sp+8]
    002bdb8cstp x2, x3, [sp+24]
    002bdb90stp x4, x5, [sp+40]
    002bdb94stp x6, x7, [sp+56]
    002bdb98mov x3, x30
    002bdb9cbl runtime.morestack_noctxt.abi0
    002bdba0ldp x0, x1, [sp+8]
    002bdba4ldp x2, x3, [sp+24]
    002bdba8ldp x4, x5, [sp+40]
    002bdbacldp x6, x7, [sp+56]
    002bdbb0b 0x2bd890
    002bdbb4udf 0
    002bdbb8udf 0
    002bdbbcudf 0
    002bd890
    002bdbc0
    002bdbc0crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]: ; void crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P384Point] * c, crypto/ecdsa.PrivateKey * priv, io.Reader rand, struct []uint8 hash)
    002bdbc0ldr x16, [x28+16]
    002bdbc4sub x17, sp, 256
    002bdbc8subs xzr, x17, x16
    002bdbccb.ls 0x2bdeb8
    002bdbd0sub x20, sp, 384
    002bdbd4stp x29, x30, [x20-8]
    002bdbd8add sp, x20, 0
    002bdbdcsub x29, sp, 8
    002bdbe0str x0, [sp+392]
    002bdbe4str x1, [sp+400]
    002bdbe8str x2, [sp+408]
    002bdbecstr x3, [sp+416]
    002bdbf0str x4, [sp+424]
    002bdbf4str x5, [sp+432]
    002bdbf8str x6, [sp+440]
    002bdbfcstr x7, [sp+448]
    002bdc00str xzr, [sp+112]
    002bdc04stp xzr, xzr, [sp+120]
    002bdc08stp xzr, xzr, [sp+96]
    002bdc0cadrp x27, 0x78e000
    002bdc10ldrb w3, [x27+1551]
    002bdc14strb w3, [sp+95]
    002bdc18tbnz w3, 0, 0x2bdc20
    002bdc1cb 0x2bdc3c
    002bdc20
    002bdc20loc_2bdc20:
    002bdc20ldr x0, [sp+416]
    002bdc24ldr x1, [sp+424]
    002bdc28bl crypto/internal/fips140only.ApprovedRandomReader
    002bdc2cstrb w0, [sp+94]
    002bdc30eor x2, x0, 1
    002bdc34strb w2, [sp+95]
    002bdc38b 0x2bdc40
    002bdc3c
    002bdc3cloc_2bdc3c:
    002bdc3cb 0x2bdc40
    002bdc40
    002bdc40loc_2bdc40:
    002bdc40ldrb w3, [sp+95]
    002bdc44tbnz w3, 0, 0x2bdc4c
    002bdc48b 0x2bdc94
    002bdc4c
    002bdc4cloc_2bdc4c:
    002bdc4cadrp x0, 0x411000
    002bdc50add x0, x0, 2093
    002bdc54movz x1, 70
    002bdc58bl errors.New
    002bdc5cstr x0, [sp+280]
    002bdc60str x1, [sp+288]
    002bdc64str xzr, [sp+112]
    002bdc68stp xzr, xzr, [sp+120]
    002bdc6cldr x3, [sp+280]
    002bdc70ldr x4, [sp+288]
    002bdc74str x3, [sp+96]
    002bdc78str x4, [sp+104]
    002bdc7cldr x0, [sp+112]
    002bdc80ldr x1, [sp+120]
    002bdc84ldr x2, [sp+128]
    002bdc88ldp x29, x30, [sp-8]
    002bdc8cadd sp, sp, 384
    002bdc90ret x30
    002bdc94
    002bdc94loc_2bdc94:
    002bdc94str xzr, [sp+272]
    002bdc98stp xzr, xzr, [sp+280]
    002bdc9cldr x3, [sp+392]
    002bdca0ldrsb x27, [x3]
    002bdca4ldr x0, [x3]
    002bdca8str x0, [sp+232]
    002bdcacldr x2, [sp+408]
    002bdcb0ldr x1, [sp+400]
    002bdcb4bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002bdcb8str x0, [sp+272]
    002bdcbcstr x1, [sp+280]
    002bdcc0str x2, [sp+288]
    002bdcc4ldr x3, [sp+272]
    002bdcc8str x3, [sp+168]
    002bdcccldr x3, [sp+280]
    002bdcd0ldr x4, [sp+288]
    002bdcd4str x3, [sp+360]
    002bdcd8str x4, [sp+368]
    002bdcdcldr x3, [sp+168]
    002bdce0str x3, [sp+144]
    002bdce4ldr x3, [sp+368]
    002bdce8ldr x4, [sp+360]
    002bdcecstr x4, [sp+152]
    002bdcf0str x3, [sp+160]
    002bdcf4cbnz x4, 0x2bdcfc
    002bdcf8b 0x2bdd2c
    002bdcfc
    002bdcfcloc_2bdcfc:
    002bdcfcstr xzr, [sp+112]
    002bdd00stp xzr, xzr, [sp+120]
    002bdd04ldr x3, [sp+152]
    002bdd08ldr x4, [sp+160]
    002bdd0cstr x3, [sp+96]
    002bdd10str x4, [sp+104]
    002bdd14ldr x0, [sp+112]
    002bdd18ldr x1, [sp+120]
    002bdd1cldr x2, [sp+128]
    002bdd20ldp x29, x30, [sp-8]
    002bdd24add sp, sp, 384
    002bdd28ret x30
    002bdd2c
    002bdd2cloc_2bdd2c:
    002bdd2cstr xzr, [sp+264]
    002bdd30stp xzr, xzr, [sp+280]
    002bdd34ldr x9, [sp+392]
    002bdd38ldrsb x27, [x9]
    002bdd3cldr x0, [x9+8]
    002bdd40str x0, [sp+224]
    002bdd44ldr x4, [sp+416]
    002bdd48ldr x6, [sp+432]
    002bdd4cldr x3, [sp+144]
    002bdd50ldr x1, [sp+400]
    002bdd54ldr x7, [sp+440]
    002bdd58ldr x5, [sp+424]
    002bdd5cldr x8, [sp+448]
    002bdd60adrp x2, 0x41c000
    002bdd64add x2, x2, 592
    002bdd68bl crypto/internal/fips140/ecdsa.Sign[go.shape.*crypto/internal/fips140/nistec.P384Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bdd6cstr x0, [sp+264]
    002bdd70str x1, [sp+280]
    002bdd74str x2, [sp+288]
    002bdd78ldr x9, [sp+264]
    002bdd7cstr x9, [sp+352]
    002bdd80ldr x9, [sp+280]
    002bdd84ldr x10, [sp+288]
    002bdd88str x9, [sp+336]
    002bdd8cstr x10, [sp+344]
    002bdd90ldr x9, [sp+352]
    002bdd94str x9, [sp+136]
    002bdd98ldr x9, [sp+344]
    002bdd9cldr x10, [sp+336]
    002bdda0str x10, [sp+152]
    002bdda4str x9, [sp+160]
    002bdda8cbnz x10, 0x2bddb0
    002bddacb 0x2bdde0
    002bddb0
    002bddb0loc_2bddb0:
    002bddb0str xzr, [sp+112]
    002bddb4stp xzr, xzr, [sp+120]
    002bddb8ldr x3, [sp+152]
    002bddbcldr x4, [sp+160]
    002bddc0str x3, [sp+96]
    002bddc4str x4, [sp+104]
    002bddc8ldr x0, [sp+112]
    002bddccldr x1, [sp+120]
    002bddd0ldr x2, [sp+128]
    002bddd4ldp x29, x30, [sp-8]
    002bddd8add sp, sp, 384
    002bdddcret x30
    002bdde0
    002bdde0loc_2bdde0:
    002bdde0str xzr, [sp+240]
    002bdde4stp xzr, xzr, [sp+248]
    002bdde8stp xzr, xzr, [sp+280]
    002bddecldr x6, [sp+136]
    002bddf0ldrsb x27, [x6]
    002bddf4ldr x7, [x6]
    002bddf8ldr x8, [x6+8]
    002bddfcldr x6, [x6+16]
    002bde00str x7, [sp+200]
    002bde04str x8, [sp+208]
    002bde08str x6, [sp+216]
    002bde0cldr x6, [sp+136]
    002bde10ldrsb x27, [x6]
    002bde14ldr x3, [x6+24]
    002bde18ldr x4, [x6+32]
    002bde1cldr x5, [x6+40]
    002bde20str x3, [sp+176]
    002bde24str x4, [sp+184]
    002bde28str x5, [sp+192]
    002bde2cldr x0, [sp+200]
    002bde30ldr x1, [sp+208]
    002bde34ldr x2, [sp+216]
    002bde38bl crypto/ecdsa.encodeSignature
    002bde3cstr x0, [sp+240]
    002bde40str x1, [sp+248]
    002bde44str x2, [sp+256]
    002bde48str x3, [sp+280]
    002bde4cstr x4, [sp+288]
    002bde50ldr x6, [sp+240]
    002bde54ldr x7, [sp+248]
    002bde58ldr x8, [sp+256]
    002bde5cstr x6, [sp+312]
    002bde60str x7, [sp+320]
    002bde64str x8, [sp+328]
    002bde68ldr x6, [sp+280]
    002bde6cldr x7, [sp+288]
    002bde70str x6, [sp+296]
    002bde74str x7, [sp+304]
    002bde78ldr x6, [sp+312]
    002bde7cldr x7, [sp+320]
    002bde80ldr x8, [sp+328]
    002bde84str x6, [sp+112]
    002bde88str x7, [sp+120]
    002bde8cstr x8, [sp+128]
    002bde90ldr x3, [sp+296]
    002bde94ldr x4, [sp+304]
    002bde98str x3, [sp+96]
    002bde9cstr x4, [sp+104]
    002bdea0ldr x0, [sp+112]
    002bdea4ldr x1, [sp+120]
    002bdea8ldr x2, [sp+128]
    002bdeacldp x29, x30, [sp-8]
    002bdeb0add sp, sp, 384
    002bdeb4ret x30
    002bdeb8
    002bdeb8loc_2bdeb8:
    002bdeb8stp x0, x1, [sp+8]
    002bdebcstp x2, x3, [sp+24]
    002bdec0stp x4, x5, [sp+40]
    002bdec4stp x6, x7, [sp+56]
    002bdec8mov x3, x30
    002bdeccbl runtime.morestack_noctxt.abi0
    002bded0ldp x0, x1, [sp+8]
    002bded4ldp x2, x3, [sp+24]
    002bded8ldp x4, x5, [sp+40]
    002bdedcldp x6, x7, [sp+56]
    002bdee0b 0x2bdbc0
    002bdee4udf 0
    002bdee8udf 0
    002bdeecudf 0
    002bdbc0
    002bdef0
    002bdef0crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P256Point] * c, crypto/ecdsa.PrivateKey * priv, io.Reader rand, struct []uint8 hash)
    002bdef0ldr x16, [x28+16]
    002bdef4sub x17, sp, 256
    002bdef8subs xzr, x17, x16
    002bdefcb.ls 0x2be1e8
    002bdf00sub x20, sp, 384
    002bdf04stp x29, x30, [x20-8]
    002bdf08add sp, x20, 0
    002bdf0csub x29, sp, 8
    002bdf10str x0, [sp+392]
    002bdf14str x1, [sp+400]
    002bdf18str x2, [sp+408]
    002bdf1cstr x3, [sp+416]
    002bdf20str x4, [sp+424]
    002bdf24str x5, [sp+432]
    002bdf28str x6, [sp+440]
    002bdf2cstr x7, [sp+448]
    002bdf30str xzr, [sp+112]
    002bdf34stp xzr, xzr, [sp+120]
    002bdf38stp xzr, xzr, [sp+96]
    002bdf3cadrp x27, 0x78e000
    002bdf40ldrb w3, [x27+1551]
    002bdf44strb w3, [sp+95]
    002bdf48tbnz w3, 0, 0x2bdf50
    002bdf4cb 0x2bdf6c
    002bdf50
    002bdf50loc_2bdf50:
    002bdf50ldr x0, [sp+416]
    002bdf54ldr x1, [sp+424]
    002bdf58bl crypto/internal/fips140only.ApprovedRandomReader
    002bdf5cstrb w0, [sp+94]
    002bdf60eor x2, x0, 1
    002bdf64strb w2, [sp+95]
    002bdf68b 0x2bdf70
    002bdf6c
    002bdf6cloc_2bdf6c:
    002bdf6cb 0x2bdf70
    002bdf70
    002bdf70loc_2bdf70:
    002bdf70ldrb w3, [sp+95]
    002bdf74tbnz w3, 0, 0x2bdf7c
    002bdf78b 0x2bdfc4
    002bdf7c
    002bdf7cloc_2bdf7c:
    002bdf7cadrp x0, 0x411000
    002bdf80add x0, x0, 2093
    002bdf84movz x1, 70
    002bdf88bl errors.New
    002bdf8cstr x0, [sp+280]
    002bdf90str x1, [sp+288]
    002bdf94str xzr, [sp+112]
    002bdf98stp xzr, xzr, [sp+120]
    002bdf9cldr x3, [sp+280]
    002bdfa0ldr x4, [sp+288]
    002bdfa4str x3, [sp+96]
    002bdfa8str x4, [sp+104]
    002bdfacldr x0, [sp+112]
    002bdfb0ldr x1, [sp+120]
    002bdfb4ldr x2, [sp+128]
    002bdfb8ldp x29, x30, [sp-8]
    002bdfbcadd sp, sp, 384
    002bdfc0ret x30
    002bdfc4
    002bdfc4loc_2bdfc4:
    002bdfc4str xzr, [sp+272]
    002bdfc8stp xzr, xzr, [sp+280]
    002bdfccldr x3, [sp+392]
    002bdfd0ldrsb x27, [x3]
    002bdfd4ldr x0, [x3]
    002bdfd8str x0, [sp+232]
    002bdfdcldr x2, [sp+408]
    002bdfe0ldr x1, [sp+400]
    002bdfe4bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]
    002bdfe8str x0, [sp+272]
    002bdfecstr x1, [sp+280]
    002bdff0str x2, [sp+288]
    002bdff4ldr x3, [sp+272]
    002bdff8str x3, [sp+168]
    002bdffcldr x3, [sp+280]
    002be000ldr x4, [sp+288]
    002be004str x3, [sp+360]
    002be008str x4, [sp+368]
    002be00cldr x3, [sp+168]
    002be010str x3, [sp+144]
    002be014ldr x3, [sp+368]
    002be018ldr x4, [sp+360]
    002be01cstr x4, [sp+152]
    002be020str x3, [sp+160]
    002be024cbnz x4, 0x2be02c
    002be028b 0x2be05c
    002be02c
    002be02cloc_2be02c:
    002be02cstr xzr, [sp+112]
    002be030stp xzr, xzr, [sp+120]
    002be034ldr x3, [sp+152]
    002be038ldr x4, [sp+160]
    002be03cstr x3, [sp+96]
    002be040str x4, [sp+104]
    002be044ldr x0, [sp+112]
    002be048ldr x1, [sp+120]
    002be04cldr x2, [sp+128]
    002be050ldp x29, x30, [sp-8]
    002be054add sp, sp, 384
    002be058ret x30
    002be05c
    002be05cloc_2be05c:
    002be05cstr xzr, [sp+264]
    002be060stp xzr, xzr, [sp+280]
    002be064ldr x9, [sp+392]
    002be068ldrsb x27, [x9]
    002be06cldr x0, [x9+8]
    002be070str x0, [sp+224]
    002be074ldr x4, [sp+416]
    002be078ldr x6, [sp+432]
    002be07cldr x3, [sp+144]
    002be080ldr x1, [sp+400]
    002be084ldr x7, [sp+440]
    002be088ldr x5, [sp+424]
    002be08cldr x8, [sp+448]
    002be090adrp x2, 0x41b000
    002be094add x2, x2, 592
    002be098bl crypto/internal/fips140/ecdsa.Sign[go.shape.*crypto/internal/fips140/nistec.P256Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002be09cstr x0, [sp+264]
    002be0a0str x1, [sp+280]
    002be0a4str x2, [sp+288]
    002be0a8ldr x9, [sp+264]
    002be0acstr x9, [sp+352]
    002be0b0ldr x9, [sp+280]
    002be0b4ldr x10, [sp+288]
    002be0b8str x9, [sp+336]
    002be0bcstr x10, [sp+344]
    002be0c0ldr x9, [sp+352]
    002be0c4str x9, [sp+136]
    002be0c8ldr x9, [sp+344]
    002be0ccldr x10, [sp+336]
    002be0d0str x10, [sp+152]
    002be0d4str x9, [sp+160]
    002be0d8cbnz x10, 0x2be0e0
    002be0dcb 0x2be110
    002be0e0
    002be0e0loc_2be0e0:
    002be0e0str xzr, [sp+112]
    002be0e4stp xzr, xzr, [sp+120]
    002be0e8ldr x3, [sp+152]
    002be0ecldr x4, [sp+160]
    002be0f0str x3, [sp+96]
    002be0f4str x4, [sp+104]
    002be0f8ldr x0, [sp+112]
    002be0fcldr x1, [sp+120]
    002be100ldr x2, [sp+128]
    002be104ldp x29, x30, [sp-8]
    002be108add sp, sp, 384
    002be10cret x30
    002be110
    002be110loc_2be110:
    002be110str xzr, [sp+240]
    002be114stp xzr, xzr, [sp+248]
    002be118stp xzr, xzr, [sp+280]
    002be11cldr x6, [sp+136]
    002be120ldrsb x27, [x6]
    002be124ldr x7, [x6]
    002be128ldr x8, [x6+8]
    002be12cldr x6, [x6+16]
    002be130str x7, [sp+200]
    002be134str x8, [sp+208]
    002be138str x6, [sp+216]
    002be13cldr x6, [sp+136]
    002be140ldrsb x27, [x6]
    002be144ldr x3, [x6+24]
    002be148ldr x4, [x6+32]
    002be14cldr x5, [x6+40]
    002be150str x3, [sp+176]
    002be154str x4, [sp+184]
    002be158str x5, [sp+192]
    002be15cldr x0, [sp+200]
    002be160ldr x1, [sp+208]
    002be164ldr x2, [sp+216]
    002be168bl crypto/ecdsa.encodeSignature
    002be16cstr x0, [sp+240]
    002be170str x1, [sp+248]
    002be174str x2, [sp+256]
    002be178str x3, [sp+280]
    002be17cstr x4, [sp+288]
    002be180ldr x6, [sp+240]
    002be184ldr x7, [sp+248]
    002be188ldr x8, [sp+256]
    002be18cstr x6, [sp+312]
    002be190str x7, [sp+320]
    002be194str x8, [sp+328]
    002be198ldr x6, [sp+280]
    002be19cldr x7, [sp+288]
    002be1a0str x6, [sp+296]
    002be1a4str x7, [sp+304]
    002be1a8ldr x6, [sp+312]
    002be1acldr x7, [sp+320]
    002be1b0ldr x8, [sp+328]
    002be1b4str x6, [sp+112]
    002be1b8str x7, [sp+120]
    002be1bcstr x8, [sp+128]
    002be1c0ldr x3, [sp+296]
    002be1c4ldr x4, [sp+304]
    002be1c8str x3, [sp+96]
    002be1ccstr x4, [sp+104]
    002be1d0ldr x0, [sp+112]
    002be1d4ldr x1, [sp+120]
    002be1d8ldr x2, [sp+128]
    002be1dcldp x29, x30, [sp-8]
    002be1e0add sp, sp, 384
    002be1e4ret x30
    002be1e8
    002be1e8loc_2be1e8:
    002be1e8stp x0, x1, [sp+8]
    002be1ecstp x2, x3, [sp+24]
    002be1f0stp x4, x5, [sp+40]
    002be1f4stp x6, x7, [sp+56]
    002be1f8mov x3, x30
    002be1fcbl runtime.morestack_noctxt.abi0
    002be200ldp x0, x1, [sp+8]
    002be204ldp x2, x3, [sp+24]
    002be208ldp x4, x5, [sp+40]
    002be20cldp x6, x7, [sp+56]
    002be210b 0x2bdef0
    002be214udf 0
    002be218udf 0
    002be21cudf 0
    002bdef0
    002be220
    002be220crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]: ; void crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P224Point] * c, crypto/ecdsa.PrivateKey * priv, io.Reader rand, struct []uint8 hash)
    002be220ldr x16, [x28+16]
    002be224sub x17, sp, 256
    002be228subs xzr, x17, x16
    002be22cb.ls 0x2be518
    002be230sub x20, sp, 384
    002be234stp x29, x30, [x20-8]
    002be238add sp, x20, 0
    002be23csub x29, sp, 8
    002be240str x0, [sp+392]
    002be244str x1, [sp+400]
    002be248str x2, [sp+408]
    002be24cstr x3, [sp+416]
    002be250str x4, [sp+424]
    002be254str x5, [sp+432]
    002be258str x6, [sp+440]
    002be25cstr x7, [sp+448]
    002be260str xzr, [sp+112]
    002be264stp xzr, xzr, [sp+120]
    002be268stp xzr, xzr, [sp+96]
    002be26cadrp x27, 0x78d000
    002be270ldrb w3, [x27+1551]
    002be274strb w3, [sp+95]
    002be278tbnz w3, 0, 0x2be280
    002be27cb 0x2be29c
    002be280
    002be280loc_2be280:
    002be280ldr x0, [sp+416]
    002be284ldr x1, [sp+424]
    002be288bl crypto/internal/fips140only.ApprovedRandomReader
    002be28cstrb w0, [sp+94]
    002be290eor x2, x0, 1
    002be294strb w2, [sp+95]
    002be298b 0x2be2a0
    002be29c
    002be29cloc_2be29c:
    002be29cb 0x2be2a0
    002be2a0
    002be2a0loc_2be2a0:
    002be2a0ldrb w3, [sp+95]
    002be2a4tbnz w3, 0, 0x2be2ac
    002be2a8b 0x2be2f4
    002be2ac
    002be2acloc_2be2ac:
    002be2acadrp x0, 0x410000
    002be2b0add x0, x0, 2093
    002be2b4movz x1, 70
    002be2b8bl errors.New
    002be2bcstr x0, [sp+280]
    002be2c0str x1, [sp+288]
    002be2c4str xzr, [sp+112]
    002be2c8stp xzr, xzr, [sp+120]
    002be2ccldr x3, [sp+280]
    002be2d0ldr x4, [sp+288]
    002be2d4str x3, [sp+96]
    002be2d8str x4, [sp+104]
    002be2dcldr x0, [sp+112]
    002be2e0ldr x1, [sp+120]
    002be2e4ldr x2, [sp+128]
    002be2e8ldp x29, x30, [sp-8]
    002be2ecadd sp, sp, 384
    002be2f0ret x30
    002be2f4
    002be2f4loc_2be2f4:
    002be2f4str xzr, [sp+272]
    002be2f8stp xzr, xzr, [sp+280]
    002be2fcldr x3, [sp+392]
    002be300ldrsb x27, [x3]
    002be304ldr x0, [x3]
    002be308str x0, [sp+232]
    002be30cldr x2, [sp+408]
    002be310ldr x1, [sp+400]
    002be314bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002be318str x0, [sp+272]
    002be31cstr x1, [sp+280]
    002be320str x2, [sp+288]
    002be324ldr x3, [sp+272]
    002be328str x3, [sp+168]
    002be32cldr x3, [sp+280]
    002be330ldr x4, [sp+288]
    002be334str x3, [sp+360]
    002be338str x4, [sp+368]
    002be33cldr x3, [sp+168]
    002be340str x3, [sp+144]
    002be344ldr x3, [sp+368]
    002be348ldr x4, [sp+360]
    002be34cstr x4, [sp+152]
    002be350str x3, [sp+160]
    002be354cbnz x4, 0x2be35c
    002be358b 0x2be38c
    002be35c
    002be35cloc_2be35c:
    002be35cstr xzr, [sp+112]
    002be360stp xzr, xzr, [sp+120]
    002be364ldr x3, [sp+152]
    002be368ldr x4, [sp+160]
    002be36cstr x3, [sp+96]
    002be370str x4, [sp+104]
    002be374ldr x0, [sp+112]
    002be378ldr x1, [sp+120]
    002be37cldr x2, [sp+128]
    002be380ldp x29, x30, [sp-8]
    002be384add sp, sp, 384
    002be388ret x30
    002be38c
    002be38cloc_2be38c:
    002be38cstr xzr, [sp+264]
    002be390stp xzr, xzr, [sp+280]
    002be394ldr x9, [sp+392]
    002be398ldrsb x27, [x9]
    002be39cldr x0, [x9+8]
    002be3a0str x0, [sp+224]
    002be3a4ldr x4, [sp+416]
    002be3a8ldr x6, [sp+432]
    002be3acldr x3, [sp+144]
    002be3b0ldr x1, [sp+400]
    002be3b4ldr x7, [sp+440]
    002be3b8ldr x5, [sp+424]
    002be3bcldr x8, [sp+448]
    002be3c0adrp x2, 0x41b000
    002be3c4add x2, x2, 592
    002be3c8bl crypto/internal/fips140/ecdsa.Sign[go.shape.*crypto/internal/fips140/nistec.P224Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002be3ccstr x0, [sp+264]
    002be3d0str x1, [sp+280]
    002be3d4str x2, [sp+288]
    002be3d8ldr x9, [sp+264]
    002be3dcstr x9, [sp+352]
    002be3e0ldr x9, [sp+280]
    002be3e4ldr x10, [sp+288]
    002be3e8str x9, [sp+336]
    002be3ecstr x10, [sp+344]
    002be3f0ldr x9, [sp+352]
    002be3f4str x9, [sp+136]
    002be3f8ldr x9, [sp+344]
    002be3fcldr x10, [sp+336]
    002be400str x10, [sp+152]
    002be404str x9, [sp+160]
    002be408cbnz x10, 0x2be410
    002be40cb 0x2be440
    002be410
    002be410loc_2be410:
    002be410str xzr, [sp+112]
    002be414stp xzr, xzr, [sp+120]
    002be418ldr x3, [sp+152]
    002be41cldr x4, [sp+160]
    002be420str x3, [sp+96]
    002be424str x4, [sp+104]
    002be428ldr x0, [sp+112]
    002be42cldr x1, [sp+120]
    002be430ldr x2, [sp+128]
    002be434ldp x29, x30, [sp-8]
    002be438add sp, sp, 384
    002be43cret x30
    002be440
    002be440loc_2be440:
    002be440str xzr, [sp+240]
    002be444stp xzr, xzr, [sp+248]
    002be448stp xzr, xzr, [sp+280]
    002be44cldr x6, [sp+136]
    002be450ldrsb x27, [x6]
    002be454ldr x7, [x6]
    002be458ldr x8, [x6+8]
    002be45cldr x6, [x6+16]
    002be460str x7, [sp+200]
    002be464str x8, [sp+208]
    002be468str x6, [sp+216]
    002be46cldr x6, [sp+136]
    002be470ldrsb x27, [x6]
    002be474ldr x3, [x6+24]
    002be478ldr x4, [x6+32]
    002be47cldr x5, [x6+40]
    002be480str x3, [sp+176]
    002be484str x4, [sp+184]
    002be488str x5, [sp+192]
    002be48cldr x0, [sp+200]
    002be490ldr x1, [sp+208]
    002be494ldr x2, [sp+216]
    002be498bl crypto/ecdsa.encodeSignature
    002be49cstr x0, [sp+240]
    002be4a0str x1, [sp+248]
    002be4a4str x2, [sp+256]
    002be4a8str x3, [sp+280]
    002be4acstr x4, [sp+288]
    002be4b0ldr x6, [sp+240]
    002be4b4ldr x7, [sp+248]
    002be4b8ldr x8, [sp+256]
    002be4bcstr x6, [sp+312]
    002be4c0str x7, [sp+320]
    002be4c4str x8, [sp+328]
    002be4c8ldr x6, [sp+280]
    002be4ccldr x7, [sp+288]
    002be4d0str x6, [sp+296]
    002be4d4str x7, [sp+304]
    002be4d8ldr x6, [sp+312]
    002be4dcldr x7, [sp+320]
    002be4e0ldr x8, [sp+328]
    002be4e4str x6, [sp+112]
    002be4e8str x7, [sp+120]
    002be4ecstr x8, [sp+128]
    002be4f0ldr x3, [sp+296]
    002be4f4ldr x4, [sp+304]
    002be4f8str x3, [sp+96]
    002be4fcstr x4, [sp+104]
    002be500ldr x0, [sp+112]
    002be504ldr x1, [sp+120]
    002be508ldr x2, [sp+128]
    002be50cldp x29, x30, [sp-8]
    002be510add sp, sp, 384
    002be514ret x30
    002be518
    002be518loc_2be518:
    002be518stp x0, x1, [sp+8]
    002be51cstp x2, x3, [sp+24]
    002be520stp x4, x5, [sp+40]
    002be524stp x6, x7, [sp+56]
    002be528mov x3, x30
    002be52cbl runtime.morestack_noctxt.abi0
    002be530ldp x0, x1, [sp+8]
    002be534ldp x2, x3, [sp+24]
    002be538ldp x4, x5, [sp+40]
    002be53cldp x6, x7, [sp+56]
    002be540b 0x2be220
    002be544udf 0
    002be548udf 0
    002be54cudf 0
    002be220
    002be550
    002be550crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point]: ; void crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point](uintptr[2] * dict, crypto/elliptic.Curve curve, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P521Point] * c, io.Reader rand)
    002be550ldr x16, [x28+16]
    002be554sub x17, sp, 64
    002be558subs xzr, x17, x16
    002be55cb.ls 0x2be6fc
    002be560str x30, [sp-192]!
    002be564stur x29, [sp-8]
    002be568sub x29, sp, 8
    002be56cstr x0, [sp+200]
    002be570str x1, [sp+208]
    002be574str x2, [sp+216]
    002be578str x3, [sp+224]
    002be57cstr x4, [sp+232]
    002be580str x5, [sp+240]
    002be584str xzr, [sp+64]
    002be588stp xzr, xzr, [sp+48]
    002be58cadrp x27, 0x78d000
    002be590ldrb w4, [x27+1551]
    002be594strb w4, [sp+47]
    002be598tbnz w4, 0, 0x2be5a0
    002be59cb 0x2be5bc
    002be5a0
    002be5a0loc_2be5a0:
    002be5a0ldr x0, [sp+232]
    002be5a4ldr x1, [sp+240]
    002be5a8bl crypto/internal/fips140only.ApprovedRandomReader
    002be5acstrb w0, [sp+46]
    002be5b0eor x2, x0, 1
    002be5b4strb w2, [sp+47]
    002be5b8b 0x2be5c0
    002be5bc
    002be5bcloc_2be5bc:
    002be5bcb 0x2be5c0
    002be5c0
    002be5c0loc_2be5c0:
    002be5c0ldrb w4, [sp+47]
    002be5c4tbnz w4, 0, 0x2be5cc
    002be5c8b 0x2be608
    002be5cc
    002be5ccloc_2be5cc:
    002be5ccadrp x0, 0x410000
    002be5d0add x0, x0, 2093
    002be5d4movz x1, 70
    002be5d8bl errors.New
    002be5dcstr x0, [sp+144]
    002be5e0str x1, [sp+152]
    002be5e4str xzr, [sp+64]
    002be5e8ldr x1, [sp+144]
    002be5ecldr x2, [sp+152]
    002be5f0str x1, [sp+48]
    002be5f4str x2, [sp+56]
    002be5f8ldr x0, [sp+64]
    002be5fcldur x29, [sp-8]
    002be600ldr x30, [sp], 192
    002be604ret x30
    002be608
    002be608loc_2be608:
    002be608str xzr, [sp+136]
    002be60cstp xzr, xzr, [sp+144]
    002be610ldr x4, [sp+200]
    002be614ldrsb x27, [x4]
    002be618ldr x0, [x4]
    002be61cstr x0, [sp+120]
    002be620ldr x2, [sp+232]
    002be624ldr x1, [sp+224]
    002be628ldr x3, [sp+240]
    002be62cbl crypto/internal/fips140/ecdsa.GenerateKey[go.shape.*crypto/internal/fips140/nistec.P521Point]
    002be630str x0, [sp+136]
    002be634str x1, [sp+144]
    002be638str x2, [sp+152]
    002be63cldr x4, [sp+136]
    002be640str x4, [sp+112]
    002be644ldr x4, [sp+144]
    002be648ldr x5, [sp+152]
    002be64cstr x4, [sp+96]
    002be650str x5, [sp+104]
    002be654ldr x4, [sp+112]
    002be658str x4, [sp+72]
    002be65cldr x4, [sp+104]
    002be660ldr x5, [sp+96]
    002be664str x5, [sp+80]
    002be668str x4, [sp+88]
    002be66ccbnz x5, 0x2be674
    002be670b 0x2be698
    002be674
    002be674loc_2be674:
    002be674str xzr, [sp+64]
    002be678ldr x1, [sp+80]
    002be67cldr x2, [sp+88]
    002be680str x1, [sp+48]
    002be684str x2, [sp+56]
    002be688ldr x0, [sp+64]
    002be68cldur x29, [sp-8]
    002be690ldr x30, [sp], 192
    002be694ret x30
    002be698
    002be698loc_2be698:
    002be698str xzr, [sp+128]
    002be69cstp xzr, xzr, [sp+144]
    002be6a0ldr x0, [sp+208]
    002be6a4ldr x2, [sp+72]
    002be6a8ldr x1, [sp+216]
    002be6acbl crypto/ecdsa.privateKeyFromFIPS
    002be6b0str x0, [sp+128]
    002be6b4str x1, [sp+144]
    002be6b8str x2, [sp+152]
    002be6bcldr x3, [sp+128]
    002be6c0str x3, [sp+176]
    002be6c4ldr x3, [sp+152]
    002be6c8ldr x4, [sp+144]
    002be6ccstr x4, [sp+160]
    002be6d0str x3, [sp+168]
    002be6d4ldr x3, [sp+176]
    002be6d8str x3, [sp+64]
    002be6dcldr x1, [sp+160]
    002be6e0ldr x2, [sp+168]
    002be6e4str x1, [sp+48]
    002be6e8str x2, [sp+56]
    002be6ecldr x0, [sp+64]
    002be6f0ldur x29, [sp-8]
    002be6f4ldr x30, [sp], 192
    002be6f8ret x30
    002be6fc
    002be6fcloc_2be6fc:
    002be6fcstp x0, x1, [sp+8]
    002be700stp x2, x3, [sp+24]
    002be704stp x4, x5, [sp+40]
    002be708mov x3, x30
    002be70cbl runtime.morestack_noctxt.abi0
    002be710ldp x0, x1, [sp+8]
    002be714ldp x2, x3, [sp+24]
    002be718ldp x4, x5, [sp+40]
    002be71cb 0x2be550
    002be550
    002be720
    002be720crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]: ; void crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point](uintptr[2] * dict, crypto/elliptic.Curve curve, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P384Point] * c, io.Reader rand)
    002be720ldr x16, [x28+16]
    002be724sub x17, sp, 64
    002be728subs xzr, x17, x16
    002be72cb.ls 0x2be8cc
    002be730str x30, [sp-192]!
    002be734stur x29, [sp-8]
    002be738sub x29, sp, 8
    002be73cstr x0, [sp+200]
    002be740str x1, [sp+208]
    002be744str x2, [sp+216]
    002be748str x3, [sp+224]
    002be74cstr x4, [sp+232]
    002be750str x5, [sp+240]
    002be754str xzr, [sp+64]
    002be758stp xzr, xzr, [sp+48]
    002be75cadrp x27, 0x78d000
    002be760ldrb w4, [x27+1551]
    002be764strb w4, [sp+47]
    002be768tbnz w4, 0, 0x2be770
    002be76cb 0x2be78c
    002be770
    002be770loc_2be770:
    002be770ldr x0, [sp+232]
    002be774ldr x1, [sp+240]
    002be778bl crypto/internal/fips140only.ApprovedRandomReader
    002be77cstrb w0, [sp+46]
    002be780eor x2, x0, 1
    002be784strb w2, [sp+47]
    002be788b 0x2be790
    002be78c
    002be78cloc_2be78c:
    002be78cb 0x2be790
    002be790
    002be790loc_2be790:
    002be790ldrb w4, [sp+47]
    002be794tbnz w4, 0, 0x2be79c
    002be798b 0x2be7d8
    002be79c
    002be79cloc_2be79c:
    002be79cadrp x0, 0x410000
    002be7a0add x0, x0, 2093
    002be7a4movz x1, 70
    002be7a8bl errors.New
    002be7acstr x0, [sp+144]
    002be7b0str x1, [sp+152]
    002be7b4str xzr, [sp+64]
    002be7b8ldr x1, [sp+144]
    002be7bcldr x2, [sp+152]
    002be7c0str x1, [sp+48]
    002be7c4str x2, [sp+56]
    002be7c8ldr x0, [sp+64]
    002be7ccldur x29, [sp-8]
    002be7d0ldr x30, [sp], 192
    002be7d4ret x30
    002be7d8
    002be7d8loc_2be7d8:
    002be7d8str xzr, [sp+136]
    002be7dcstp xzr, xzr, [sp+144]
    002be7e0ldr x4, [sp+200]
    002be7e4ldrsb x27, [x4]
    002be7e8ldr x0, [x4]
    002be7ecstr x0, [sp+120]
    002be7f0ldr x2, [sp+232]
    002be7f4ldr x1, [sp+224]
    002be7f8ldr x3, [sp+240]
    002be7fcbl crypto/internal/fips140/ecdsa.GenerateKey[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002be800str x0, [sp+136]
    002be804str x1, [sp+144]
    002be808str x2, [sp+152]
    002be80cldr x4, [sp+136]
    002be810str x4, [sp+112]
    002be814ldr x4, [sp+144]
    002be818ldr x5, [sp+152]
    002be81cstr x4, [sp+96]
    002be820str x5, [sp+104]
    002be824ldr x4, [sp+112]
    002be828str x4, [sp+72]
    002be82cldr x4, [sp+104]
    002be830ldr x5, [sp+96]
    002be834str x5, [sp+80]
    002be838str x4, [sp+88]
    002be83ccbnz x5, 0x2be844
    002be840b 0x2be868
    002be844
    002be844loc_2be844:
    002be844str xzr, [sp+64]
    002be848ldr x1, [sp+80]
    002be84cldr x2, [sp+88]
    002be850str x1, [sp+48]
    002be854str x2, [sp+56]
    002be858ldr x0, [sp+64]
    002be85cldur x29, [sp-8]
    002be860ldr x30, [sp], 192
    002be864ret x30
    002be868
    002be868loc_2be868:
    002be868str xzr, [sp+128]
    002be86cstp xzr, xzr, [sp+144]
    002be870ldr x0, [sp+208]
    002be874ldr x2, [sp+72]
    002be878ldr x1, [sp+216]
    002be87cbl crypto/ecdsa.privateKeyFromFIPS
    002be880str x0, [sp+128]
    002be884str x1, [sp+144]
    002be888str x2, [sp+152]
    002be88cldr x3, [sp+128]
    002be890str x3, [sp+176]
    002be894ldr x3, [sp+152]
    002be898ldr x4, [sp+144]
    002be89cstr x4, [sp+160]
    002be8a0str x3, [sp+168]
    002be8a4ldr x3, [sp+176]
    002be8a8str x3, [sp+64]
    002be8acldr x1, [sp+160]
    002be8b0ldr x2, [sp+168]
    002be8b4str x1, [sp+48]
    002be8b8str x2, [sp+56]
    002be8bcldr x0, [sp+64]
    002be8c0ldur x29, [sp-8]
    002be8c4ldr x30, [sp], 192
    002be8c8ret x30
    002be8cc
    002be8ccloc_2be8cc:
    002be8ccstp x0, x1, [sp+8]
    002be8d0stp x2, x3, [sp+24]
    002be8d4stp x4, x5, [sp+40]
    002be8d8mov x3, x30
    002be8dcbl runtime.morestack_noctxt.abi0
    002be8e0ldp x0, x1, [sp+8]
    002be8e4ldp x2, x3, [sp+24]
    002be8e8ldp x4, x5, [sp+40]
    002be8ecb 0x2be720
    002be720