File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    002bb450
    002bb450crypto/ecdsa.verifyFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]: ; void crypto/ecdsa.verifyFIPS[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.PublicKey * pub, struct []uint8 hash, struct []uint8 sig)
    002bb450ldr x16, [x28+16]
    002bb454sub x17, sp, 272
    002bb458subs xzr, x17, x16
    002bb45cb.ls 0x2bb6f4
    002bb460sub x20, sp, 400
    002bb464stp x29, x30, [x20-8]
    002bb468add sp, x20, 0
    002bb46csub x29, sp, 8
    002bb470str x0, [sp+408]
    002bb474str x1, [sp+416]
    002bb478str x2, [sp+424]
    002bb47cstr x3, [sp+432]
    002bb480str x4, [sp+440]
    002bb484str x5, [sp+448]
    002bb488str x6, [sp+456]
    002bb48cstr x7, [sp+464]
    002bb490str x8, [sp+472]
    002bb494strb wzr, [sp+71]
    002bb498str xzr, [sp+304]
    002bb49cstp xzr, xzr, [sp+312]
    002bb4a0str xzr, [sp+280]
    002bb4a4stp xzr, xzr, [sp+288]
    002bb4a8stp xzr, xzr, [sp+264]
    002bb4acldr x0, [sp+456]
    002bb4b0ldr x1, [sp+464]
    002bb4b4ldr x2, [sp+472]
    002bb4b8bl crypto/ecdsa.parseSignature
    002bb4bcstr x0, [sp+304]
    002bb4c0str x1, [sp+312]
    002bb4c4str x2, [sp+320]
    002bb4c8str x3, [sp+280]
    002bb4ccstr x4, [sp+288]
    002bb4d0str x5, [sp+296]
    002bb4d4str x6, [sp+264]
    002bb4d8str x7, [sp+272]
    002bb4dcldr x3, [sp+312]
    002bb4e0ldr x4, [sp+320]
    002bb4e4ldr x5, [sp+304]
    002bb4e8str x5, [sp+160]
    002bb4ecstr x3, [sp+168]
    002bb4f0str x4, [sp+176]
    002bb4f4ldr x3, [sp+280]
    002bb4f8ldr x4, [sp+288]
    002bb4fcldr x5, [sp+296]
    002bb500str x3, [sp+368]
    002bb504str x4, [sp+376]
    002bb508str x5, [sp+384]
    002bb50cldr x3, [sp+264]
    002bb510ldr x4, [sp+272]
    002bb514str x3, [sp+352]
    002bb518str x4, [sp+360]
    002bb51cldr x3, [sp+160]
    002bb520ldr x4, [sp+168]
    002bb524ldr x5, [sp+176]
    002bb528str x3, [sp+96]
    002bb52cstr x4, [sp+104]
    002bb530str x5, [sp+112]
    002bb534ldr x3, [sp+368]
    002bb538ldr x4, [sp+376]
    002bb53cldr x5, [sp+384]
    002bb540str x3, [sp+72]
    002bb544str x4, [sp+80]
    002bb548str x5, [sp+88]
    002bb54cldr x3, [sp+360]
    002bb550ldr x4, [sp+352]
    002bb554str x4, [sp+144]
    002bb558str x3, [sp+152]
    002bb55ccbnz x4, 0x2bb564
    002bb560b 0x2bb578
    002bb564
    002bb564loc_2bb564:
    002bb564strb wzr, [sp+71]
    002bb568mov x0, xzr
    002bb56cldp x29, x30, [sp-8]
    002bb570add sp, sp, 400
    002bb574ret x30
    002bb578
    002bb578loc_2bb578:
    002bb578str xzr, [sp+256]
    002bb57cstp xzr, xzr, [sp+264]
    002bb580ldr x3, [sp+408]
    002bb584ldrsb x27, [x3]
    002bb588ldr x0, [x3]
    002bb58cstr x0, [sp+248]
    002bb590ldr x2, [sp+424]
    002bb594ldr x1, [sp+416]
    002bb598bl crypto/ecdsa.publicKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002bb59cstr x0, [sp+256]
    002bb5a0str x1, [sp+264]
    002bb5a4str x2, [sp+272]
    002bb5a8ldr x3, [sp+256]
    002bb5acstr x3, [sp+344]
    002bb5b0ldr x3, [sp+264]
    002bb5b4ldr x4, [sp+272]
    002bb5b8str x3, [sp+328]
    002bb5bcstr x4, [sp+336]
    002bb5c0ldr x3, [sp+344]
    002bb5c4str x3, [sp+120]
    002bb5c8ldr x3, [sp+336]
    002bb5ccldr x4, [sp+328]
    002bb5d0str x4, [sp+144]
    002bb5d4str x3, [sp+152]
    002bb5d8cbnz x4, 0x2bb5e0
    002bb5dcb 0x2bb5f4
    002bb5e0
    002bb5e0loc_2bb5e0:
    002bb5e0strb wzr, [sp+71]
    002bb5e4mov x0, xzr
    002bb5e8ldp x29, x30, [sp-8]
    002bb5ecadd sp, sp, 400
    002bb5f0ret x30
    002bb5f4
    002bb5f4loc_2bb5f4:
    002bb5f4stp xzr, xzr, [sp+192]
    002bb5f8stp xzr, xzr, [sp+208]
    002bb5fcstp xzr, xzr, [sp+224]
    002bb600add x7, sp, 192
    002bb604str x7, [sp+240]
    002bb608ldrsb x27, [x7]
    002bb60cldr x8, [sp+96]
    002bb610ldr x9, [sp+104]
    002bb614ldr x10, [sp+112]
    002bb618str x9, [x7+8]
    002bb61cstr x10, [x7+16]
    002bb620adrp x27, 0x790000
    002bb624ldr w9, [x27+3056]
    002bb628cbz w9, 0x2bb630
    002bb62cb 0x2bb634
    002bb630
    002bb630loc_2bb630:
    002bb630b 0x2bb648
    002bb634
    002bb634loc_2bb634:
    002bb634bl runtime.gcWriteBarrier2
    002bb638str x8, [x25]
    002bb63cldr x9, [x7]
    002bb640str x9, [x25+8]
    002bb644b 0x2bb648
    002bb648
    002bb648loc_2bb648:
    002bb648str x8, [x7]
    002bb64cldrsb x27, [x7]
    002bb650ldr x8, [sp+72]
    002bb654ldr x9, [sp+80]
    002bb658ldr x10, [sp+88]
    002bb65cstr x9, [x7+32]
    002bb660str x10, [x7+40]
    002bb664adrp x27, 0x790000
    002bb668ldr w9, [x27+3056]
    002bb66ccbz w9, 0x2bb674
    002bb670b 0x2bb678
    002bb674
    002bb674loc_2bb674:
    002bb674b 0x2bb68c
    002bb678
    002bb678loc_2bb678:
    002bb678bl runtime.gcWriteBarrier2
    002bb67cstr x8, [x25]
    002bb680ldr x9, [x7+24]
    002bb684str x9, [x25+8]
    002bb688b 0x2bb68c
    002bb68c
    002bb68cloc_2bb68c:
    002bb68cstr x8, [x7+24]
    002bb690ldr x7, [sp+408]
    002bb694ldrsb x27, [x7]
    002bb698ldr x0, [x7+8]
    002bb69cstr x0, [sp+184]
    002bb6a0ldr x3, [sp+432]
    002bb6a4ldr x2, [sp+120]
    002bb6a8ldr x1, [sp+416]
    002bb6acldr x4, [sp+440]
    002bb6b0ldr x5, [sp+448]
    002bb6b4ldr x6, [sp+240]
    002bb6b8bl crypto/internal/fips140/ecdsa.Verify[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002bb6bcstr x0, [sp+128]
    002bb6c0str x1, [sp+136]
    002bb6c4cbnz x0, 0x2bb6cc
    002bb6c8b 0x2bb6e0
    002bb6cc
    002bb6ccloc_2bb6cc:
    002bb6ccstrb wzr, [sp+71]
    002bb6d0mov x0, xzr
    002bb6d4ldp x29, x30, [sp-8]
    002bb6d8add sp, sp, 400
    002bb6dcret x30
    002bb6e0
    002bb6e0loc_2bb6e0:
    002bb6e0orr x0, xzr, 1
    002bb6e4strb w0, [sp+71]
    002bb6e8ldp x29, x30, [sp-8]
    002bb6ecadd sp, sp, 400
    002bb6f0ret x30
    002bb6f4
    002bb6f4loc_2bb6f4:
    002bb6f4stp x0, x1, [sp+8]
    002bb6f8stp x2, x3, [sp+24]
    002bb6fcstp x4, x5, [sp+40]
    002bb700stp x6, x7, [sp+56]
    002bb704str x8, [sp+72]
    002bb708mov x3, x30
    002bb70cbl runtime.morestack_noctxt.abi0
    002bb710ldp x0, x1, [sp+8]
    002bb714ldp x2, x3, [sp+24]
    002bb718ldp x4, x5, [sp+40]
    002bb71cldp x6, x7, [sp+56]
    002bb720ldr x8, [sp+72]
    002bb724b 0x2bb450
    002bb728udf 0
    002bb72cudf 0
    002bb450
    002bb730
    002bb730crypto/ecdsa.publicKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]: ; void crypto/ecdsa.publicKeyToFIPS[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.PublicKey * pub)
    002bb730ldr x16, [x28+16]
    002bb734sub x17, sp, 144
    002bb738subs xzr, x17, x16
    002bb73cb.ls 0x2bb8c0
    002bb740sub x20, sp, 272
    002bb744stp x29, x30, [x20-8]
    002bb748add sp, x20, 0
    002bb74csub x29, sp, 8
    002bb750str x0, [sp+280]
    002bb754str x1, [sp+288]
    002bb758str x2, [sp+296]
    002bb75cstr xzr, [sp+64]
    002bb760stp xzr, xzr, [sp+48]
    002bb764str xzr, [sp+224]
    002bb768stp xzr, xzr, [sp+232]
    002bb76cstp xzr, xzr, [sp+208]
    002bb770ldr x4, [sp+296]
    002bb774ldrsb x27, [x4]
    002bb778ldr x5, [x4]
    002bb77cldr x4, [x4+8]
    002bb780str x5, [sp+184]
    002bb784str x4, [sp+192]
    002bb788ldr x4, [sp+296]
    002bb78cldrsb x27, [x4]
    002bb790ldr x4, [x4+16]
    002bb794str x4, [sp+176]
    002bb798ldr x4, [sp+296]
    002bb79cldrsb x27, [x4]
    002bb7a0ldr x3, [x4+24]
    002bb7a4str x3, [sp+168]
    002bb7a8ldr x0, [sp+184]
    002bb7acldr x1, [sp+192]
    002bb7b0ldr x2, [sp+176]
    002bb7b4bl crypto/ecdsa.pointFromAffine
    002bb7b8str x0, [sp+224]
    002bb7bcstr x1, [sp+232]
    002bb7c0str x2, [sp+240]
    002bb7c4str x3, [sp+208]
    002bb7c8str x4, [sp+216]
    002bb7ccldr x4, [sp+224]
    002bb7d0ldr x5, [sp+232]
    002bb7d4ldr x6, [sp+240]
    002bb7d8str x4, [sp+136]
    002bb7dcstr x5, [sp+144]
    002bb7e0str x6, [sp+152]
    002bb7e4ldr x4, [sp+208]
    002bb7e8ldr x5, [sp+216]
    002bb7ecstr x4, [sp+120]
    002bb7f0str x5, [sp+128]
    002bb7f4ldr x4, [sp+136]
    002bb7f8ldr x5, [sp+144]
    002bb7fcldr x6, [sp+152]
    002bb800str x4, [sp+88]
    002bb804str x5, [sp+96]
    002bb808str x6, [sp+104]
    002bb80cldr x4, [sp+128]
    002bb810ldr x5, [sp+120]
    002bb814str x5, [sp+72]
    002bb818str x4, [sp+80]
    002bb81ccbnz x5, 0x2bb824
    002bb820b 0x2bb848
    002bb824
    002bb824loc_2bb824:
    002bb824str xzr, [sp+64]
    002bb828ldr x1, [sp+72]
    002bb82cldr x2, [sp+80]
    002bb830str x1, [sp+48]
    002bb834str x2, [sp+56]
    002bb838ldr x0, [sp+64]
    002bb83cldp x29, x30, [sp-8]
    002bb840add sp, sp, 272
    002bb844ret x30
    002bb848
    002bb848loc_2bb848:
    002bb848str xzr, [sp+200]
    002bb84cstp xzr, xzr, [sp+208]
    002bb850ldr x5, [sp+280]
    002bb854ldrsb x27, [x5]
    002bb858ldr x0, [x5]
    002bb85cstr x0, [sp+160]
    002bb860ldr x2, [sp+88]
    002bb864ldr x1, [sp+288]
    002bb868ldr x3, [sp+96]
    002bb86cldr x4, [sp+104]
    002bb870bl crypto/internal/fips140/ecdsa.NewPublicKey[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002bb874str x0, [sp+200]
    002bb878str x1, [sp+208]
    002bb87cstr x2, [sp+216]
    002bb880ldr x5, [sp+200]
    002bb884str x5, [sp+112]
    002bb888ldr x5, [sp+208]
    002bb88cldr x6, [sp+216]
    002bb890str x5, [sp+248]
    002bb894str x6, [sp+256]
    002bb898ldr x5, [sp+112]
    002bb89cstr x5, [sp+64]
    002bb8a0ldr x1, [sp+248]
    002bb8a4ldr x2, [sp+256]
    002bb8a8str x1, [sp+48]
    002bb8acstr x2, [sp+56]
    002bb8b0ldr x0, [sp+64]
    002bb8b4ldp x29, x30, [sp-8]
    002bb8b8add sp, sp, 272
    002bb8bcret x30
    002bb8c0
    002bb8c0loc_2bb8c0:
    002bb8c0stp x0, x1, [sp+8]
    002bb8c4str x2, [sp+24]
    002bb8c8mov x3, x30
    002bb8ccbl runtime.morestack_noctxt.abi0
    002bb8d0ldp x0, x1, [sp+8]
    002bb8d4ldr x2, [sp+24]
    002bb8d8b 0x2bb730
    002bb8dcudf 0
    002bb730
    002bb8e0
    002bb8e0crypto/ecdsa.verifyFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/ecdsa.verifyFIPS[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.PublicKey * pub, struct []uint8 hash, struct []uint8 sig)
    002bb8e0ldr x16, [x28+16]
    002bb8e4sub x17, sp, 272
    002bb8e8subs xzr, x17, x16
    002bb8ecb.ls 0x2bbb84
    002bb8f0sub x20, sp, 400
    002bb8f4stp x29, x30, [x20-8]
    002bb8f8add sp, x20, 0
    002bb8fcsub x29, sp, 8
    002bb900str x0, [sp+408]
    002bb904str x1, [sp+416]
    002bb908str x2, [sp+424]
    002bb90cstr x3, [sp+432]
    002bb910str x4, [sp+440]
    002bb914str x5, [sp+448]
    002bb918str x6, [sp+456]
    002bb91cstr x7, [sp+464]
    002bb920str x8, [sp+472]
    002bb924strb wzr, [sp+71]
    002bb928str xzr, [sp+304]
    002bb92cstp xzr, xzr, [sp+312]
    002bb930str xzr, [sp+280]
    002bb934stp xzr, xzr, [sp+288]
    002bb938stp xzr, xzr, [sp+264]
    002bb93cldr x0, [sp+456]
    002bb940ldr x1, [sp+464]
    002bb944ldr x2, [sp+472]
    002bb948bl crypto/ecdsa.parseSignature
    002bb94cstr x0, [sp+304]
    002bb950str x1, [sp+312]
    002bb954str x2, [sp+320]
    002bb958str x3, [sp+280]
    002bb95cstr x4, [sp+288]
    002bb960str x5, [sp+296]
    002bb964str x6, [sp+264]
    002bb968str x7, [sp+272]
    002bb96cldr x3, [sp+312]
    002bb970ldr x4, [sp+320]
    002bb974ldr x5, [sp+304]
    002bb978str x5, [sp+160]
    002bb97cstr x3, [sp+168]
    002bb980str x4, [sp+176]
    002bb984ldr x3, [sp+280]
    002bb988ldr x4, [sp+288]
    002bb98cldr x5, [sp+296]
    002bb990str x3, [sp+368]
    002bb994str x4, [sp+376]
    002bb998str x5, [sp+384]
    002bb99cldr x3, [sp+264]
    002bb9a0ldr x4, [sp+272]
    002bb9a4str x3, [sp+352]
    002bb9a8str x4, [sp+360]
    002bb9acldr x3, [sp+160]
    002bb9b0ldr x4, [sp+168]
    002bb9b4ldr x5, [sp+176]
    002bb9b8str x3, [sp+96]
    002bb9bcstr x4, [sp+104]
    002bb9c0str x5, [sp+112]
    002bb9c4ldr x3, [sp+368]
    002bb9c8ldr x4, [sp+376]
    002bb9ccldr x5, [sp+384]
    002bb9d0str x3, [sp+72]
    002bb9d4str x4, [sp+80]
    002bb9d8str x5, [sp+88]
    002bb9dcldr x3, [sp+360]
    002bb9e0ldr x4, [sp+352]
    002bb9e4str x4, [sp+144]
    002bb9e8str x3, [sp+152]
    002bb9eccbnz x4, 0x2bb9f4
    002bb9f0b 0x2bba08
    002bb9f4
    002bb9f4loc_2bb9f4:
    002bb9f4strb wzr, [sp+71]
    002bb9f8mov x0, xzr
    002bb9fcldp x29, x30, [sp-8]
    002bba00add sp, sp, 400
    002bba04ret x30
    002bba08
    002bba08loc_2bba08:
    002bba08str xzr, [sp+256]
    002bba0cstp xzr, xzr, [sp+264]
    002bba10ldr x3, [sp+408]
    002bba14ldrsb x27, [x3]
    002bba18ldr x0, [x3]
    002bba1cstr x0, [sp+248]
    002bba20ldr x2, [sp+424]
    002bba24ldr x1, [sp+416]
    002bba28bl crypto/ecdsa.publicKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]
    002bba2cstr x0, [sp+256]
    002bba30str x1, [sp+264]
    002bba34str x2, [sp+272]
    002bba38ldr x3, [sp+256]
    002bba3cstr x3, [sp+344]
    002bba40ldr x3, [sp+264]
    002bba44ldr x4, [sp+272]
    002bba48str x3, [sp+328]
    002bba4cstr x4, [sp+336]
    002bba50ldr x3, [sp+344]
    002bba54str x3, [sp+120]
    002bba58ldr x3, [sp+336]
    002bba5cldr x4, [sp+328]
    002bba60str x4, [sp+144]
    002bba64str x3, [sp+152]
    002bba68cbnz x4, 0x2bba70
    002bba6cb 0x2bba84
    002bba70
    002bba70loc_2bba70:
    002bba70strb wzr, [sp+71]
    002bba74mov x0, xzr
    002bba78ldp x29, x30, [sp-8]
    002bba7cadd sp, sp, 400
    002bba80ret x30
    002bba84
    002bba84loc_2bba84:
    002bba84stp xzr, xzr, [sp+192]
    002bba88stp xzr, xzr, [sp+208]
    002bba8cstp xzr, xzr, [sp+224]
    002bba90add x7, sp, 192
    002bba94str x7, [sp+240]
    002bba98ldrsb x27, [x7]
    002bba9cldr x8, [sp+96]
    002bbaa0ldr x9, [sp+104]
    002bbaa4ldr x10, [sp+112]
    002bbaa8str x9, [x7+8]
    002bbaacstr x10, [x7+16]
    002bbab0adrp x27, 0x790000
    002bbab4ldr w9, [x27+3056]
    002bbab8cbz w9, 0x2bbac0
    002bbabcb 0x2bbac4
    002bbac0
    002bbac0loc_2bbac0:
    002bbac0b 0x2bbad8
    002bbac4
    002bbac4loc_2bbac4:
    002bbac4bl runtime.gcWriteBarrier2
    002bbac8str x8, [x25]
    002bbaccldr x9, [x7]
    002bbad0str x9, [x25+8]
    002bbad4b 0x2bbad8
    002bbad8
    002bbad8loc_2bbad8:
    002bbad8str x8, [x7]
    002bbadcldrsb x27, [x7]
    002bbae0ldr x8, [sp+72]
    002bbae4ldr x9, [sp+80]
    002bbae8ldr x10, [sp+88]
    002bbaecstr x9, [x7+32]
    002bbaf0str x10, [x7+40]
    002bbaf4adrp x27, 0x790000
    002bbaf8ldr w9, [x27+3056]
    002bbafccbz w9, 0x2bbb04
    002bbb00b 0x2bbb08
    002bbb04
    002bbb04loc_2bbb04:
    002bbb04b 0x2bbb1c
    002bbb08
    002bbb08loc_2bbb08:
    002bbb08bl runtime.gcWriteBarrier2
    002bbb0cstr x8, [x25]
    002bbb10ldr x9, [x7+24]
    002bbb14str x9, [x25+8]
    002bbb18b 0x2bbb1c
    002bbb1c
    002bbb1cloc_2bbb1c:
    002bbb1cstr x8, [x7+24]
    002bbb20ldr x7, [sp+408]
    002bbb24ldrsb x27, [x7]
    002bbb28ldr x0, [x7+8]
    002bbb2cstr x0, [sp+184]
    002bbb30ldr x3, [sp+432]
    002bbb34ldr x2, [sp+120]
    002bbb38ldr x1, [sp+416]
    002bbb3cldr x4, [sp+440]
    002bbb40ldr x5, [sp+448]
    002bbb44ldr x6, [sp+240]
    002bbb48bl crypto/internal/fips140/ecdsa.Verify[go.shape.*crypto/internal/fips140/nistec.P256Point]
    002bbb4cstr x0, [sp+128]
    002bbb50str x1, [sp+136]
    002bbb54cbnz x0, 0x2bbb5c
    002bbb58b 0x2bbb70
    002bbb5c
    002bbb5cloc_2bbb5c:
    002bbb5cstrb wzr, [sp+71]
    002bbb60mov x0, xzr
    002bbb64ldp x29, x30, [sp-8]
    002bbb68add sp, sp, 400
    002bbb6cret x30
    002bbb70
    002bbb70loc_2bbb70:
    002bbb70orr x0, xzr, 1
    002bbb74strb w0, [sp+71]
    002bbb78ldp x29, x30, [sp-8]
    002bbb7cadd sp, sp, 400
    002bbb80ret x30
    002bbb84
    002bbb84loc_2bbb84:
    002bbb84stp x0, x1, [sp+8]
    002bbb88stp x2, x3, [sp+24]
    002bbb8cstp x4, x5, [sp+40]
    002bbb90stp x6, x7, [sp+56]
    002bbb94str x8, [sp+72]
    002bbb98mov x3, x30
    002bbb9cbl runtime.morestack_noctxt.abi0
    002bbba0ldp x0, x1, [sp+8]
    002bbba4ldp x2, x3, [sp+24]
    002bbba8ldp x4, x5, [sp+40]
    002bbbacldp x6, x7, [sp+56]
    002bbbb0ldr x8, [sp+72]
    002bbbb4b 0x2bb8e0
    002bbbb8udf 0
    002bbbbcudf 0
    002bb8e0
    002bbbc0
    002bbbc0crypto/ecdsa.publicKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/ecdsa.publicKeyToFIPS[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.PublicKey * pub)
    002bbbc0ldr x16, [x28+16]
    002bbbc4sub x17, sp, 144
    002bbbc8subs xzr, x17, x16
    002bbbccb.ls 0x2bbd50
    002bbbd0sub x20, sp, 272
    002bbbd4stp x29, x30, [x20-8]
    002bbbd8add sp, x20, 0
    002bbbdcsub x29, sp, 8
    002bbbe0str x0, [sp+280]
    002bbbe4str x1, [sp+288]
    002bbbe8str x2, [sp+296]
    002bbbecstr xzr, [sp+64]
    002bbbf0stp xzr, xzr, [sp+48]
    002bbbf4str xzr, [sp+224]
    002bbbf8stp xzr, xzr, [sp+232]
    002bbbfcstp xzr, xzr, [sp+208]
    002bbc00ldr x4, [sp+296]
    002bbc04ldrsb x27, [x4]
    002bbc08ldr x5, [x4]
    002bbc0cldr x4, [x4+8]
    002bbc10str x5, [sp+184]
    002bbc14str x4, [sp+192]
    002bbc18ldr x4, [sp+296]
    002bbc1cldrsb x27, [x4]
    002bbc20ldr x4, [x4+16]
    002bbc24str x4, [sp+176]
    002bbc28ldr x4, [sp+296]
    002bbc2cldrsb x27, [x4]
    002bbc30ldr x3, [x4+24]
    002bbc34str x3, [sp+168]
    002bbc38ldr x0, [sp+184]
    002bbc3cldr x1, [sp+192]
    002bbc40ldr x2, [sp+176]
    002bbc44bl crypto/ecdsa.pointFromAffine
    002bbc48str x0, [sp+224]
    002bbc4cstr x1, [sp+232]
    002bbc50str x2, [sp+240]
    002bbc54str x3, [sp+208]
    002bbc58str x4, [sp+216]
    002bbc5cldr x4, [sp+224]
    002bbc60ldr x5, [sp+232]
    002bbc64ldr x6, [sp+240]
    002bbc68str x4, [sp+136]
    002bbc6cstr x5, [sp+144]
    002bbc70str x6, [sp+152]
    002bbc74ldr x4, [sp+208]
    002bbc78ldr x5, [sp+216]
    002bbc7cstr x4, [sp+120]
    002bbc80str x5, [sp+128]
    002bbc84ldr x4, [sp+136]
    002bbc88ldr x5, [sp+144]
    002bbc8cldr x6, [sp+152]
    002bbc90str x4, [sp+88]
    002bbc94str x5, [sp+96]
    002bbc98str x6, [sp+104]
    002bbc9cldr x4, [sp+128]
    002bbca0ldr x5, [sp+120]
    002bbca4str x5, [sp+72]
    002bbca8str x4, [sp+80]
    002bbcaccbnz x5, 0x2bbcb4
    002bbcb0b 0x2bbcd8
    002bbcb4
    002bbcb4loc_2bbcb4:
    002bbcb4str xzr, [sp+64]
    002bbcb8ldr x1, [sp+72]
    002bbcbcldr x2, [sp+80]
    002bbcc0str x1, [sp+48]
    002bbcc4str x2, [sp+56]
    002bbcc8ldr x0, [sp+64]
    002bbcccldp x29, x30, [sp-8]
    002bbcd0add sp, sp, 272
    002bbcd4ret x30
    002bbcd8
    002bbcd8loc_2bbcd8:
    002bbcd8str xzr, [sp+200]
    002bbcdcstp xzr, xzr, [sp+208]
    002bbce0ldr x5, [sp+280]
    002bbce4ldrsb x27, [x5]
    002bbce8ldr x0, [x5]
    002bbcecstr x0, [sp+160]
    002bbcf0ldr x2, [sp+88]
    002bbcf4ldr x1, [sp+288]
    002bbcf8ldr x3, [sp+96]
    002bbcfcldr x4, [sp+104]
    002bbd00bl crypto/internal/fips140/ecdsa.NewPublicKey[go.shape.*crypto/internal/fips140/nistec.P256Point]
    002bbd04str x0, [sp+200]
    002bbd08str x1, [sp+208]
    002bbd0cstr x2, [sp+216]
    002bbd10ldr x5, [sp+200]
    002bbd14str x5, [sp+112]
    002bbd18ldr x5, [sp+208]
    002bbd1cldr x6, [sp+216]
    002bbd20str x5, [sp+248]
    002bbd24str x6, [sp+256]
    002bbd28ldr x5, [sp+112]
    002bbd2cstr x5, [sp+64]
    002bbd30ldr x1, [sp+248]
    002bbd34ldr x2, [sp+256]
    002bbd38str x1, [sp+48]
    002bbd3cstr x2, [sp+56]
    002bbd40ldr x0, [sp+64]
    002bbd44ldp x29, x30, [sp-8]
    002bbd48add sp, sp, 272
    002bbd4cret x30
    002bbd50
    002bbd50loc_2bbd50:
    002bbd50stp x0, x1, [sp+8]
    002bbd54str x2, [sp+24]
    002bbd58mov x3, x30
    002bbd5cbl runtime.morestack_noctxt.abi0
    002bbd60ldp x0, x1, [sp+8]
    002bbd64ldr x2, [sp+24]
    002bbd68b 0x2bbbc0
    002bbd6cudf 0
    002bbbc0
    002bbd70
    002bbd70crypto/ecdsa.verifyFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]: ; void crypto/ecdsa.verifyFIPS[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.PublicKey * pub, struct []uint8 hash, struct []uint8 sig)
    002bbd70ldr x16, [x28+16]
    002bbd74sub x17, sp, 272
    002bbd78subs xzr, x17, x16
    002bbd7cb.ls 0x2bc014
    002bbd80sub x20, sp, 400
    002bbd84stp x29, x30, [x20-8]
    002bbd88add sp, x20, 0
    002bbd8csub x29, sp, 8
    002bbd90str x0, [sp+408]
    002bbd94str x1, [sp+416]
    002bbd98str x2, [sp+424]
    002bbd9cstr x3, [sp+432]
    002bbda0str x4, [sp+440]
    002bbda4str x5, [sp+448]
    002bbda8str x6, [sp+456]
    002bbdacstr x7, [sp+464]
    002bbdb0str x8, [sp+472]
    002bbdb4strb wzr, [sp+71]
    002bbdb8str xzr, [sp+304]
    002bbdbcstp xzr, xzr, [sp+312]
    002bbdc0str xzr, [sp+280]
    002bbdc4stp xzr, xzr, [sp+288]
    002bbdc8stp xzr, xzr, [sp+264]
    002bbdccldr x0, [sp+456]
    002bbdd0ldr x1, [sp+464]
    002bbdd4ldr x2, [sp+472]
    002bbdd8bl crypto/ecdsa.parseSignature
    002bbddcstr x0, [sp+304]
    002bbde0str x1, [sp+312]
    002bbde4str x2, [sp+320]
    002bbde8str x3, [sp+280]
    002bbdecstr x4, [sp+288]
    002bbdf0str x5, [sp+296]
    002bbdf4str x6, [sp+264]
    002bbdf8str x7, [sp+272]
    002bbdfcldr x3, [sp+312]
    002bbe00ldr x4, [sp+320]
    002bbe04ldr x5, [sp+304]
    002bbe08str x5, [sp+160]
    002bbe0cstr x3, [sp+168]
    002bbe10str x4, [sp+176]
    002bbe14ldr x3, [sp+280]
    002bbe18ldr x4, [sp+288]
    002bbe1cldr x5, [sp+296]
    002bbe20str x3, [sp+368]
    002bbe24str x4, [sp+376]
    002bbe28str x5, [sp+384]
    002bbe2cldr x3, [sp+264]
    002bbe30ldr x4, [sp+272]
    002bbe34str x3, [sp+352]
    002bbe38str x4, [sp+360]
    002bbe3cldr x3, [sp+160]
    002bbe40ldr x4, [sp+168]
    002bbe44ldr x5, [sp+176]
    002bbe48str x3, [sp+96]
    002bbe4cstr x4, [sp+104]
    002bbe50str x5, [sp+112]
    002bbe54ldr x3, [sp+368]
    002bbe58ldr x4, [sp+376]
    002bbe5cldr x5, [sp+384]
    002bbe60str x3, [sp+72]
    002bbe64str x4, [sp+80]
    002bbe68str x5, [sp+88]
    002bbe6cldr x3, [sp+360]
    002bbe70ldr x4, [sp+352]
    002bbe74str x4, [sp+144]
    002bbe78str x3, [sp+152]
    002bbe7ccbnz x4, 0x2bbe84
    002bbe80b 0x2bbe98
    002bbe84
    002bbe84loc_2bbe84:
    002bbe84strb wzr, [sp+71]
    002bbe88mov x0, xzr
    002bbe8cldp x29, x30, [sp-8]
    002bbe90add sp, sp, 400
    002bbe94ret x30
    002bbe98
    002bbe98loc_2bbe98:
    002bbe98str xzr, [sp+256]
    002bbe9cstp xzr, xzr, [sp+264]
    002bbea0ldr x3, [sp+408]
    002bbea4ldrsb x27, [x3]
    002bbea8ldr x0, [x3]
    002bbeacstr x0, [sp+248]
    002bbeb0ldr x2, [sp+424]
    002bbeb4ldr x1, [sp+416]
    002bbeb8bl crypto/ecdsa.publicKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002bbebcstr x0, [sp+256]
    002bbec0str x1, [sp+264]
    002bbec4str x2, [sp+272]
    002bbec8ldr x3, [sp+256]
    002bbeccstr x3, [sp+344]
    002bbed0ldr x3, [sp+264]
    002bbed4ldr x4, [sp+272]
    002bbed8str x3, [sp+328]
    002bbedcstr x4, [sp+336]
    002bbee0ldr x3, [sp+344]
    002bbee4str x3, [sp+120]
    002bbee8ldr x3, [sp+336]
    002bbeecldr x4, [sp+328]
    002bbef0str x4, [sp+144]
    002bbef4str x3, [sp+152]
    002bbef8cbnz x4, 0x2bbf00
    002bbefcb 0x2bbf14
    002bbf00
    002bbf00loc_2bbf00:
    002bbf00strb wzr, [sp+71]
    002bbf04mov x0, xzr
    002bbf08ldp x29, x30, [sp-8]
    002bbf0cadd sp, sp, 400
    002bbf10ret x30
    002bbf14
    002bbf14loc_2bbf14:
    002bbf14stp xzr, xzr, [sp+192]
    002bbf18stp xzr, xzr, [sp+208]
    002bbf1cstp xzr, xzr, [sp+224]
    002bbf20add x7, sp, 192
    002bbf24str x7, [sp+240]
    002bbf28ldrsb x27, [x7]
    002bbf2cldr x8, [sp+96]
    002bbf30ldr x9, [sp+104]
    002bbf34ldr x10, [sp+112]
    002bbf38str x9, [x7+8]
    002bbf3cstr x10, [x7+16]
    002bbf40adrp x27, 0x790000
    002bbf44ldr w9, [x27+3056]
    002bbf48cbz w9, 0x2bbf50
    002bbf4cb 0x2bbf54
    002bbf50
    002bbf50loc_2bbf50:
    002bbf50b 0x2bbf68
    002bbf54
    002bbf54loc_2bbf54:
    002bbf54bl runtime.gcWriteBarrier2
    002bbf58str x8, [x25]
    002bbf5cldr x9, [x7]
    002bbf60str x9, [x25+8]
    002bbf64b 0x2bbf68
    002bbf68
    002bbf68loc_2bbf68:
    002bbf68str x8, [x7]
    002bbf6cldrsb x27, [x7]
    002bbf70ldr x8, [sp+72]
    002bbf74ldr x9, [sp+80]
    002bbf78ldr x10, [sp+88]
    002bbf7cstr x9, [x7+32]
    002bbf80str x10, [x7+40]
    002bbf84adrp x27, 0x790000
    002bbf88ldr w9, [x27+3056]
    002bbf8ccbz w9, 0x2bbf94
    002bbf90b 0x2bbf98
    002bbf94
    002bbf94loc_2bbf94:
    002bbf94b 0x2bbfac
    002bbf98
    002bbf98loc_2bbf98:
    002bbf98bl runtime.gcWriteBarrier2
    002bbf9cstr x8, [x25]
    002bbfa0ldr x9, [x7+24]
    002bbfa4str x9, [x25+8]
    002bbfa8b 0x2bbfac
    002bbfac
    002bbfacloc_2bbfac:
    002bbfacstr x8, [x7+24]
    002bbfb0ldr x7, [sp+408]
    002bbfb4ldrsb x27, [x7]
    002bbfb8ldr x0, [x7+8]
    002bbfbcstr x0, [sp+184]
    002bbfc0ldr x3, [sp+432]
    002bbfc4ldr x2, [sp+120]
    002bbfc8ldr x1, [sp+416]
    002bbfccldr x4, [sp+440]
    002bbfd0ldr x5, [sp+448]
    002bbfd4ldr x6, [sp+240]
    002bbfd8bl crypto/internal/fips140/ecdsa.Verify[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002bbfdcstr x0, [sp+128]
    002bbfe0str x1, [sp+136]
    002bbfe4cbnz x0, 0x2bbfec
    002bbfe8b 0x2bc000
    002bbfec
    002bbfecloc_2bbfec:
    002bbfecstrb wzr, [sp+71]
    002bbff0mov x0, xzr
    002bbff4ldp x29, x30, [sp-8]
    002bbff8add sp, sp, 400
    002bbffcret x30
    002bc000
    002bc000loc_2bc000:
    002bc000orr x0, xzr, 1
    002bc004strb w0, [sp+71]
    002bc008ldp x29, x30, [sp-8]
    002bc00cadd sp, sp, 400
    002bc010ret x30
    002bc014
    002bc014loc_2bc014:
    002bc014stp x0, x1, [sp+8]
    002bc018stp x2, x3, [sp+24]
    002bc01cstp x4, x5, [sp+40]
    002bc020stp x6, x7, [sp+56]
    002bc024str x8, [sp+72]
    002bc028mov x3, x30
    002bc02cbl runtime.morestack_noctxt.abi0
    002bc030ldp x0, x1, [sp+8]
    002bc034ldp x2, x3, [sp+24]
    002bc038ldp x4, x5, [sp+40]
    002bc03cldp x6, x7, [sp+56]
    002bc040ldr x8, [sp+72]
    002bc044b 0x2bbd70
    002bc048udf 0
    002bc04cudf 0
    002bbd70
    002bc050
    002bc050crypto/ecdsa.publicKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]: ; void crypto/ecdsa.publicKeyToFIPS[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.PublicKey * pub)
    002bc050ldr x16, [x28+16]
    002bc054sub x17, sp, 144
    002bc058subs xzr, x17, x16
    002bc05cb.ls 0x2bc1e0
    002bc060sub x20, sp, 272
    002bc064stp x29, x30, [x20-8]
    002bc068add sp, x20, 0
    002bc06csub x29, sp, 8
    002bc070str x0, [sp+280]
    002bc074str x1, [sp+288]
    002bc078str x2, [sp+296]
    002bc07cstr xzr, [sp+64]
    002bc080stp xzr, xzr, [sp+48]
    002bc084str xzr, [sp+224]
    002bc088stp xzr, xzr, [sp+232]
    002bc08cstp xzr, xzr, [sp+208]
    002bc090ldr x4, [sp+296]
    002bc094ldrsb x27, [x4]
    002bc098ldr x5, [x4]
    002bc09cldr x4, [x4+8]
    002bc0a0str x5, [sp+184]
    002bc0a4str x4, [sp+192]
    002bc0a8ldr x4, [sp+296]
    002bc0acldrsb x27, [x4]
    002bc0b0ldr x4, [x4+16]
    002bc0b4str x4, [sp+176]
    002bc0b8ldr x4, [sp+296]
    002bc0bcldrsb x27, [x4]
    002bc0c0ldr x3, [x4+24]
    002bc0c4str x3, [sp+168]
    002bc0c8ldr x0, [sp+184]
    002bc0ccldr x1, [sp+192]
    002bc0d0ldr x2, [sp+176]
    002bc0d4bl crypto/ecdsa.pointFromAffine
    002bc0d8str x0, [sp+224]
    002bc0dcstr x1, [sp+232]
    002bc0e0str x2, [sp+240]
    002bc0e4str x3, [sp+208]
    002bc0e8str x4, [sp+216]
    002bc0ecldr x4, [sp+224]
    002bc0f0ldr x5, [sp+232]
    002bc0f4ldr x6, [sp+240]
    002bc0f8str x4, [sp+136]
    002bc0fcstr x5, [sp+144]
    002bc100str x6, [sp+152]
    002bc104ldr x4, [sp+208]
    002bc108ldr x5, [sp+216]
    002bc10cstr x4, [sp+120]
    002bc110str x5, [sp+128]
    002bc114ldr x4, [sp+136]
    002bc118ldr x5, [sp+144]
    002bc11cldr x6, [sp+152]
    002bc120str x4, [sp+88]
    002bc124str x5, [sp+96]
    002bc128str x6, [sp+104]
    002bc12cldr x4, [sp+128]
    002bc130ldr x5, [sp+120]
    002bc134str x5, [sp+72]
    002bc138str x4, [sp+80]
    002bc13ccbnz x5, 0x2bc144
    002bc140b 0x2bc168
    002bc144
    002bc144loc_2bc144:
    002bc144str xzr, [sp+64]
    002bc148ldr x1, [sp+72]
    002bc14cldr x2, [sp+80]
    002bc150str x1, [sp+48]
    002bc154str x2, [sp+56]
    002bc158ldr x0, [sp+64]
    002bc15cldp x29, x30, [sp-8]
    002bc160add sp, sp, 272
    002bc164ret x30
    002bc168
    002bc168loc_2bc168:
    002bc168str xzr, [sp+200]
    002bc16cstp xzr, xzr, [sp+208]
    002bc170ldr x5, [sp+280]
    002bc174ldrsb x27, [x5]
    002bc178ldr x0, [x5]
    002bc17cstr x0, [sp+160]
    002bc180ldr x2, [sp+88]
    002bc184ldr x1, [sp+288]
    002bc188ldr x3, [sp+96]
    002bc18cldr x4, [sp+104]
    002bc190bl crypto/internal/fips140/ecdsa.NewPublicKey[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002bc194str x0, [sp+200]
    002bc198str x1, [sp+208]
    002bc19cstr x2, [sp+216]
    002bc1a0ldr x5, [sp+200]
    002bc1a4str x5, [sp+112]
    002bc1a8ldr x5, [sp+208]
    002bc1acldr x6, [sp+216]
    002bc1b0str x5, [sp+248]
    002bc1b4str x6, [sp+256]
    002bc1b8ldr x5, [sp+112]
    002bc1bcstr x5, [sp+64]
    002bc1c0ldr x1, [sp+248]
    002bc1c4ldr x2, [sp+256]
    002bc1c8str x1, [sp+48]
    002bc1ccstr x2, [sp+56]
    002bc1d0ldr x0, [sp+64]
    002bc1d4ldp x29, x30, [sp-8]
    002bc1d8add sp, sp, 272
    002bc1dcret x30
    002bc1e0
    002bc1e0loc_2bc1e0:
    002bc1e0stp x0, x1, [sp+8]
    002bc1e4str x2, [sp+24]
    002bc1e8mov x3, x30
    002bc1ecbl runtime.morestack_noctxt.abi0
    002bc1f0ldp x0, x1, [sp+8]
    002bc1f4ldr x2, [sp+24]
    002bc1f8b 0x2bc050
    002bc1fcudf 0
    002bc050
    002bc200
    002bc200crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P521Point]: ; void crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P521Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P521Point] * c, crypto.Hash hashFunc, crypto/ecdsa.PrivateKey * priv, struct []uint8 hash)
    002bc200ldr x16, [x28+16]
    002bc204sub x17, sp, 272
    002bc208subs xzr, x17, x16
    002bc20cb.ls 0x2bc534
    002bc210sub x20, sp, 400
    002bc214stp x29, x30, [x20-8]
    002bc218add sp, x20, 0
    002bc21csub x29, sp, 8
    002bc220str x0, [sp+408]
    002bc224str x1, [sp+416]
    002bc228str x2, [sp+424]
    002bc22cstr x3, [sp+432]
    002bc230str x4, [sp+440]
    002bc234str x5, [sp+448]
    002bc238str x6, [sp+456]
    002bc23cstr xzr, [sp+96]
    002bc240stp xzr, xzr, [sp+104]
    002bc244stp xzr, xzr, [sp+80]
    002bc248str xzr, [sp+304]
    002bc24cstp xzr, xzr, [sp+288]
    002bc250ldr x3, [sp+408]
    002bc254ldrsb x27, [x3]
    002bc258ldr x0, [x3]
    002bc25cstr x0, [sp+232]
    002bc260ldr x2, [sp+432]
    002bc264ldr x1, [sp+416]
    002bc268bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point]
    002bc26cstr x0, [sp+304]
    002bc270str x1, [sp+288]
    002bc274str x2, [sp+296]
    002bc278ldr x3, [sp+304]
    002bc27cstr x3, [sp+160]
    002bc280ldr x3, [sp+288]
    002bc284ldr x4, [sp+296]
    002bc288str x3, [sp+376]
    002bc28cstr x4, [sp+384]
    002bc290ldr x3, [sp+160]
    002bc294str x3, [sp+128]
    002bc298ldr x3, [sp+384]
    002bc29cldr x4, [sp+376]
    002bc2a0str x4, [sp+144]
    002bc2a4str x3, [sp+152]
    002bc2a8cbnz x4, 0x2bc2b0
    002bc2acb 0x2bc2e0
    002bc2b0
    002bc2b0loc_2bc2b0:
    002bc2b0str xzr, [sp+96]
    002bc2b4stp xzr, xzr, [sp+104]
    002bc2b8ldr x3, [sp+144]
    002bc2bcldr x4, [sp+152]
    002bc2c0str x3, [sp+80]
    002bc2c4str x4, [sp+88]
    002bc2c8ldr x0, [sp+96]
    002bc2ccldr x1, [sp+104]
    002bc2d0ldr x2, [sp+112]
    002bc2d4ldp x29, x30, [sp-8]
    002bc2d8add sp, sp, 400
    002bc2dcret x30
    002bc2e0
    002bc2e0loc_2bc2e0:
    002bc2e0adrp x0, 0x378000
    002bc2e4add x0, x0, 2112
    002bc2e8bl runtime.newobject
    002bc2ecstr x0, [sp+224]
    002bc2f0adrp x1, 12288
    002bc2f4add x1, x1, 3360
    002bc2f8str x1, [x0]
    002bc2fcldr x1, [sp+424]
    002bc300ldr x2, [sp+224]
    002bc304ldrsb x27, [x2]
    002bc308str x1, [x2+8]
    002bc30cldr x1, [sp+224]
    002bc310adrp x0, 0x457000
    002bc314add x0, x0, 768
    002bc318bl crypto/internal/fips140hash.UnwrapNew[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bc31cstr x0, [sp+136]
    002bc320adrp x27, 0x78f000
    002bc324ldrb w1, [x27+1551]
    002bc328strb w1, [sp+79]
    002bc32ctbnz w1, 0, 0x2bc334
    002bc330b 0x2bc35c
    002bc334
    002bc334loc_2bc334:
    002bc334ldr x26, [sp+136]
    002bc338ldr x0, [x26]
    002bc33cblr x0
    002bc340str x0, [sp+272]
    002bc344str x1, [sp+280]
    002bc348bl crypto/internal/fips140only.ApprovedHash
    002bc34cstrb w0, [sp+78]
    002bc350eor x0, x0, 1
    002bc354strb w0, [sp+79]
    002bc358b 0x2bc360
    002bc35c
    002bc35cloc_2bc35c:
    002bc35cb 0x2bc360
    002bc360
    002bc360loc_2bc360:
    002bc360ldrb w7, [sp+79]
    002bc364tbnz w7, 0, 0x2bc36c
    002bc368b 0x2bc3b4
    002bc36c
    002bc36cloc_2bc36c:
    002bc36cadrp x0, 0x414000
    002bc370add x0, x0, 2527
    002bc374movz x1, 98
    002bc378bl errors.New
    002bc37cstr x0, [sp+288]
    002bc380str x1, [sp+296]
    002bc384str xzr, [sp+96]
    002bc388stp xzr, xzr, [sp+104]
    002bc38cldr x3, [sp+288]
    002bc390ldr x4, [sp+296]
    002bc394str x3, [sp+80]
    002bc398str x4, [sp+88]
    002bc39cldr x0, [sp+96]
    002bc3a0ldr x1, [sp+104]
    002bc3a4ldr x2, [sp+112]
    002bc3a8ldp x29, x30, [sp-8]
    002bc3acadd sp, sp, 400
    002bc3b0ret x30
    002bc3b4
    002bc3b4loc_2bc3b4:
    002bc3b4str xzr, [sp+264]
    002bc3b8stp xzr, xzr, [sp+288]
    002bc3bcldr x7, [sp+408]
    002bc3c0ldrsb x27, [x7]
    002bc3c4ldr x0, [x7+8]
    002bc3c8str x0, [sp+216]
    002bc3ccldr x4, [sp+440]
    002bc3d0ldr x3, [sp+128]
    002bc3d4ldr x1, [sp+416]
    002bc3d8ldr x2, [sp+136]
    002bc3dcldr x5, [sp+448]
    002bc3e0ldr x6, [sp+456]
    002bc3e4bl crypto/internal/fips140/ecdsa.SignDeterministic[go.shape.*crypto/internal/fips140/nistec.P521Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bc3e8str x0, [sp+264]
    002bc3ecstr x1, [sp+288]
    002bc3f0str x2, [sp+296]
    002bc3f4ldr x7, [sp+264]
    002bc3f8str x7, [sp+368]
    002bc3fcldr x7, [sp+288]
    002bc400ldr x8, [sp+296]
    002bc404str x7, [sp+352]
    002bc408str x8, [sp+360]
    002bc40cldr x7, [sp+368]
    002bc410str x7, [sp+120]
    002bc414ldr x7, [sp+360]
    002bc418ldr x8, [sp+352]
    002bc41cstr x8, [sp+144]
    002bc420str x7, [sp+152]
    002bc424cbnz x8, 0x2bc42c
    002bc428b 0x2bc45c
    002bc42c
    002bc42cloc_2bc42c:
    002bc42cstr xzr, [sp+96]
    002bc430stp xzr, xzr, [sp+104]
    002bc434ldr x3, [sp+144]
    002bc438ldr x4, [sp+152]
    002bc43cstr x3, [sp+80]
    002bc440str x4, [sp+88]
    002bc444ldr x0, [sp+96]
    002bc448ldr x1, [sp+104]
    002bc44cldr x2, [sp+112]
    002bc450ldp x29, x30, [sp-8]
    002bc454add sp, sp, 400
    002bc458ret x30
    002bc45c
    002bc45cloc_2bc45c:
    002bc45cstr xzr, [sp+240]
    002bc460stp xzr, xzr, [sp+248]
    002bc464stp xzr, xzr, [sp+288]
    002bc468ldr x6, [sp+120]
    002bc46cldrsb x27, [x6]
    002bc470ldr x7, [x6]
    002bc474ldr x8, [x6+8]
    002bc478ldr x6, [x6+16]
    002bc47cstr x7, [sp+192]
    002bc480str x8, [sp+200]
    002bc484str x6, [sp+208]
    002bc488ldr x6, [sp+120]
    002bc48cldrsb x27, [x6]
    002bc490ldr x3, [x6+24]
    002bc494ldr x4, [x6+32]
    002bc498ldr x5, [x6+40]
    002bc49cstr x3, [sp+168]
    002bc4a0str x4, [sp+176]
    002bc4a4str x5, [sp+184]
    002bc4a8ldr x0, [sp+192]
    002bc4acldr x1, [sp+200]
    002bc4b0ldr x2, [sp+208]
    002bc4b4bl crypto/ecdsa.encodeSignature
    002bc4b8str x0, [sp+240]
    002bc4bcstr x1, [sp+248]
    002bc4c0str x2, [sp+256]
    002bc4c4str x3, [sp+288]
    002bc4c8str x4, [sp+296]
    002bc4ccldr x6, [sp+240]
    002bc4d0ldr x7, [sp+248]
    002bc4d4ldr x8, [sp+256]
    002bc4d8str x6, [sp+328]
    002bc4dcstr x7, [sp+336]
    002bc4e0str x8, [sp+344]
    002bc4e4ldr x6, [sp+288]
    002bc4e8ldr x7, [sp+296]
    002bc4ecstr x6, [sp+312]
    002bc4f0str x7, [sp+320]
    002bc4f4ldr x6, [sp+328]
    002bc4f8ldr x7, [sp+336]
    002bc4fcldr x8, [sp+344]
    002bc500str x6, [sp+96]
    002bc504str x7, [sp+104]
    002bc508str x8, [sp+112]
    002bc50cldr x3, [sp+312]
    002bc510ldr x4, [sp+320]
    002bc514str x3, [sp+80]
    002bc518str x4, [sp+88]
    002bc51cldr x0, [sp+96]
    002bc520ldr x1, [sp+104]
    002bc524ldr x2, [sp+112]
    002bc528ldp x29, x30, [sp-8]
    002bc52cadd sp, sp, 400
    002bc530ret x30
    002bc534
    002bc534loc_2bc534:
    002bc534stp x0, x1, [sp+8]
    002bc538stp x2, x3, [sp+24]
    002bc53cstp x4, x5, [sp+40]
    002bc540str x6, [sp+56]
    002bc544mov x3, x30
    002bc548bl runtime.morestack_noctxt.abi0
    002bc54cldp x0, x1, [sp+8]
    002bc550ldp x2, x3, [sp+24]
    002bc554ldp x4, x5, [sp+40]
    002bc558ldr x6, [sp+56]
    002bc55cb 0x2bc200
    002bc200
    002bc560
    002bc560crypto/internal/fips140hash.UnwrapNew[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]: ; void crypto/internal/fips140hash.UnwrapNew[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }](uintptr[3] * dict, int64_t newHash)
    002bc560ldr x16, [x28+16]
    002bc564subs xzr, sp, x16
    002bc568b.ls 0x2bc628
    002bc56cstr x30, [sp-64]!
    002bc570stur x29, [sp-8]
    002bc574sub x29, sp, 8
    002bc578str x0, [sp+72]
    002bc57cstr x1, [sp+80]
    002bc580str xzr, [sp+40]
    002bc584adrp x0, 0x391000
    002bc588add x0, x0, 1824
    002bc58cbl runtime.newobject
    002bc590str x0, [sp+48]
    002bc594adrp x1, 0
    002bc598add x1, x1, 1600
    002bc59cstr x1, [x0]
    002bc5a0ldr x1, [sp+80]
    002bc5a4ldr x2, [sp+48]
    002bc5a8ldrsb x27, [x2]
    002bc5acadrp x27, 0x78f000
    002bc5b0ldr w3, [x27+3056]
    002bc5b4cbz w3, 0x2bc5bc
    002bc5b8b 0x2bc5c0
    002bc5bc
    002bc5bcloc_2bc5bc:
    002bc5bcb 0x2bc5d4
    002bc5c0
    002bc5c0loc_2bc5c0:
    002bc5c0bl runtime.gcWriteBarrier2
    002bc5c4str x1, [x25]
    002bc5c8ldr x3, [x2+8]
    002bc5ccstr x3, [x25+8]
    002bc5d0b 0x2bc5d4
    002bc5d4
    002bc5d4loc_2bc5d4:
    002bc5d4str x1, [x2+8]
    002bc5d8ldr x1, [sp+72]
    002bc5dcldr x2, [sp+48]
    002bc5e0ldrsb x27, [x2]
    002bc5e4adrp x27, 0x78f000
    002bc5e8ldr w3, [x27+3056]
    002bc5eccbz w3, 0x2bc5f4
    002bc5f0b 0x2bc5f8
    002bc5f4
    002bc5f4loc_2bc5f4:
    002bc5f4b 0x2bc60c
    002bc5f8
    002bc5f8loc_2bc5f8:
    002bc5f8bl runtime.gcWriteBarrier2
    002bc5fcstr x1, [x25]
    002bc600ldr x3, [x2+16]
    002bc604str x3, [x25+8]
    002bc608b 0x2bc60c
    002bc60c
    002bc60cloc_2bc60c:
    002bc60cstr x1, [x2+16]
    002bc610ldr x1, [sp+48]
    002bc614str x1, [sp+40]
    002bc618ldr x0, [sp+40]
    002bc61cldur x29, [sp-8]
    002bc620ldr x30, [sp], 64
    002bc624ret x30
    002bc628
    002bc628loc_2bc628:
    002bc628stp x0, x1, [sp+8]
    002bc62cmov x3, x30
    002bc630bl runtime.morestack_noctxt.abi0
    002bc634ldp x0, x1, [sp+8]
    002bc638b 0x2bc560
    002bc63cudf 0
    002bc560
    002bc640
    002bc640crypto/internal/fips140hash.UnwrapNew[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }].func1: ; void crypto/internal/fips140hash.UnwrapNew[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }].func1(void)
    002bc640ldr x16, [x28+16]
    002bc644sub x17, sp, 32
    002bc648subs xzr, x17, x16
    002bc64cb.ls 0x2bc6dc
    002bc650str x30, [sp-160]!
    002bc654stur x29, [sp-8]
    002bc658sub x29, sp, 8
    002bc65cldr x0, [x26+8]
    002bc660str x0, [sp+64]
    002bc664ldr x0, [x26+16]
    002bc668str x0, [sp+72]
    002bc66cstp xzr, xzr, [sp+48]
    002bc670ldr x26, [sp+64]
    002bc674ldr x0, [x26]
    002bc678blr x0
    002bc67cstr x0, [sp+136]
    002bc680str x1, [sp+144]
    002bc684str x0, [sp+104]
    002bc688str x1, [sp+112]
    002bc68ccbnz x0, 0x2bc694
    002bc690b 0x2bc6b0
    002bc694
    002bc694loc_2bc694:
    002bc694str x1, [sp+80]
    002bc698ldr x1, [x0+8]
    002bc69cadrp x0, 0x754000
    002bc6a0add x0, x0, 3856
    002bc6a4bl runtime.typeAssert
    002bc6a8ldr x1, [sp+80]
    002bc6acb 0x2bc6b4
    002bc6b0
    002bc6b0loc_2bc6b0:
    002bc6b0b 0x2bc6b4
    002bc6b4
    002bc6b4loc_2bc6b4:
    002bc6b4str x0, [sp+88]
    002bc6b8str x1, [sp+96]
    002bc6bcbl crypto/internal/fips140hash.Unwrap
    002bc6c0str x0, [sp+120]
    002bc6c4str x1, [sp+128]
    002bc6c8str x0, [sp+48]
    002bc6ccstr x1, [sp+56]
    002bc6d0ldur x29, [sp-8]
    002bc6d4ldr x30, [sp], 160
    002bc6d8ret x30
    002bc6dc
    002bc6dcloc_2bc6dc:
    002bc6dcmov x3, x30
    002bc6e0bl runtime.morestack.abi0
    002bc6e4b 0x2bc640
    002bc6e8udf 0
    002bc6ecudf 0
    002bc640
    002bc6f0
    002bc6f0crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point]: ; void crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point](uintptr[2] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P521Point] * c, crypto/ecdsa.PrivateKey * priv)
    002bc6f0ldr x16, [x28+16]
    002bc6f4sub x17, sp, 176
    002bc6f8subs xzr, x17, x16
    002bc6fcb.ls 0x2bc8ac
    002bc700sub x20, sp, 304
    002bc704stp x29, x30, [x20-8]
    002bc708add sp, x20, 0
    002bc70csub x29, sp, 8
    002bc710str x0, [sp+312]
    002bc714str x1, [sp+320]
    002bc718str x2, [sp+328]
    002bc71cstr xzr, [sp+88]
    002bc720stp xzr, xzr, [sp+72]
    002bc724str xzr, [sp+256]
    002bc728stp xzr, xzr, [sp+264]
    002bc72cstp xzr, xzr, [sp+240]
    002bc730ldr x4, [sp+328]
    002bc734ldrsb x27, [x4]
    002bc738ldr x5, [x4]
    002bc73cldr x4, [x4+8]
    002bc740str x5, [sp+216]
    002bc744str x4, [sp+224]
    002bc748ldr x4, [sp+328]
    002bc74cldrsb x27, [x4]
    002bc750ldr x4, [x4+16]
    002bc754str x4, [sp+208]
    002bc758ldr x4, [sp+328]
    002bc75cldrsb x27, [x4]
    002bc760ldr x3, [x4+24]
    002bc764str x3, [sp+200]
    002bc768ldr x0, [sp+216]
    002bc76cldr x1, [sp+224]
    002bc770ldr x2, [sp+208]
    002bc774bl crypto/ecdsa.pointFromAffine
    002bc778str x0, [sp+256]
    002bc77cstr x1, [sp+264]
    002bc780str x2, [sp+272]
    002bc784str x3, [sp+240]
    002bc788str x4, [sp+248]
    002bc78cldr x4, [sp+256]
    002bc790ldr x5, [sp+264]
    002bc794ldr x6, [sp+272]
    002bc798str x4, [sp+160]
    002bc79cstr x5, [sp+168]
    002bc7a0str x6, [sp+176]
    002bc7a4ldr x4, [sp+240]
    002bc7a8ldr x5, [sp+248]
    002bc7acstr x4, [sp+144]
    002bc7b0str x5, [sp+152]
    002bc7b4ldr x4, [sp+160]
    002bc7b8ldr x5, [sp+168]
    002bc7bcldr x6, [sp+176]
    002bc7c0str x4, [sp+112]
    002bc7c4str x5, [sp+120]
    002bc7c8str x6, [sp+128]
    002bc7ccldr x4, [sp+152]
    002bc7d0ldr x5, [sp+144]
    002bc7d4str x5, [sp+96]
    002bc7d8str x4, [sp+104]
    002bc7dccbnz x5, 0x2bc7e4
    002bc7e0b 0x2bc808
    002bc7e4
    002bc7e4loc_2bc7e4:
    002bc7e4str xzr, [sp+88]
    002bc7e8ldr x1, [sp+96]
    002bc7ecldr x2, [sp+104]
    002bc7f0str x1, [sp+72]
    002bc7f4str x2, [sp+80]
    002bc7f8ldr x0, [sp+88]
    002bc7fcldp x29, x30, [sp-8]
    002bc800add sp, sp, 304
    002bc804ret x30
    002bc808
    002bc808loc_2bc808:
    002bc808ldr x1, [sp+328]
    002bc80cldrsb x27, [x1]
    002bc810ldr x0, [x1+32]
    002bc814str x0, [sp+192]
    002bc818bl math/big.(*Int).Bytes
    002bc81cstr x0, [sp+256]
    002bc820str x1, [sp+264]
    002bc824str x2, [sp+272]
    002bc828str xzr, [sp+232]
    002bc82cstp xzr, xzr, [sp+240]
    002bc830ldr x1, [sp+312]
    002bc834ldrsb x27, [x1]
    002bc838ldr x0, [x1]
    002bc83cstr x0, [sp+184]
    002bc840ldr x5, [sp+112]
    002bc844ldr x1, [sp+320]
    002bc848ldr x6, [sp+120]
    002bc84cldr x7, [sp+128]
    002bc850ldr x2, [sp+256]
    002bc854ldr x3, [sp+264]
    002bc858ldr x4, [sp+272]
    002bc85cbl crypto/internal/fips140/ecdsa.NewPrivateKey[go.shape.*crypto/internal/fips140/nistec.P521Point]
    002bc860str x0, [sp+232]
    002bc864str x1, [sp+240]
    002bc868str x2, [sp+248]
    002bc86cldr x1, [sp+232]
    002bc870str x1, [sp+136]
    002bc874ldr x1, [sp+240]
    002bc878ldr x2, [sp+248]
    002bc87cstr x1, [sp+280]
    002bc880str x2, [sp+288]
    002bc884ldr x1, [sp+136]
    002bc888str x1, [sp+88]
    002bc88cldr x1, [sp+280]
    002bc890ldr x2, [sp+288]
    002bc894str x1, [sp+72]
    002bc898str x2, [sp+80]
    002bc89cldr x0, [sp+88]
    002bc8a0ldp x29, x30, [sp-8]
    002bc8a4add sp, sp, 304
    002bc8a8ret x30
    002bc8ac
    002bc8acloc_2bc8ac:
    002bc8acstp x0, x1, [sp+8]
    002bc8b0str x2, [sp+24]
    002bc8b4mov x3, x30
    002bc8b8bl runtime.morestack_noctxt.abi0
    002bc8bcldp x0, x1, [sp+8]
    002bc8c0ldr x2, [sp+24]
    002bc8c4b 0x2bc6f0
    002bc8c8udf 0
    002bc8ccudf 0
    002bc6f0
    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