File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    00568260
    00568260crypto/internal/fips140/nistec.(*P256Point).SetBytes: ; void crypto/internal/fips140/nistec.(*P256Point).SetBytes(crypto/internal/fips140/nistec.P256Point * p, struct []uint8 b)
    00568260ldr x16, [x28+16]
    00568264sub x17, sp, 352
    00568268subs xzr, x17, x16
    0056826cb.ls 0x5688a8
    00568270sub x20, sp, 480
    00568274stp x29, x30, [x20-8]
    00568278add sp, x20, 0
    0056827csub x29, sp, 8
    00568280str x0, [sp+488]
    00568284str x1, [sp+496]
    00568288str x2, [sp+504]
    0056828cstr x3, [sp+512]
    00568290str xzr, [sp+360]
    00568294stp xzr, xzr, [sp+344]
    00568298adrp x27, 0x1c1000
    0056829cadd x27, x27, 3136
    005682a0ldp x3, x4, [x27]
    005682a4adrp x27, 0x1c1000
    005682a8add x27, x27, 3152
    005682acldp x5, x6, [x27]
    005682b0stp x3, x4, [sp+48]
    005682b4stp x5, x6, [sp+64]
    005682b8ldr x3, [sp+504]
    005682bcstr x3, [sp+336]
    005682c0subs xzr, x3, 1
    005682c4cset x3, eq
    005682c8strb w3, [sp+47]
    005682ccb.eq 0x5682d4
    005682d0b 0x5682fc
    005682d4
    005682d4loc_5682d4:
    005682d4ldr x1, [sp+504]
    005682d8ldr x3, [sp+496]
    005682dcsubs xzr, x1, 0
    005682e0b.hi 0x5682e8
    005682e4b 0x56889c
    005682e8
    005682e8loc_5682e8:
    005682e8ldrb w3, [x3]
    005682ecsubs wzr, w3, 0
    005682f0cset x3, eq
    005682f4strb w3, [sp+47]
    005682f8b 0x568300
    005682fc
    005682fcloc_5682fc:
    005682fcb 0x568300
    00568300
    00568300loc_568300:
    00568300ldrb w3, [sp+47]
    00568304tbnz w3, 0, 0x56830c
    00568308b 0x568350
    0056830c
    0056830cloc_56830c:
    0056830cb 0x568310
    00568310
    00568310loc_568310:
    00568310bl crypto/internal/fips140/nistec.NewP256Point
    00568314str x0, [sp+464]
    00568318ldr x1, [sp+488]
    0056831cmov x2, x0
    00568320mov x0, x1
    00568324mov x1, x2
    00568328bl crypto/internal/fips140/nistec.(*P256Point).Set
    0056832cstr x0, [sp+456]
    00568330str x0, [sp+360]
    00568334stp xzr, xzr, [sp+344]
    00568338ldr x0, [sp+360]
    0056833cmov x1, xzr
    00568340mov x2, xzr
    00568344ldp x29, x30, [sp-8]
    00568348add sp, sp, 480
    0056834cret x30
    00568350
    00568350loc_568350:
    00568350ldr x3, [sp+504]
    00568354str x3, [sp+328]
    00568358subs xzr, x3, 65
    0056835ccset x3, eq
    00568360strb w3, [sp+46]
    00568364b.eq 0x56836c
    00568368b 0x568394
    0056836c
    0056836cloc_56836c:
    0056836cldr x1, [sp+504]
    00568370ldr x3, [sp+496]
    00568374subs xzr, x1, 0
    00568378b.hi 0x568380
    0056837cb 0x568894
    00568380
    00568380loc_568380:
    00568380ldrb w3, [x3]
    00568384subs wzr, w3, 4
    00568388cset x3, eq
    0056838cstrb w3, [sp+46]
    00568390b 0x568398
    00568394
    00568394loc_568394:
    00568394b 0x568398
    00568398
    00568398loc_568398:
    00568398ldrb w3, [sp+46]
    0056839ctbnz w3, 0, 0x5683a4
    005683a0b 0x5685ac
    005683a4
    005683a4loc_5683a4:
    005683a4b 0x5683a8
    005683a8
    005683a8loc_5683a8:
    005683a8add x20, sp, 176
    005683acadr x27, 16
    005683b0stp x29, x27, [sp-24]
    005683b4sub x29, sp, 24
    005683b8bl fn_87cf8
    005683bcsub x29, sp, 8
    005683c0ldr x2, [sp+512]
    005683c4ldr x3, [sp+496]
    005683c8subs xzr, x2, 33
    005683ccb.hs 0x5683d4
    005683d0b 0x56888c
    005683d4
    005683d4loc_5683d4:
    005683d4b 0x5683d8
    005683d8
    005683d8loc_5683d8:
    005683d8sub x2, x2, 1
    005683dcsub x4, xzr, x2
    005683e0sbfm x4, x4, 63, 63
    005683e4and x4, x4, 1
    005683e8add x1, x3, x4
    005683ecstr x1, [sp+432]
    005683f0orr x3, xzr, 32
    005683f4str x3, [sp+440]
    005683f8str x2, [sp+448]
    005683fcb 0x568400
    00568400
    00568400loc_568400:
    00568400str x1, [sp+408]
    00568404add x0, sp, 176
    00568408bl crypto/internal/fips140/nistec.p256BigToLittle
    0056840cldr x2, [sp+512]
    00568410ldr x3, [sp+496]
    00568414subs xzr, x2, 65
    00568418b.hs 0x568420
    0056841cb 0x568884
    00568420
    00568420loc_568420:
    00568420b 0x568424
    00568424
    00568424loc_568424:
    00568424sub x2, x2, 33
    00568428sub x4, xzr, x2
    0056842csbfm x4, x4, 63, 63
    00568430movz x5, 33
    00568434and x4, x4, x5
    00568438add x1, x3, x4
    0056843cstr x1, [sp+432]
    00568440orr x3, xzr, 32
    00568444str x3, [sp+440]
    00568448str x2, [sp+448]
    0056844cb 0x568450
    00568450
    00568450loc_568450:
    00568450str x1, [sp+400]
    00568454add x0, sp, 208
    00568458bl crypto/internal/fips140/nistec.p256BigToLittle
    0056845cadd x0, sp, 176
    00568460bl crypto/internal/fips140/nistec.p256LessThanP
    00568464str x0, [sp+320]
    00568468subs xzr, x0, 0
    0056846ccset x2, eq
    00568470strb w2, [sp+45]
    00568474cbz x0, 0x56847c
    00568478b 0x568480
    0056847c
    0056847cloc_56847c:
    0056847cb 0x56849c
    00568480
    00568480loc_568480:
    00568480add x0, sp, 208
    00568484bl crypto/internal/fips140/nistec.p256LessThanP
    00568488str x0, [sp+312]
    0056848csubs xzr, x0, 0
    00568490cset x1, eq
    00568494strb w1, [sp+45]
    00568498b 0x56849c
    0056849c
    0056849cloc_56849c:
    0056849cldrb w2, [sp+45]
    005684a0tbnz w2, 0, 0x5684a8
    005684a4b 0x5684e4
    005684a8
    005684a8loc_5684a8:
    005684a8adrp x0, 0x154000
    005684acadd x0, x0, 3498
    005684b0movz x1, 29
    005684b4bl errors.New
    005684b8str x0, [sp+416]
    005684bcstr x1, [sp+424]
    005684c0str xzr, [sp+360]
    005684c4ldr x1, [sp+416]
    005684c8ldr x2, [sp+424]
    005684ccstr x1, [sp+344]
    005684d0str x2, [sp+352]
    005684d4ldr x0, [sp+360]
    005684d8ldp x29, x30, [sp-8]
    005684dcadd sp, sp, 480
    005684e0ret x30
    005684e4
    005684e4loc_5684e4:
    005684e4add x0, sp, 176
    005684e8str x0, [sp+8]
    005684ecadd x0, sp, 176
    005684f0str x0, [sp+16]
    005684f4add x0, sp, 48
    005684f8str x0, [sp+24]
    005684fcbl crypto/internal/fips140/nistec.p256Mul.abi0
    00568500add x0, sp, 208
    00568504str x0, [sp+8]
    00568508add x0, sp, 208
    0056850cstr x0, [sp+16]
    00568510add x0, sp, 48
    00568514str x0, [sp+24]
    00568518bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056851cadd x0, sp, 176
    00568520add x1, sp, 208
    00568524bl crypto/internal/fips140/nistec.p256CheckOnCurve
    00568528str x0, [sp+376]
    0056852cstr x1, [sp+384]
    00568530cbnz x0, 0x568538
    00568534b 0x56855c
    00568538
    00568538loc_568538:
    00568538str xzr, [sp+360]
    0056853cldr x1, [sp+376]
    00568540ldr x2, [sp+384]
    00568544str x1, [sp+344]
    00568548str x2, [sp+352]
    0056854cldr x0, [sp+360]
    00568550ldp x29, x30, [sp-8]
    00568554add sp, sp, 480
    00568558ret x30
    0056855c
    0056855cloc_56855c:
    0056855cadrp x27, 0x48c000
    00568560add x27, x27, 3840
    00568564ldp x2, x3, [x27]
    00568568adrp x27, 0x48c000
    0056856cadd x27, x27, 3856
    00568570ldp x4, x5, [x27]
    00568574stp x2, x3, [sp+240]
    00568578stp x4, x5, [sp+256]
    0056857cldr x0, [sp+488]
    00568580add x1, sp, 176
    00568584bl crypto/internal/fips140/nistec.(*P256Point).Set
    00568588str x0, [sp+456]
    0056858cstr x0, [sp+360]
    00568590stp xzr, xzr, [sp+344]
    00568594ldr x0, [sp+360]
    00568598mov x1, xzr
    0056859cmov x2, xzr
    005685a0ldp x29, x30, [sp-8]
    005685a4add sp, sp, 480
    005685a8ret x30
    005685ac
    005685acloc_5685ac:
    005685acldr x3, [sp+504]
    005685b0str x3, [sp+320]
    005685b4subs xzr, x3, 33
    005685b8cset x3, eq
    005685bcstrb w3, [sp+45]
    005685c0b.eq 0x5685c8
    005685c4b 0x56862c
    005685c8
    005685c8loc_5685c8:
    005685c8ldr x1, [sp+504]
    005685ccldr x3, [sp+496]
    005685d0subs xzr, x1, 0
    005685d4b.hi 0x5685dc
    005685d8b 0x56887c
    005685dc
    005685dcloc_5685dc:
    005685dcldrb w3, [x3]
    005685e0subs wzr, w3, 2
    005685e4cset x3, eq
    005685e8strb w3, [sp+44]
    005685ecb.eq 0x5685f4
    005685f0b 0x5685f8
    005685f4
    005685f4loc_5685f4:
    005685f4b 0x568620
    005685f8
    005685f8loc_5685f8:
    005685f8ldr x1, [sp+504]
    005685fcldr x3, [sp+496]
    00568600subs xzr, x1, 0
    00568604b.hi 0x56860c
    00568608b 0x568874
    0056860c
    0056860cloc_56860c:
    0056860cldrb w3, [x3]
    00568610subs wzr, w3, 3
    00568614cset x3, eq
    00568618strb w3, [sp+44]
    0056861cb 0x568620
    00568620
    00568620loc_568620:
    00568620ldrb w3, [sp+44]
    00568624strb w3, [sp+45]
    00568628b 0x568630
    0056862c
    0056862cloc_56862c:
    0056862cb 0x568630
    00568630
    00568630loc_568630:
    00568630ldrb w3, [sp+45]
    00568634tbnz w3, 0, 0x56863c
    00568638b 0x568824
    0056863c
    0056863cloc_56863c:
    0056863cb 0x568640
    00568640
    00568640loc_568640:
    00568640add x20, sp, 80
    00568644adr x27, 16
    00568648stp x29, x27, [sp-24]
    0056864csub x29, sp, 24
    00568650bl fn_87cf8
    00568654sub x29, sp, 8
    00568658ldr x2, [sp+512]
    0056865cldr x3, [sp+496]
    00568660subs xzr, x2, 33
    00568664b.hs 0x56866c
    00568668b 0x56886c
    0056866c
    0056866cloc_56866c:
    0056866cb 0x568670
    00568670
    00568670loc_568670:
    00568670sub x2, x2, 1
    00568674sub x4, xzr, x2
    00568678sbfm x4, x4, 63, 63
    0056867cand x4, x4, 1
    00568680add x1, x3, x4
    00568684str x1, [sp+432]
    00568688orr x3, xzr, 32
    0056868cstr x3, [sp+440]
    00568690str x2, [sp+448]
    00568694b 0x568698
    00568698
    00568698loc_568698:
    00568698str x1, [sp+392]
    0056869cadd x0, sp, 80
    005686a0bl crypto/internal/fips140/nistec.p256BigToLittle
    005686a4add x0, sp, 80
    005686a8bl crypto/internal/fips140/nistec.p256LessThanP
    005686acstr x0, [sp+312]
    005686b0cbz x0, 0x5686b8
    005686b4b 0x5686f4
    005686b8
    005686b8loc_5686b8:
    005686b8adrp x0, 0x154000
    005686bcadd x0, x0, 3498
    005686c0movz x1, 29
    005686c4bl errors.New
    005686c8str x0, [sp+416]
    005686ccstr x1, [sp+424]
    005686d0str xzr, [sp+360]
    005686d4ldr x1, [sp+416]
    005686d8ldr x2, [sp+424]
    005686dcstr x1, [sp+344]
    005686e0str x2, [sp+352]
    005686e4ldr x0, [sp+360]
    005686e8ldp x29, x30, [sp-8]
    005686ecadd sp, sp, 480
    005686f0ret x30
    005686f4
    005686f4loc_5686f4:
    005686f4add x0, sp, 80
    005686f8str x0, [sp+8]
    005686fcadd x0, sp, 80
    00568700str x0, [sp+16]
    00568704add x0, sp, 48
    00568708str x0, [sp+24]
    0056870cbl crypto/internal/fips140/nistec.p256Mul.abi0
    00568710add x0, sp, 112
    00568714add x1, sp, 80
    00568718bl crypto/internal/fips140/nistec.p256Polynomial
    0056871cadd x0, sp, 112
    00568720add x1, sp, 112
    00568724bl crypto/internal/fips140/nistec.p256Sqrt
    00568728strb w0, [sp+44]
    0056872ctbnz w0, 0, 0x568734
    00568730b 0x5687e8
    00568734
    00568734loc_568734:
    00568734stp xzr, xzr, [sp+280]
    00568738stp xzr, xzr, [sp+296]
    0056873cadd x0, sp, 280
    00568740str x0, [sp+368]
    00568744str x0, [sp+8]
    00568748add x0, sp, 112
    0056874cstr x0, [sp+16]
    00568750bl crypto/internal/fips140/nistec.p256FromMont.abi0
    00568754ldr x0, [sp+368]
    00568758ldrsb x27, [x0]
    0056875cldr x0, [x0]
    00568760and x0, x0, 1
    00568764ldr x1, [sp+504]
    00568768ldr x2, [sp+496]
    0056876csubs xzr, x1, 0
    00568770b.hi 0x568778
    00568774b 0x568864
    00568778
    00568778loc_568778:
    00568778ldrb w1, [x2]
    0056877cand x1, x1, 1
    00568780eor x0, x0, x1
    00568784str x0, [sp+272]
    00568788add x1, sp, 112
    0056878cstr x1, [sp+8]
    00568790str x0, [sp+16]
    00568794bl crypto/internal/fips140/nistec.p256NegCond.abi0
    00568798adrp x27, 0x48c000
    0056879cadd x27, x27, 3840
    005687a0ldp x0, x1, [x27]
    005687a4adrp x27, 0x48c000
    005687a8add x27, x27, 3856
    005687acldp x2, x3, [x27]
    005687b0stp x0, x1, [sp+144]
    005687b4stp x2, x3, [sp+160]
    005687b8ldr x0, [sp+488]
    005687bcadd x1, sp, 80
    005687c0bl crypto/internal/fips140/nistec.(*P256Point).Set
    005687c4str x0, [sp+456]
    005687c8str x0, [sp+360]
    005687ccstp xzr, xzr, [sp+344]
    005687d0ldr x0, [sp+360]
    005687d4mov x1, xzr
    005687d8mov x2, xzr
    005687dcldp x29, x30, [sp-8]
    005687e0add sp, sp, 480
    005687e4ret x30
    005687e8
    005687e8loc_5687e8:
    005687e8adrp x0, 0x15b000
    005687ecadd x0, x0, 994
    005687f0movz x1, 38
    005687f4bl errors.New
    005687f8str x0, [sp+416]
    005687fcstr x1, [sp+424]
    00568800str xzr, [sp+360]
    00568804ldr x1, [sp+416]
    00568808ldr x2, [sp+424]
    0056880cstr x1, [sp+344]
    00568810str x2, [sp+352]
    00568814ldr x0, [sp+360]
    00568818ldp x29, x30, [sp-8]
    0056881cadd sp, sp, 480
    00568820ret x30
    00568824
    00568824loc_568824:
    00568824b 0x568828
    00568828
    00568828loc_568828:
    00568828adrp x0, 0x153000
    0056882cadd x0, x0, 1372
    00568830movz x1, 27
    00568834bl errors.New
    00568838str x0, [sp+416]
    0056883cstr x1, [sp+424]
    00568840str xzr, [sp+360]
    00568844ldr x1, [sp+416]
    00568848ldr x2, [sp+424]
    0056884cstr x1, [sp+344]
    00568850str x2, [sp+352]
    00568854ldr x0, [sp+360]
    00568858ldp x29, x30, [sp-8]
    0056885cadd sp, sp, 480
    00568860ret x30
    00568864
    00568864loc_568864:
    00568864mov x0, xzr
    00568868bl runtime.panicIndex
    0056886c
    0056886cloc_56886c:
    0056886cmovz x1, 33
    00568870bl runtime.panicSliceAcap
    00568874
    00568874loc_568874:
    00568874mov x0, xzr
    00568878bl runtime.panicIndex
    0056887c
    0056887cloc_56887c:
    0056887cmov x0, xzr
    00568880bl runtime.panicIndex
    00568884
    00568884loc_568884:
    00568884movz x1, 65
    00568888bl runtime.panicSliceAcap
    0056888c
    0056888cloc_56888c:
    0056888cmovz x1, 33
    00568890bl runtime.panicSliceAcap
    00568894
    00568894loc_568894:
    00568894mov x0, xzr
    00568898bl runtime.panicIndex
    0056889c
    0056889cloc_56889c:
    0056889cmov x0, xzr
    005688a0bl runtime.panicIndex
    005688a4hint
    005688a8
    005688a8loc_5688a8:
    005688a8stp x0, x1, [sp+8]
    005688acstp x2, x3, [sp+24]
    005688b0mov x3, x30
    005688b4bl runtime.morestack_noctxt.abi0
    005688b8ldp x0, x1, [sp+8]
    005688bcldp x2, x3, [sp+24]
    005688c0b 0x568260
    005688c4udf 0
    005688c8udf 0
    005688ccudf 0
    00568260
    005688d0
    005688d0crypto/internal/fips140/nistec.p256Polynomial: ; void crypto/internal/fips140/nistec.p256Polynomial(crypto/internal/fips140/nistec.p256Element * y2, crypto/internal/fips140/nistec.p256Element * x)
    005688d0ldr x16, [x28+16]
    005688d4sub x17, sp, 64
    005688d8subs xzr, x17, x16
    005688dcb.ls 0x568a40
    005688e0str x30, [sp-192]!
    005688e4stur x29, [sp-8]
    005688e8sub x29, sp, 8
    005688ecstr x0, [sp+200]
    005688f0str x1, [sp+208]
    005688f4str xzr, [sp+144]
    005688f8stp xzr, xzr, [sp+112]
    005688fcstp xzr, xzr, [sp+128]
    00568900add x0, sp, 112
    00568904str x0, [sp+152]
    00568908ldr x1, [sp+208]
    0056890cstr x0, [sp+8]
    00568910str x1, [sp+16]
    00568914orr x0, xzr, 1
    00568918str x0, [sp+24]
    0056891cbl crypto/internal/fips140/nistec.p256Sqr.abi0
    00568920ldr x0, [sp+152]
    00568924ldr x1, [sp+208]
    00568928ldr x2, [sp+152]
    0056892cstr x2, [sp+8]
    00568930str x0, [sp+16]
    00568934str x1, [sp+24]
    00568938bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056893cstp xzr, xzr, [sp+80]
    00568940stp xzr, xzr, [sp+96]
    00568944add x0, sp, 80
    00568948str x0, [sp+160]
    0056894cldr x1, [sp+208]
    00568950ldr x2, [sp+208]
    00568954bl crypto/internal/fips140/nistec.p256Add
    00568958ldr x1, [sp+160]
    0056895cldr x2, [sp+208]
    00568960ldr x0, [sp+160]
    00568964bl crypto/internal/fips140/nistec.p256Add
    00568968ldr x0, [sp+160]
    0056896cstr x0, [sp+8]
    00568970orr x0, xzr, 1
    00568974str x0, [sp+16]
    00568978bl crypto/internal/fips140/nistec.p256NegCond.abi0
    0056897cstp xzr, xzr, [sp+48]
    00568980stp xzr, xzr, [sp+64]
    00568984add x0, sp, 48
    00568988str x0, [sp+176]
    0056898cldrsb x27, [x0]
    00568990movz x1, 48607
    00568994movk x1, 0x29c40000
    00568998movk x1, 0xdf6200000000
    0056899cmovk x1, 0xd89c000000000000
    005689a0str x1, [x0]
    005689a4ldrsb x27, [x0]
    005689a8movz x1, 12432
    005689acmovk x1, 0x78840000
    005689b0movk x1, 0x5cd00000000
    005689b4movk x1, 0xacf0000000000000
    005689b8str x1, [x0+8]
    005689bcldrsb x27, [x0]
    005689c0movz x1, 11990
    005689c4movk x1, 0xf7210000
    005689c8movk x1, 0x20ab00000000
    005689ccmovk x1, 0xe5a2000000000000
    005689d0str x1, [x0+16]
    005689d4ldrsb x27, [x0]
    005689d8movz x1, 18484
    005689dcmovk x1, 0x4870000
    005689e0movk x1, 0x61d00000000
    005689e4movk x1, 0xdc30000000000000
    005689e8str x1, [x0+24]
    005689ecldr x0, [sp+176]
    005689f0str x0, [sp+168]
    005689f4ldr x1, [sp+152]
    005689f8ldr x2, [sp+160]
    005689fcldr x0, [sp+152]
    00568a00bl crypto/internal/fips140/nistec.p256Add
    00568a04ldr x1, [sp+152]
    00568a08ldr x2, [sp+168]
    00568a0cldr x0, [sp+152]
    00568a10bl crypto/internal/fips140/nistec.p256Add
    00568a14ldr x0, [sp+200]
    00568a18ldrsb x27, [x0]
    00568a1cldr x1, [sp+152]
    00568a20ldrsb x27, [x1]
    00568a24orr x2, xzr, 32
    00568a28bl runtime.memmove
    00568a2cldr x0, [sp+200]
    00568a30str x0, [sp+144]
    00568a34ldur x29, [sp-8]
    00568a38ldr x30, [sp], 192
    00568a3cret x30
    00568a40
    00568a40loc_568a40:
    00568a40stp x0, x1, [sp+8]
    00568a44mov x3, x30
    00568a48bl runtime.morestack_noctxt.abi0
    00568a4cldp x0, x1, [sp+8]
    00568a50b 0x5688d0
    00568a54udf 0
    00568a58udf 0
    00568a5cudf 0
    005688d0
    00568a60
    00568a60crypto/internal/fips140/nistec.p256CheckOnCurve: ; void crypto/internal/fips140/nistec.p256CheckOnCurve(crypto/internal/fips140/nistec.p256Element * x, crypto/internal/fips140/nistec.p256Element * y)
    00568a60ldr x16, [x28+16]
    00568a64sub x17, sp, 48
    00568a68subs xzr, x17, x16
    00568a6cb.ls 0x568b2c
    00568a70str x30, [sp-176]!
    00568a74stur x29, [sp-8]
    00568a78sub x29, sp, 8
    00568a7cstr x0, [sp+184]
    00568a80str x1, [sp+192]
    00568a84stp xzr, xzr, [sp+112]
    00568a88stp xzr, xzr, [sp+72]
    00568a8cstp xzr, xzr, [sp+88]
    00568a90add x0, sp, 72
    00568a94str x0, [sp+160]
    00568a98ldr x1, [sp+184]
    00568a9cbl crypto/internal/fips140/nistec.p256Polynomial
    00568aa0str x0, [sp+128]
    00568aa4stp xzr, xzr, [sp+40]
    00568aa8stp xzr, xzr, [sp+56]
    00568aacadd x2, sp, 40
    00568ab0str x2, [sp+136]
    00568ab4ldr x3, [sp+192]
    00568ab8str x2, [sp+8]
    00568abcstr x3, [sp+16]
    00568ac0orr x2, xzr, 1
    00568ac4str x2, [sp+24]
    00568ac8bl crypto/internal/fips140/nistec.p256Sqr.abi0
    00568accldr x1, [sp+128]
    00568ad0ldr x0, [sp+136]
    00568ad4bl crypto/internal/fips140/nistec.p256Equal
    00568ad8str x0, [sp+104]
    00568adcsubs xzr, x0, 1
    00568ae0b.ne 0x568ae8
    00568ae4b 0x568b14
    00568ae8
    00568ae8loc_568ae8:
    00568ae8adrp x0, 0x150000
    00568aecadd x0, x0, 3491
    00568af0movz x1, 23
    00568af4bl errors.New
    00568af8str x0, [sp+144]
    00568afcstr x1, [sp+152]
    00568b00str x0, [sp+112]
    00568b04str x1, [sp+120]
    00568b08ldur x29, [sp-8]
    00568b0cldr x30, [sp], 176
    00568b10ret x30
    00568b14
    00568b14loc_568b14:
    00568b14stp xzr, xzr, [sp+112]
    00568b18mov x0, xzr
    00568b1cmov x1, xzr
    00568b20ldur x29, [sp-8]
    00568b24ldr x30, [sp], 176
    00568b28ret x30
    00568b2c
    00568b2cloc_568b2c:
    00568b2cstp x0, x1, [sp+8]
    00568b30mov x3, x30
    00568b34bl runtime.morestack_noctxt.abi0
    00568b38ldp x0, x1, [sp+8]
    00568b3cb 0x568a60
    00568a60
    00568b40
    00568b40crypto/internal/fips140/nistec.p256LessThanP: ; void crypto/internal/fips140/nistec.p256LessThanP(crypto/internal/fips140/nistec.p256Element * x)
    00568b40ldr x16, [x28+16]
    00568b44sub x17, sp, 48
    00568b48subs xzr, x17, x16
    00568b4cb.ls 0x568cb8
    00568b50str x30, [sp-176]!
    00568b54stur x29, [sp-8]
    00568b58sub x29, sp, 8
    00568b5cstr x0, [sp+184]
    00568b60str xzr, [sp+8]
    00568b64str xzr, [sp+16]
    00568b68ldrsb x27, [x0]
    00568b6cldr x1, [x0]
    00568b70str x1, [sp+136]
    00568b74adrp x27, 0x48c000
    00568b78ldr x2, [x27+3872]
    00568b7cstr x2, [sp+128]
    00568b80subs x3, x1, x2
    00568b84sbc x3, xzr, xzr
    00568b88sub x3, xzr, x3
    00568b8csubs x4, x1, x2
    00568b90str x4, [sp+152]
    00568b94str x3, [sp+144]
    00568b98str x4, [sp+72]
    00568b9cstr x3, [sp+64]
    00568ba0str x3, [sp+16]
    00568ba4ldr x3, [sp+184]
    00568ba8ldrsb x27, [x3]
    00568bacldr x3, [x3+8]
    00568bb0str x3, [sp+120]
    00568bb4adrp x27, 0x48c000
    00568bb8ldr x4, [x27+3880]
    00568bbcstr x4, [sp+112]
    00568bc0subs x5, x1, x2
    00568bc4sbcs x5, x3, x4
    00568bc8subs x5, x1, x2
    00568bccsbcs x5, x3, x4
    00568bd0str x5, [sp+144]
    00568bd4subs x6, x1, x2
    00568bd8sbcs x6, x3, x4
    00568bdcsbc x6, xzr, xzr
    00568be0sub x6, xzr, x6
    00568be4str x6, [sp+152]
    00568be8str x5, [sp+56]
    00568becstr x6, [sp+48]
    00568bf0str x6, [sp+16]
    00568bf4ldr x5, [sp+184]
    00568bf8ldrsb x27, [x5]
    00568bfcldr x5, [x5+16]
    00568c00str x5, [sp+104]
    00568c04adrp x27, 0x48c000
    00568c08ldr x6, [x27+3888]
    00568c0cstr x6, [sp+96]
    00568c10sbcs x7, x5, x6
    00568c14subs x7, x1, x2
    00568c18sbcs x7, x3, x4
    00568c1csbcs x7, x5, x6
    00568c20str x7, [sp+152]
    00568c24subs x8, x1, x2
    00568c28sbcs x8, x3, x4
    00568c2csbcs x8, x5, x6
    00568c30sbc x8, xzr, xzr
    00568c34sub x8, xzr, x8
    00568c38str x8, [sp+144]
    00568c3cstr x7, [sp+40]
    00568c40str x8, [sp+32]
    00568c44str x8, [sp+16]
    00568c48ldr x7, [sp+184]
    00568c4cldrsb x27, [x7]
    00568c50ldr x7, [x7+24]
    00568c54str x7, [sp+88]
    00568c58adrp x27, 0x48c000
    00568c5cldr x8, [x27+3896]
    00568c60str x8, [sp+80]
    00568c64sbcs x9, x7, x8
    00568c68subs x9, x1, x2
    00568c6csbcs x9, x3, x4
    00568c70sbcs x9, x5, x6
    00568c74sbcs x9, x7, x8
    00568c78str x9, [sp+144]
    00568c7csubs x1, x1, x2
    00568c80sbcs x1, x3, x4
    00568c84sbcs x1, x5, x6
    00568c88sbcs x1, x7, x8
    00568c8csbc x1, xzr, xzr
    00568c90sub x1, xzr, x1
    00568c94str x1, [sp+152]
    00568c98str x9, [sp+24]
    00568c9cstr x1, [sp+160]
    00568ca0str x1, [sp+16]
    00568ca4str x1, [sp+8]
    00568ca8ldr x0, [sp+8]
    00568cacadd x29, sp, 168
    00568cb0add sp, sp, 176
    00568cb4ret x30
    00568cb8
    00568cb8loc_568cb8:
    00568cb8str x0, [sp+8]
    00568cbcmov x3, x30
    00568cc0bl runtime.morestack_noctxt.abi0
    00568cc4ldr x0, [sp+8]
    00568cc8b 0x568b40
    00568cccudf 0
    00568b40
    00568cd0
    00568cd0crypto/internal/fips140/nistec.p256BigToLittle: ; void crypto/internal/fips140/nistec.p256BigToLittle(crypto/internal/fips140/nistec.p256Element * l, uint8[32] * b)
    00568cd0ldr x16, [x28+16]
    00568cd4subs xzr, sp, x16
    00568cd8b.ls 0x568d00
    00568cdcstr x30, [sp-32]!
    00568ce0stur x29, [sp-8]
    00568ce4sub x29, sp, 8
    00568ce8str x0, [sp+40]
    00568cecstr x1, [sp+48]
    00568cf0bl crypto/internal/fips140/nistec.bytesToLimbs
    00568cf4ldur x29, [sp-8]
    00568cf8ldr x30, [sp], 32
    00568cfcret x30
    00568d00
    00568d00loc_568d00:
    00568d00stp x0, x1, [sp+8]
    00568d04mov x3, x30
    00568d08bl runtime.morestack_noctxt.abi0
    00568d0cldp x0, x1, [sp+8]
    00568d10b 0x568cd0
    00568d14udf 0
    00568d18udf 0
    00568d1cudf 0
    00568cd0
    00568d20
    00568d20crypto/internal/fips140/nistec.bytesToLimbs: ; void crypto/internal/fips140/nistec.bytesToLimbs(uint64[4] * l, uint8[32] * b)
    00568d20ldr x16, [x28+16]
    00568d24subs xzr, sp, x16
    00568d28b.ls 0x568e24
    00568d2cstr x30, [sp-80]!
    00568d30stur x29, [sp-8]
    00568d34sub x29, sp, 8
    00568d38str x0, [sp+88]
    00568d3cstr x1, [sp+96]
    00568d40ldrsb x27, [x1]
    00568d44b 0x568d48
    00568d48
    00568d48loc_568d48:
    00568d48add x0, x1, 24
    00568d4cstr x0, [sp+48]
    00568d50orr x2, xzr, 8
    00568d54str x2, [sp+56]
    00568d58str x2, [sp+64]
    00568d5cmov x1, x2
    00568d60bl crypto/internal/fips140deps/byteorder.BEUint64
    00568d64str x0, [sp+40]
    00568d68ldr x3, [sp+88]
    00568d6cldrsb x27, [x3]
    00568d70str x0, [x3]
    00568d74ldr x3, [sp+96]
    00568d78ldrsb x27, [x3]
    00568d7cb 0x568d80
    00568d80
    00568d80loc_568d80:
    00568d80add x0, x3, 16
    00568d84str x0, [sp+48]
    00568d88orr x2, xzr, 16
    00568d8cstr x2, [sp+56]
    00568d90str x2, [sp+64]
    00568d94mov x1, x2
    00568d98bl crypto/internal/fips140deps/byteorder.BEUint64
    00568d9cstr x0, [sp+40]
    00568da0ldr x3, [sp+88]
    00568da4ldrsb x27, [x3]
    00568da8str x0, [x3+8]
    00568dacldr x3, [sp+96]
    00568db0ldrsb x27, [x3]
    00568db4b 0x568db8
    00568db8
    00568db8loc_568db8:
    00568db8add x0, x3, 8
    00568dbcstr x0, [sp+48]
    00568dc0orr x2, xzr, 24
    00568dc4str x2, [sp+56]
    00568dc8str x2, [sp+64]
    00568dccmov x1, x2
    00568dd0bl crypto/internal/fips140deps/byteorder.BEUint64
    00568dd4str x0, [sp+40]
    00568dd8ldr x3, [sp+88]
    00568ddcldrsb x27, [x3]
    00568de0str x0, [x3+16]
    00568de4ldr x0, [sp+96]
    00568de8ldrsb x27, [x0]
    00568decb 0x568df0
    00568df0
    00568df0loc_568df0:
    00568df0str x0, [sp+48]
    00568df4orr x2, xzr, 32
    00568df8str x2, [sp+56]
    00568dfcstr x2, [sp+64]
    00568e00mov x1, x2
    00568e04bl crypto/internal/fips140deps/byteorder.BEUint64
    00568e08str x0, [sp+40]
    00568e0cldr x3, [sp+88]
    00568e10ldrsb x27, [x3]
    00568e14str x0, [x3+24]
    00568e18ldur x29, [sp-8]
    00568e1cldr x30, [sp], 80
    00568e20ret x30
    00568e24
    00568e24loc_568e24:
    00568e24stp x0, x1, [sp+8]
    00568e28mov x3, x30
    00568e2cbl runtime.morestack_noctxt.abi0
    00568e30ldp x0, x1, [sp+8]
    00568e34b 0x568d20
    00568e38udf 0
    00568e3cudf 0
    00568d20
    00568e40
    00568e40crypto/internal/fips140/nistec.p256LittleToBig: ; void crypto/internal/fips140/nistec.p256LittleToBig(uint8[32] * b, crypto/internal/fips140/nistec.p256Element * l)
    00568e40ldr x16, [x28+16]
    00568e44subs xzr, sp, x16
    00568e48b.ls 0x568e70
    00568e4cstr x30, [sp-32]!
    00568e50stur x29, [sp-8]
    00568e54sub x29, sp, 8
    00568e58str x0, [sp+40]
    00568e5cstr x1, [sp+48]
    00568e60bl crypto/internal/fips140/nistec.limbsToBytes
    00568e64ldur x29, [sp-8]
    00568e68ldr x30, [sp], 32
    00568e6cret x30
    00568e70
    00568e70loc_568e70:
    00568e70stp x0, x1, [sp+8]
    00568e74mov x3, x30
    00568e78bl runtime.morestack_noctxt.abi0
    00568e7cldp x0, x1, [sp+8]
    00568e80b 0x568e40
    00568e84udf 0
    00568e88udf 0
    00568e8cudf 0
    00568e40
    00568e90
    00568e90crypto/internal/fips140/nistec.limbsToBytes: ; void crypto/internal/fips140/nistec.limbsToBytes(uint8[32] * b, uint64[4] * l)
    00568e90ldr x16, [x28+16]
    00568e94subs xzr, sp, x16
    00568e98b.ls 0x568f98
    00568e9cstr x30, [sp-112]!
    00568ea0stur x29, [sp-8]
    00568ea4sub x29, sp, 8
    00568ea8str x0, [sp+120]
    00568eacstr x1, [sp+128]
    00568eb0ldrsb x27, [x0]
    00568eb4b 0x568eb8
    00568eb8
    00568eb8loc_568eb8:
    00568eb8add x0, x0, 24
    00568ebcstr x0, [sp+80]
    00568ec0orr x2, xzr, 8
    00568ec4str x2, [sp+88]
    00568ec8str x2, [sp+96]
    00568eccldr x4, [sp+128]
    00568ed0ldrsb x27, [x4]
    00568ed4ldr x3, [x4]
    00568ed8str x3, [sp+72]
    00568edcmov x1, x2
    00568ee0bl crypto/internal/fips140deps/byteorder.BEPutUint64
    00568ee4ldr x4, [sp+120]
    00568ee8ldrsb x27, [x4]
    00568eecb 0x568ef0
    00568ef0
    00568ef0loc_568ef0:
    00568ef0add x0, x4, 16
    00568ef4str x0, [sp+80]
    00568ef8orr x2, xzr, 16
    00568efcstr x2, [sp+88]
    00568f00str x2, [sp+96]
    00568f04ldr x4, [sp+128]
    00568f08ldrsb x27, [x4]
    00568f0cldr x3, [x4+8]
    00568f10str x3, [sp+64]
    00568f14mov x1, x2
    00568f18bl crypto/internal/fips140deps/byteorder.BEPutUint64
    00568f1cldr x4, [sp+120]
    00568f20ldrsb x27, [x4]
    00568f24b 0x568f28
    00568f28
    00568f28loc_568f28:
    00568f28add x0, x4, 8
    00568f2cstr x0, [sp+80]
    00568f30orr x2, xzr, 24
    00568f34str x2, [sp+88]
    00568f38str x2, [sp+96]
    00568f3cldr x4, [sp+128]
    00568f40ldrsb x27, [x4]
    00568f44ldr x3, [x4+16]
    00568f48str x3, [sp+56]
    00568f4cmov x1, x2
    00568f50bl crypto/internal/fips140deps/byteorder.BEPutUint64
    00568f54ldr x4, [sp+120]
    00568f58ldrsb x27, [x4]
    00568f5cb 0x568f60
    00568f60
    00568f60loc_568f60:
    00568f60str x4, [sp+80]
    00568f64orr x2, xzr, 32
    00568f68str x2, [sp+88]
    00568f6cstr x2, [sp+96]
    00568f70ldr x4, [sp+128]
    00568f74ldrsb x27, [x4]
    00568f78ldr x3, [x4+24]
    00568f7cstr x3, [sp+48]
    00568f80ldr x0, [sp+80]
    00568f84mov x1, x2
    00568f88bl crypto/internal/fips140deps/byteorder.BEPutUint64
    00568f8cldur x29, [sp-8]
    00568f90ldr x30, [sp], 112
    00568f94ret x30
    00568f98
    00568f98loc_568f98:
    00568f98stp x0, x1, [sp+8]
    00568f9cmov x3, x30
    00568fa0bl runtime.morestack_noctxt.abi0
    00568fa4ldp x0, x1, [sp+8]
    00568fa8b 0x568e90
    00568facudf 0
    00568e90
    00568fb0
    00568fb0crypto/internal/fips140/nistec.p256Add: ; void crypto/internal/fips140/nistec.p256Add(crypto/internal/fips140/nistec.p256Element * res, crypto/internal/fips140/nistec.p256Element * x, crypto/internal/fips140/nistec.p256Element * y)
    00568fb0ldr x16, [x28+16]
    00568fb4sub x17, sp, 320
    00568fb8subs xzr, x17, x16
    00568fbcb.ls 0x569584
    00568fc0sub x20, sp, 448
    00568fc4stp x29, x30, [x20-8]
    00568fc8add sp, x20, 0
    00568fccsub x29, sp, 8
    00568fd0str x0, [sp+456]
    00568fd4str x1, [sp+464]
    00568fd8str x2, [sp+472]
    00568fdcstr xzr, [sp+40]
    00568fe0str xzr, [sp+48]
    00568fe4b 0x568fe8
    00568fe8
    00568fe8loc_568fe8:
    00568fe8stp xzr, xzr, [sp+248]
    00568fecstp xzr, xzr, [sp+264]
    00568ff0add x2, sp, 248
    00568ff4ldrsb x27, [x2]
    00568ff8b 0x568ffc
    00568ffc
    00568ffcloc_568ffc:
    00568ffcstr x2, [sp+416]
    00569000orr x2, xzr, 4
    00569004str x2, [sp+424]
    00569008str x2, [sp+432]
    0056900cldr x3, [sp+464]
    00569010ldrsb x27, [x3]
    00569014ldr x3, [x3]
    00569018str x3, [sp+240]
    0056901cldr x4, [sp+472]
    00569020ldrsb x27, [x4]
    00569024ldr x4, [x4]
    00569028str x4, [sp+232]
    0056902cadds x5, x3, x4
    00569030str x5, [sp+288]
    00569034adds x3, x3, x4
    00569038adc x3, xzr, xzr
    0056903cstr x3, [sp+280]
    00569040str x5, [sp+80]
    00569044str x3, [sp+72]
    00569048ldr x1, [sp+424]
    0056904cldr x3, [sp+416]
    00569050subs xzr, x1, 0
    00569054b.hi 0x56905c
    00569058b 0x569578
    0056905c
    0056905cloc_56905c:
    0056905cstr x5, [x3]
    00569060ldr x3, [sp+72]
    00569064str x3, [sp+40]
    00569068ldr x4, [sp+464]
    0056906cldrsb x27, [x4]
    00569070ldr x4, [x4+8]
    00569074str x4, [sp+224]
    00569078ldr x5, [sp+472]
    0056907cldrsb x27, [x5]
    00569080ldr x5, [x5+8]
    00569084str x5, [sp+216]
    00569088movn x6, 0
    0056908cadds x6, x3, x6
    00569090adcs x6, x4, x5
    00569094adc x6, xzr, xzr
    00569098movn x7, 0
    0056909cadds x3, x3, x7
    005690a0adcs x3, x4, x5
    005690a4str x3, [sp+280]
    005690a8str x6, [sp+288]
    005690acstr x3, [sp+64]
    005690b0str x6, [sp+56]
    005690b4ldr x1, [sp+424]
    005690b8ldr x4, [sp+416]
    005690bcsubs xzr, x1, 1
    005690c0b.hi 0x5690c8
    005690c4b 0x569570
    005690c8
    005690c8loc_5690c8:
    005690c8str x3, [x4+8]
    005690ccldr x3, [sp+56]
    005690d0str x3, [sp+40]
    005690d4ldr x4, [sp+464]
    005690d8ldrsb x27, [x4]
    005690dcldr x4, [x4+16]
    005690e0str x4, [sp+208]
    005690e4ldr x5, [sp+472]
    005690e8ldrsb x27, [x5]
    005690ecldr x5, [x5+16]
    005690f0str x5, [sp+200]
    005690f4movn x6, 0
    005690f8adds x6, x3, x6
    005690fcadcs x6, x4, x5
    00569100str x6, [sp+288]
    00569104movn x7, 0
    00569108adds x3, x3, x7
    0056910cadcs x3, x4, x5
    00569110adc x3, xzr, xzr
    00569114str x3, [sp+280]
    00569118str x6, [sp+384]
    0056911cstr x3, [sp+376]
    00569120ldr x1, [sp+424]
    00569124ldr x3, [sp+416]
    00569128subs xzr, x1, 2
    0056912cb.hi 0x569134
    00569130b 0x569568
    00569134
    00569134loc_569134:
    00569134str x6, [x3+16]
    00569138ldr x3, [sp+376]
    0056913cstr x3, [sp+40]
    00569140ldr x4, [sp+464]
    00569144ldrsb x27, [x4]
    00569148ldr x4, [x4+24]
    0056914cstr x4, [sp+192]
    00569150ldr x5, [sp+472]
    00569154ldrsb x27, [x5]
    00569158ldr x5, [x5+24]
    0056915cstr x5, [sp+184]
    00569160movn x6, 0
    00569164adds x6, x3, x6
    00569168adcs x6, x4, x5
    0056916cstr x6, [sp+280]
    00569170movn x7, 0
    00569174adds x3, x3, x7
    00569178adcs x3, x4, x5
    0056917cadc x3, xzr, xzr
    00569180str x3, [sp+288]
    00569184str x6, [sp+368]
    00569188str x3, [sp+360]
    0056918cldr x1, [sp+424]
    00569190ldr x3, [sp+416]
    00569194subs xzr, x1, 3
    00569198b.hi 0x5691a0
    0056919cb 0x569560
    005691a0
    005691a0loc_5691a0:
    005691a0str x6, [x3+24]
    005691a4ldr x3, [sp+360]
    005691a8str x3, [sp+40]
    005691acb 0x5691b0
    005691b0
    005691b0loc_5691b0:
    005691b0stp xzr, xzr, [sp+152]
    005691b4stp xzr, xzr, [sp+168]
    005691b8add x3, sp, 152
    005691bcldrsb x27, [x3]
    005691c0b 0x5691c4
    005691c4
    005691c4loc_5691c4:
    005691c4str x3, [sp+392]
    005691c8str x2, [sp+400]
    005691ccstr x2, [sp+408]
    005691d0ldr x1, [sp+424]
    005691d4ldr x2, [sp+416]
    005691d8subs xzr, x1, 0
    005691dcb.hi 0x5691e4
    005691e0b 0x569558
    005691e4
    005691e4loc_5691e4:
    005691e4ldr x2, [x2]
    005691e8str x2, [sp+144]
    005691ecadrp x27, 0x48b000
    005691f0ldr x3, [x27+3872]
    005691f4str x3, [sp+136]
    005691f8subs x4, x2, x3
    005691fcstr x4, [sp+288]
    00569200subs x2, x2, x3
    00569204sbc x2, xzr, xzr
    00569208sub x2, xzr, x2
    0056920cstr x2, [sp+280]
    00569210str x4, [sp+352]
    00569214str x2, [sp+344]
    00569218ldr x1, [sp+400]
    0056921cldr x2, [sp+392]
    00569220subs xzr, x1, 0
    00569224b.hi 0x56922c
    00569228b 0x569550
    0056922c
    0056922cloc_56922c:
    0056922cstr x4, [x2]
    00569230ldr x2, [sp+344]
    00569234str x2, [sp+48]
    00569238ldr x1, [sp+424]
    0056923cldr x3, [sp+416]
    00569240subs xzr, x1, 1
    00569244b.hi 0x56924c
    00569248b 0x569548
    0056924c
    0056924cloc_56924c:
    0056924cldr x3, [x3+8]
    00569250str x3, [sp+128]
    00569254adrp x27, 0x48b000
    00569258ldr x4, [x27+3880]
    0056925cstr x4, [sp+120]
    00569260subs x5, xzr, x2
    00569264sbcs x5, x3, x4
    00569268str x5, [sp+280]
    0056926csubs x2, xzr, x2
    00569270sbcs x2, x3, x4
    00569274sbc x2, xzr, xzr
    00569278sub x2, xzr, x2
    0056927cstr x2, [sp+288]
    00569280str x5, [sp+336]
    00569284str x2, [sp+328]
    00569288ldr x1, [sp+400]
    0056928cldr x2, [sp+392]
    00569290subs xzr, x1, 1
    00569294b.hi 0x56929c
    00569298b 0x569540
    0056929c
    0056929cloc_56929c:
    0056929cstr x5, [x2+8]
    005692a0ldr x2, [sp+328]
    005692a4str x2, [sp+48]
    005692a8ldr x1, [sp+424]
    005692acldr x3, [sp+416]
    005692b0subs xzr, x1, 2
    005692b4b.hi 0x5692bc
    005692b8b 0x569538
    005692bc
    005692bcloc_5692bc:
    005692bcldr x3, [x3+16]
    005692c0str x3, [sp+112]
    005692c4adrp x27, 0x48b000
    005692c8ldr x4, [x27+3888]
    005692ccstr x4, [sp+104]
    005692d0subs x5, xzr, x2
    005692d4sbcs x5, x3, x4
    005692d8sbc x5, xzr, xzr
    005692dcsub x5, xzr, x5
    005692e0subs x2, xzr, x2
    005692e4sbcs x2, x3, x4
    005692e8str x2, [sp+288]
    005692ecstr x5, [sp+280]
    005692f0str x2, [sp+320]
    005692f4str x5, [sp+312]
    005692f8ldr x1, [sp+400]
    005692fcldr x3, [sp+392]
    00569300subs xzr, x1, 2
    00569304b.hi 0x56930c
    00569308b 0x569530
    0056930c
    0056930cloc_56930c:
    0056930cstr x2, [x3+16]
    00569310ldr x2, [sp+312]
    00569314str x2, [sp+48]
    00569318ldr x1, [sp+424]
    0056931cldr x3, [sp+416]
    00569320subs xzr, x1, 3
    00569324b.hi 0x56932c
    00569328b 0x569528
    0056932c
    0056932cloc_56932c:
    0056932cldr x3, [x3+24]
    00569330str x3, [sp+96]
    00569334adrp x27, 0x48b000
    00569338ldr x4, [x27+3896]
    0056933cstr x4, [sp+88]
    00569340subs x5, xzr, x2
    00569344sbcs x5, x3, x4
    00569348sbc x5, xzr, xzr
    0056934csub x5, xzr, x5
    00569350subs x2, xzr, x2
    00569354sbcs x2, x3, x4
    00569358str x2, [sp+280]
    0056935cstr x5, [sp+288]
    00569360str x2, [sp+304]
    00569364str x5, [sp+296]
    00569368ldr x1, [sp+400]
    0056936cldr x3, [sp+392]
    00569370subs xzr, x1, 3
    00569374b.hi 0x56937c
    00569378b 0x569520
    0056937c
    0056937cloc_56937c:
    0056937cstr x2, [x3+24]
    00569380ldr x2, [sp+296]
    00569384str x2, [sp+48]
    00569388ldr x3, [sp+40]
    0056938ceor x2, x3, x2
    00569390sub x3, x2, 1
    00569394str x3, [sp+32]
    00569398ldr x1, [sp+424]
    0056939cldr x4, [sp+416]
    005693a0subs xzr, x1, 0
    005693a4b.hi 0x5693ac
    005693a8b 0x569518
    005693ac
    005693acloc_5693ac:
    005693acldr x4, [x4]
    005693b0sub x2, xzr, x2
    005693b4and x2, x4, x2
    005693b8ldr x1, [sp+400]
    005693bcldr x4, [sp+392]
    005693c0subs xzr, x1, 0
    005693c4b.hi 0x5693cc
    005693c8b 0x569510
    005693cc
    005693ccloc_5693cc:
    005693ccldr x5, [sp+456]
    005693d0ldrsb x27, [x5]
    005693d4ldr x4, [x4]
    005693d8and x3, x4, x3
    005693dcorr x2, x2, x3
    005693e0str x2, [x5]
    005693e4ldr x1, [sp+424]
    005693e8ldr x2, [sp+416]
    005693ecsubs xzr, x1, 1
    005693f0b.hi 0x5693f8
    005693f4b 0x569508
    005693f8
    005693f8loc_5693f8:
    005693f8ldr x2, [x2+8]
    005693fcldr x3, [sp+32]
    00569400bic x2, x2, x3
    00569404ldr x1, [sp+400]
    00569408ldr x3, [sp+392]
    0056940csubs xzr, x1, 1
    00569410b.hi 0x569418
    00569414b 0x569500
    00569418
    00569418loc_569418:
    00569418ldr x4, [sp+456]
    0056941cldrsb x27, [x4]
    00569420ldr x3, [x3+8]
    00569424ldr x5, [sp+32]
    00569428and x3, x3, x5
    0056942corr x2, x2, x3
    00569430str x2, [x4+8]
    00569434ldr x1, [sp+424]
    00569438ldr x2, [sp+416]
    0056943csubs xzr, x1, 2
    00569440b.hi 0x569448
    00569444b 0x5694f8
    00569448
    00569448loc_569448:
    00569448ldr x2, [x2+16]
    0056944cldr x3, [sp+32]
    00569450bic x2, x2, x3
    00569454ldr x1, [sp+400]
    00569458ldr x3, [sp+392]
    0056945csubs xzr, x1, 2
    00569460b.hi 0x569468
    00569464b 0x5694f0
    00569468
    00569468loc_569468:
    00569468ldr x4, [sp+456]
    0056946cldrsb x27, [x4]
    00569470ldr x3, [x3+16]
    00569474ldr x5, [sp+32]
    00569478and x3, x3, x5
    0056947corr x2, x2, x3
    00569480str x2, [x4+16]
    00569484ldr x1, [sp+424]
    00569488ldr x2, [sp+416]
    0056948csubs xzr, x1, 3
    00569490b.hi 0x569498
    00569494b 0x5694e8
    00569498
    00569498loc_569498:
    00569498ldr x2, [x2+24]
    0056949cldr x3, [sp+32]
    005694a0bic x2, x2, x3
    005694a4ldr x1, [sp+400]
    005694a8ldr x3, [sp+392]
    005694acsubs xzr, x1, 3
    005694b0b.hi 0x5694b8
    005694b4b 0x5694e0
    005694b8
    005694b8loc_5694b8:
    005694b8ldr x0, [sp+456]
    005694bcldrsb x27, [x0]
    005694c0ldr x1, [x3+24]
    005694c4ldr x3, [sp+32]
    005694c8and x1, x1, x3
    005694ccorr x1, x2, x1
    005694d0str x1, [x0+24]
    005694d4ldp x29, x30, [sp-8]
    005694d8add sp, sp, 448
    005694dcret x30
    005694e0
    005694e0loc_5694e0:
    005694e0orr x0, xzr, 3
    005694e4bl runtime.panicIndex
    005694e8
    005694e8loc_5694e8:
    005694e8orr x0, xzr, 3
    005694ecbl runtime.panicIndex
    005694f0
    005694f0loc_5694f0:
    005694f0orr x0, xzr, 2
    005694f4bl runtime.panicIndex
    005694f8
    005694f8loc_5694f8:
    005694f8orr x0, xzr, 2
    005694fcbl runtime.panicIndex
    00569500
    00569500loc_569500:
    00569500orr x0, xzr, 1
    00569504bl runtime.panicIndex
    00569508
    00569508loc_569508:
    00569508orr x0, xzr, 1
    0056950cbl runtime.panicIndex
    00569510
    00569510loc_569510:
    00569510mov x0, xzr
    00569514bl runtime.panicIndex
    00569518
    00569518loc_569518:
    00569518mov x0, xzr
    0056951cbl runtime.panicIndex
    00569520
    00569520loc_569520:
    00569520orr x0, xzr, 3
    00569524bl runtime.panicIndex
    00569528
    00569528loc_569528:
    00569528orr x0, xzr, 3
    0056952cbl runtime.panicIndex
    00569530
    00569530loc_569530:
    00569530orr x0, xzr, 2
    00569534bl runtime.panicIndex
    00569538
    00569538loc_569538:
    00569538orr x0, xzr, 2
    0056953cbl runtime.panicIndex
    00569540
    00569540loc_569540:
    00569540orr x0, xzr, 1
    00569544bl runtime.panicIndex
    00569548
    00569548loc_569548:
    00569548orr x0, xzr, 1
    0056954cbl runtime.panicIndex
    00569550
    00569550loc_569550:
    00569550mov x0, xzr
    00569554bl runtime.panicIndex
    00569558
    00569558loc_569558:
    00569558mov x0, xzr
    0056955cbl runtime.panicIndex
    00569560
    00569560loc_569560:
    00569560orr x0, xzr, 3
    00569564bl runtime.panicIndex
    00569568
    00569568loc_569568:
    00569568orr x0, xzr, 2
    0056956cbl runtime.panicIndex
    00569570
    00569570loc_569570:
    00569570orr x0, xzr, 1
    00569574bl runtime.panicIndex
    00569578
    00569578loc_569578:
    00569578mov x0, xzr
    0056957cbl runtime.panicIndex
    00569580hint
    00569584
    00569584loc_569584:
    00569584stp x0, x1, [sp+8]
    00569588str x2, [sp+24]
    0056958cmov x3, x30
    00569590bl runtime.morestack_noctxt.abi0
    00569594ldp x0, x1, [sp+8]
    00569598ldr x2, [sp+24]
    0056959cb 0x568fb0
    00568fb0
    005695a0
    005695a0crypto/internal/fips140/nistec.p256Sqrt: ; void crypto/internal/fips140/nistec.p256Sqrt(crypto/internal/fips140/nistec.p256Element * e, crypto/internal/fips140/nistec.p256Element * x)
    005695a0ldr x16, [x28+16]
    005695a4sub x17, sp, 32
    005695a8subs xzr, x17, x16
    005695acb.ls 0x569814
    005695b0str x30, [sp-160]!
    005695b4stur x29, [sp-8]
    005695b8sub x29, sp, 8
    005695bcstr x0, [sp+168]
    005695c0str x1, [sp+176]
    005695c4strb wzr, [sp+47]
    005695c8stp xzr, xzr, [sp+80]
    005695ccstp xzr, xzr, [sp+96]
    005695d0add x0, sp, 80
    005695d4str x0, [sp+144]
    005695d8stp xzr, xzr, [sp+48]
    005695dcstp xzr, xzr, [sp+64]
    005695e0add x0, sp, 48
    005695e4str x0, [sp+136]
    005695e8ldr x0, [sp+144]
    005695ecstr x0, [sp+128]
    005695f0ldr x0, [sp+136]
    005695f4str x0, [sp+120]
    005695f8ldr x0, [sp+176]
    005695fcldr x1, [sp+128]
    00569600str x1, [sp+8]
    00569604str x0, [sp+16]
    00569608orr x0, xzr, 1
    0056960cstr x0, [sp+24]
    00569610bl crypto/internal/fips140/nistec.p256Sqr.abi0
    00569614ldr x0, [sp+176]
    00569618ldr x1, [sp+128]
    0056961cldr x2, [sp+128]
    00569620str x2, [sp+8]
    00569624str x0, [sp+16]
    00569628str x1, [sp+24]
    0056962cbl crypto/internal/fips140/nistec.p256Mul.abi0
    00569630ldr x0, [sp+128]
    00569634ldr x1, [sp+120]
    00569638str x1, [sp+8]
    0056963cstr x0, [sp+16]
    00569640orr x0, xzr, 2
    00569644str x0, [sp+24]
    00569648bl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056964cldr x0, [sp+128]
    00569650ldr x1, [sp+120]
    00569654ldr x2, [sp+128]
    00569658str x2, [sp+8]
    0056965cstr x0, [sp+16]
    00569660str x1, [sp+24]
    00569664bl crypto/internal/fips140/nistec.p256Mul.abi0
    00569668ldr x0, [sp+128]
    0056966cldr x1, [sp+120]
    00569670str x1, [sp+8]
    00569674str x0, [sp+16]
    00569678orr x0, xzr, 4
    0056967cstr x0, [sp+24]
    00569680bl crypto/internal/fips140/nistec.p256Sqr.abi0
    00569684ldr x0, [sp+128]
    00569688ldr x1, [sp+120]
    0056968cldr x2, [sp+128]
    00569690str x2, [sp+8]
    00569694str x0, [sp+16]
    00569698str x1, [sp+24]
    0056969cbl crypto/internal/fips140/nistec.p256Mul.abi0
    005696a0ldr x0, [sp+128]
    005696a4ldr x1, [sp+120]
    005696a8str x1, [sp+8]
    005696acstr x0, [sp+16]
    005696b0orr x0, xzr, 8
    005696b4str x0, [sp+24]
    005696b8bl crypto/internal/fips140/nistec.p256Sqr.abi0
    005696bcldr x0, [sp+128]
    005696c0ldr x1, [sp+120]
    005696c4ldr x2, [sp+128]
    005696c8str x2, [sp+8]
    005696ccstr x0, [sp+16]
    005696d0str x1, [sp+24]
    005696d4bl crypto/internal/fips140/nistec.p256Mul.abi0
    005696d8ldr x0, [sp+128]
    005696dcldr x1, [sp+120]
    005696e0str x1, [sp+8]
    005696e4str x0, [sp+16]
    005696e8orr x0, xzr, 16
    005696ecstr x0, [sp+24]
    005696f0bl crypto/internal/fips140/nistec.p256Sqr.abi0
    005696f4ldr x0, [sp+128]
    005696f8ldr x1, [sp+120]
    005696fcldr x2, [sp+128]
    00569700str x2, [sp+8]
    00569704str x0, [sp+16]
    00569708str x1, [sp+24]
    0056970cbl crypto/internal/fips140/nistec.p256Mul.abi0
    00569710ldr x0, [sp+128]
    00569714ldr x1, [sp+128]
    00569718str x1, [sp+8]
    0056971cstr x0, [sp+16]
    00569720orr x0, xzr, 32
    00569724str x0, [sp+24]
    00569728bl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056972cldr x0, [sp+176]
    00569730ldr x1, [sp+128]
    00569734ldr x2, [sp+128]
    00569738str x2, [sp+8]
    0056973cstr x0, [sp+16]
    00569740str x1, [sp+24]
    00569744bl crypto/internal/fips140/nistec.p256Mul.abi0
    00569748ldr x0, [sp+128]
    0056974cldr x1, [sp+128]
    00569750str x1, [sp+8]
    00569754str x0, [sp+16]
    00569758orr x0, xzr, 96
    0056975cstr x0, [sp+24]
    00569760bl crypto/internal/fips140/nistec.p256Sqr.abi0
    00569764ldr x0, [sp+176]
    00569768ldr x1, [sp+128]
    0056976cldr x2, [sp+128]
    00569770str x2, [sp+8]
    00569774str x0, [sp+16]
    00569778str x1, [sp+24]
    0056977cbl crypto/internal/fips140/nistec.p256Mul.abi0
    00569780ldr x0, [sp+128]
    00569784ldr x1, [sp+128]
    00569788str x1, [sp+8]
    0056978cstr x0, [sp+16]
    00569790movz x0, 94
    00569794str x0, [sp+24]
    00569798bl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056979cldr x0, [sp+128]
    005697a0ldr x1, [sp+120]
    005697a4str x1, [sp+8]
    005697a8str x0, [sp+16]
    005697acorr x0, xzr, 1
    005697b0str x0, [sp+24]
    005697b4bl crypto/internal/fips140/nistec.p256Sqr.abi0
    005697b8ldr x1, [sp+176]
    005697bcldr x0, [sp+120]
    005697c0bl crypto/internal/fips140/nistec.p256Equal
    005697c4str x0, [sp+112]
    005697c8subs xzr, x0, 1
    005697ccb.ne 0x5697d4
    005697d0b 0x5697e8
    005697d4
    005697d4loc_5697d4:
    005697d4strb wzr, [sp+47]
    005697d8mov x0, xzr
    005697dcldur x29, [sp-8]
    005697e0ldr x30, [sp], 160
    005697e4ret x30
    005697e8
    005697e8loc_5697e8:
    005697e8ldr x0, [sp+168]
    005697ecldrsb x27, [x0]
    005697f0ldr x1, [sp+128]
    005697f4ldrsb x27, [x1]
    005697f8orr x2, xzr, 32
    005697fcbl runtime.memmove
    00569800orr x0, xzr, 1
    00569804strb w0, [sp+47]
    00569808ldur x29, [sp-8]
    0056980cldr x30, [sp], 160
    00569810ret x30
    00569814
    00569814loc_569814:
    00569814stp x0, x1, [sp+8]
    00569818mov x3, x30
    0056981cbl runtime.morestack_noctxt.abi0
    00569820ldp x0, x1, [sp+8]
    00569824b 0x5695a0
    00569828udf 0
    0056982cudf 0
    005695a0
    00569830
    00569830crypto/internal/fips140/nistec.init.0: ; void crypto/internal/fips140/nistec.init.0(void)
    00569830ldr x16, [x28+16]
    00569834subs xzr, sp, x16
    00569838b.ls 0x569898
    0056983cstr x30, [sp-32]!
    00569840stur x29, [sp-8]
    00569844sub x29, sp, 8
    00569848adrp x0, 0x48e000
    0056984cadd x0, x0, 1952
    00569850str x0, [sp+16]
    00569854ldr x0, [sp+16]
    00569858adrp x27, 0x4e2000
    0056985cldr w1, [x27+3056]
    00569860cbz w1, 0x569868
    00569864b 0x56986c
    00569868
    00569868loc_569868:
    00569868b 0x569884
    0056986c
    0056986cloc_56986c:
    0056986cbl runtime.gcWriteBarrier2
    00569870str x0, [x25]
    00569874adrp x27, 0x4b8000
    00569878ldr x1, [x27+416]
    0056987cstr x1, [x25+8]
    00569880b 0x569884
    00569884
    00569884loc_569884:
    00569884adrp x27, 0x4b8000
    00569888str x0, [x27+416]
    0056988cldur x29, [sp-8]
    00569890ldr x30, [sp], 32
    00569894ret x30
    00569898
    00569898loc_569898:
    00569898mov x3, x30
    0056989cbl runtime.morestack_noctxt.abi0
    005698a0b 0x569830
    005698a4udf 0
    005698a8udf 0
    005698acudf 0
    00569830
    005698b0
    005698b0crypto/internal/fips140/nistec.p256OrdReduce: ; void crypto/internal/fips140/nistec.p256OrdReduce(crypto/internal/fips140/nistec.p256OrdElement * s)
    005698b0ldr x16, [x28+16]
    005698b4sub x17, sp, 48
    005698b8subs xzr, x17, x16
    005698bcb.ls 0x569b00
    005698c0str x30, [sp-176]!
    005698c4stur x29, [sp-8]
    005698c8sub x29, sp, 8
    005698ccstr x0, [sp+184]
    005698d0ldrsb x27, [x0]
    005698d4ldr x0, [x0]
    005698d8str x0, [sp+120]
    005698dcmovz x1, 9553
    005698e0movk x1, 0xfc630000
    005698e4movk x1, 0xcac200000000
    005698e8movk x1, 0xf3b9000000000000
    005698ecsubs x2, x0, x1
    005698f0str x2, [sp+136]
    005698f4subs x3, x0, x1
    005698f8sbc x3, xzr, xzr
    005698fcsub x3, xzr, x3
    00569900str x3, [sp+128]
    00569904str x2, [sp+88]
    00569908str x3, [sp+80]
    0056990cstr x2, [sp+40]
    00569910str x3, [sp+48]
    00569914ldr x2, [sp+184]
    00569918ldrsb x27, [x2]
    0056991cldr x2, [x2+8]
    00569920str x2, [sp+112]
    00569924movz x3, 40580
    00569928movk x3, 0xa7170000
    0056992cmovk x3, 0xfaad00000000
    00569930movk x3, 0xbce6000000000000
    00569934sbcs x4, x2, x3
    00569938subs x4, x0, x1
    0056993csbcs x4, x2, x3
    00569940str x4, [sp+128]
    00569944subs x5, x0, x1
    00569948sbcs x5, x2, x3
    0056994csbc x5, xzr, xzr
    00569950sub x5, xzr, x5
    00569954str x5, [sp+136]
    00569958str x4, [sp+72]
    0056995cstr x5, [sp+64]
    00569960str x4, [sp+32]
    00569964str x5, [sp+48]
    00569968ldr x4, [sp+184]
    0056996cldrsb x27, [x4]
    00569970ldr x4, [x4+16]
    00569974str x4, [sp+104]
    00569978movn x5, 0
    0056997csbcs x6, x4, x5
    00569980subs x6, x0, x1
    00569984sbcs x6, x2, x3
    00569988sbcs x6, x4, x5
    0056998cstr x6, [sp+136]
    00569990subs x7, x0, x1
    00569994sbcs x7, x2, x3
    00569998sbcs x7, x4, x5
    0056999csbc x7, xzr, xzr
    005699a0sub x7, xzr, x7
    005699a4str x7, [sp+128]
    005699a8str x6, [sp+56]
    005699acstr x7, [sp+160]
    005699b0str x6, [sp+24]
    005699b4str x7, [sp+48]
    005699b8ldr x6, [sp+184]
    005699bcldrsb x27, [x6]
    005699c0ldr x6, [x6+24]
    005699c4str x6, [sp+96]
    005699c8orr x7, xzr, 0xffffffff00000000
    005699ccsbcs x8, x6, x7
    005699d0subs x8, x0, x1
    005699d4sbcs x8, x2, x3
    005699d8sbcs x8, x4, x5
    005699dcsbcs x8, x6, x7
    005699e0str x8, [sp+128]
    005699e4subs x0, x0, x1
    005699e8sbcs x0, x2, x3
    005699ecsbcs x0, x4, x5
    005699f0sbcs x0, x6, x7
    005699f4sbc x0, xzr, xzr
    005699f8sub x0, xzr, x0
    005699fcstr x0, [sp+136]
    00569a00str x8, [sp+152]
    00569a04str x0, [sp+144]
    00569a08str x8, [sp+16]
    00569a0cstr x0, [sp+48]
    00569a10sub x0, x0, 1
    00569a14str x0, [sp+8]
    00569a18ldr x1, [sp+184]
    00569a1cldrsb x27, [x1]
    00569a20ldr x2, [sp+184]
    00569a24ldrsb x27, [x2]
    00569a28ldr x2, [x2]
    00569a2cldr x3, [sp+40]
    00569a30ldr x4, [sp+184]
    00569a34ldrsb x27, [x4]
    00569a38ldr x4, [x4]
    00569a3ceor x3, x3, x4
    00569a40and x0, x3, x0
    00569a44eor x0, x2, x0
    00569a48str x0, [x1]
    00569a4cldr x0, [sp+184]
    00569a50ldrsb x27, [x0]
    00569a54ldr x1, [sp+184]
    00569a58ldrsb x27, [x1]
    00569a5cldr x1, [x1+8]
    00569a60ldr x2, [sp+32]
    00569a64ldr x3, [sp+184]
    00569a68ldrsb x27, [x3]
    00569a6cldr x3, [x3+8]
    00569a70eor x2, x2, x3
    00569a74ldr x3, [sp+8]
    00569a78and x2, x2, x3
    00569a7ceor x1, x1, x2
    00569a80str x1, [x0+8]
    00569a84ldr x0, [sp+184]
    00569a88ldrsb x27, [x0]
    00569a8cldr x1, [sp+184]
    00569a90ldrsb x27, [x1]
    00569a94ldr x1, [x1+16]
    00569a98ldr x2, [sp+24]
    00569a9cldr x3, [sp+184]
    00569aa0ldrsb x27, [x3]
    00569aa4ldr x3, [x3+16]
    00569aa8eor x2, x2, x3
    00569aacldr x3, [sp+8]
    00569ab0and x2, x2, x3
    00569ab4eor x1, x1, x2
    00569ab8str x1, [x0+16]
    00569abcldr x0, [sp+184]
    00569ac0ldrsb x27, [x0]
    00569ac4ldr x1, [sp+184]
    00569ac8ldrsb x27, [x1]
    00569accldr x1, [x1+24]
    00569ad0ldr x2, [sp+16]
    00569ad4ldr x3, [sp+184]
    00569ad8ldrsb x27, [x3]
    00569adcldr x3, [x3+24]
    00569ae0eor x2, x2, x3
    00569ae4ldr x3, [sp+8]
    00569ae8and x2, x2, x3
    00569aeceor x1, x1, x2
    00569af0str x1, [x0+24]
    00569af4add x29, sp, 168
    00569af8add sp, sp, 176
    00569afcret x30
    00569b00
    00569b00loc_569b00:
    00569b00str x0, [sp+8]
    00569b04mov x3, x30
    00569b08bl runtime.morestack_noctxt.abi0
    00569b0cldr x0, [sp+8]
    00569b10b 0x5698b0
    00569b14udf 0
    00569b18udf 0
    00569b1cudf 0
    005698b0
    00569b20
    00569b20crypto/internal/fips140/nistec.p256OrdLittleToBig: ; void crypto/internal/fips140/nistec.p256OrdLittleToBig(uint8[32] * b, crypto/internal/fips140/nistec.p256OrdElement * l)
    00569b20ldr x16, [x28+16]
    00569b24subs xzr, sp, x16
    00569b28b.ls 0x569b50
    00569b2cstr x30, [sp-32]!
    00569b30stur x29, [sp-8]
    00569b34sub x29, sp, 8
    00569b38str x0, [sp+40]
    00569b3cstr x1, [sp+48]
    00569b40bl crypto/internal/fips140/nistec.limbsToBytes
    00569b44ldur x29, [sp-8]
    00569b48ldr x30, [sp], 32
    00569b4cret x30
    00569b50
    00569b50loc_569b50:
    00569b50stp x0, x1, [sp+8]
    00569b54mov x3, x30
    00569b58bl runtime.morestack_noctxt.abi0
    00569b5cldp x0, x1, [sp+8]
    00569b60b 0x569b20
    00569b64udf 0
    00569b68udf 0
    00569b6cudf 0
    00569b20
    00569b70
    00569b70crypto/internal/fips140/nistec.p256OrdBigToLittle: ; void crypto/internal/fips140/nistec.p256OrdBigToLittle(crypto/internal/fips140/nistec.p256OrdElement * l, uint8[32] * b)
    00569b70ldr x16, [x28+16]
    00569b74subs xzr, sp, x16
    00569b78b.ls 0x569ba0
    00569b7cstr x30, [sp-32]!
    00569b80stur x29, [sp-8]
    00569b84sub x29, sp, 8
    00569b88str x0, [sp+40]
    00569b8cstr x1, [sp+48]
    00569b90bl crypto/internal/fips140/nistec.bytesToLimbs
    00569b94ldur x29, [sp-8]
    00569b98ldr x30, [sp], 32
    00569b9cret x30
    00569ba0
    00569ba0loc_569ba0:
    00569ba0stp x0, x1, [sp+8]
    00569ba4mov x3, x30
    00569ba8bl runtime.morestack_noctxt.abi0
    00569bacldp x0, x1, [sp+8]
    00569bb0b 0x569b70
    00569bb4udf 0
    00569bb8udf 0
    00569bbcudf 0
    00569b70
    00569bc0
    00569bc0crypto/internal/fips140/nistec.(*P256Point).Add: ; void crypto/internal/fips140/nistec.(*P256Point).Add(crypto/internal/fips140/nistec.P256Point * q, crypto/internal/fips140/nistec.P256Point * r1, crypto/internal/fips140/nistec.P256Point * r2)
    00569bc0ldr x16, [x28+16]
    00569bc4sub x17, sp, 160
    00569bc8subs xzr, x17, x16
    00569bccb.ls 0x569cfc
    00569bd0sub x20, sp, 288
    00569bd4stp x29, x30, [x20-8]
    00569bd8add sp, x20, 0
    00569bdcsub x29, sp, 8
    00569be0str x0, [sp+296]
    00569be4str x1, [sp+304]
    00569be8str x2, [sp+312]
    00569becstr xzr, [sp+264]
    00569bf0add x20, sp, 48
    00569bf4adr x27, 16
    00569bf8stp x29, x27, [sp-24]
    00569bfcsub x29, sp, 24
    00569c00bl fn_87cf8
    00569c04sub x29, sp, 8
    00569c08add x20, sp, 168
    00569c0cadr x27, 16
    00569c10stp x29, x27, [sp-24]
    00569c14sub x29, sp, 24
    00569c18bl fn_87cf8
    00569c1csub x29, sp, 8
    00569c20ldr x0, [sp+304]
    00569c24bl crypto/internal/fips140/nistec.(*P256Point).isInfinity
    00569c28str x0, [sp+152]
    00569c2cldr x0, [sp+312]
    00569c30bl crypto/internal/fips140/nistec.(*P256Point).isInfinity
    00569c34str x0, [sp+144]
    00569c38ldr x1, [sp+312]
    00569c3cldr x2, [sp+304]
    00569c40add x3, sp, 48
    00569c44str x3, [sp+8]
    00569c48str x2, [sp+16]
    00569c4cstr x1, [sp+24]
    00569c50bl crypto/internal/fips140/nistec.p256PointAddAsm.abi0
    00569c54ldr x1, [sp+32]
    00569c58str x1, [sp+160]
    00569c5cldr x1, [sp+304]
    00569c60add x2, sp, 168
    00569c64str x2, [sp+8]
    00569c68str x1, [sp+16]
    00569c6cbl crypto/internal/fips140/nistec.p256PointDoubleAsm.abi0
    00569c70ldr x1, [sp+160]
    00569c74add x2, sp, 48
    00569c78str x2, [sp+8]
    00569c7cadd x2, sp, 168
    00569c80str x2, [sp+16]
    00569c84add x2, sp, 48
    00569c88str x2, [sp+24]
    00569c8cstr x1, [sp+32]
    00569c90bl crypto/internal/fips140/nistec.p256MovCond.abi0
    00569c94ldr x1, [sp+144]
    00569c98ldr x2, [sp+304]
    00569c9cadd x3, sp, 48
    00569ca0str x3, [sp+8]
    00569ca4str x2, [sp+16]
    00569ca8add x2, sp, 48
    00569cacstr x2, [sp+24]
    00569cb0str x1, [sp+32]
    00569cb4bl crypto/internal/fips140/nistec.p256MovCond.abi0
    00569cb8ldr x1, [sp+152]
    00569cbcldr x2, [sp+312]
    00569cc0add x3, sp, 48
    00569cc4str x3, [sp+8]
    00569cc8str x2, [sp+16]
    00569cccadd x2, sp, 48
    00569cd0str x2, [sp+24]
    00569cd4str x1, [sp+32]
    00569cd8bl crypto/internal/fips140/nistec.p256MovCond.abi0
    00569cdcldr x0, [sp+296]
    00569ce0add x1, sp, 48
    00569ce4bl crypto/internal/fips140/nistec.(*P256Point).Set
    00569ce8str x0, [sp+272]
    00569cecstr x0, [sp+264]
    00569cf0ldp x29, x30, [sp-8]
    00569cf4add sp, sp, 288
    00569cf8ret x30
    00569cfc
    00569cfcloc_569cfc:
    00569cfcstp x0, x1, [sp+8]
    00569d00str x2, [sp+24]
    00569d04mov x3, x30
    00569d08bl runtime.morestack_noctxt.abi0
    00569d0cldp x0, x1, [sp+8]
    00569d10ldr x2, [sp+24]
    00569d14b 0x569bc0
    00569d18udf 0
    00569d1cudf 0
    00569bc0
    00569d20
    00569d20crypto/internal/fips140/nistec.(*P256Point).Double: ; void crypto/internal/fips140/nistec.(*P256Point).Double(crypto/internal/fips140/nistec.P256Point * q, crypto/internal/fips140/nistec.P256Point * p)
    00569d20ldr x16, [x28+16]
    00569d24sub x17, sp, 16
    00569d28subs xzr, x17, x16
    00569d2cb.ls 0x569d94
    00569d30str x30, [sp-144]!
    00569d34stur x29, [sp-8]
    00569d38sub x29, sp, 8
    00569d3cstr x0, [sp+152]
    00569d40str x1, [sp+160]
    00569d44str xzr, [sp+120]
    00569d48add x20, sp, 24
    00569d4cadr x27, 16
    00569d50stp x29, x27, [sp-24]
    00569d54sub x29, sp, 24
    00569d58bl fn_87cf8
    00569d5csub x29, sp, 8
    00569d60ldr x0, [sp+160]
    00569d64add x1, sp, 24
    00569d68str x1, [sp+8]
    00569d6cstr x0, [sp+16]
    00569d70bl crypto/internal/fips140/nistec.p256PointDoubleAsm.abi0
    00569d74ldr x0, [sp+152]
    00569d78add x1, sp, 24
    00569d7cbl crypto/internal/fips140/nistec.(*P256Point).Set
    00569d80str x0, [sp+128]
    00569d84str x0, [sp+120]
    00569d88ldur x29, [sp-8]
    00569d8cldr x30, [sp], 144
    00569d90ret x30
    00569d94
    00569d94loc_569d94:
    00569d94stp x0, x1, [sp+8]
    00569d98mov x3, x30
    00569d9cbl runtime.morestack_noctxt.abi0
    00569da0ldp x0, x1, [sp+8]
    00569da4b 0x569d20
    00569da8udf 0
    00569dacudf 0
    00569d20
    00569db0
    00569db0crypto/internal/fips140/nistec.(*P256Point).ScalarBaseMult: ; void crypto/internal/fips140/nistec.(*P256Point).ScalarBaseMult(crypto/internal/fips140/nistec.P256Point * r, struct []uint8 scalar)
    00569db0ldr x16, [x28+16]
    00569db4subs xzr, sp, x16
    00569db8b.ls 0x569ea4
    00569dbcstr x30, [sp-128]!
    00569dc0stur x29, [sp-8]
    00569dc4sub x29, sp, 8
    00569dc8str x0, [sp+136]
    00569dccstr x1, [sp+144]
    00569dd0str x2, [sp+152]
    00569dd4str x3, [sp+160]
    00569dd8str xzr, [sp+80]
    00569ddcstp xzr, xzr, [sp+64]
    00569de0ldr x4, [sp+152]
    00569de4str x4, [sp+56]
    00569de8subs xzr, x4, 32
    00569decb.ne 0x569df4
    00569df0b 0x569e30
    00569df4
    00569df4loc_569df4:
    00569df4adrp x0, 0x14e000
    00569df8add x0, x0, 2076
    00569dfcmovz x1, 21
    00569e00bl errors.New
    00569e04str x0, [sp+104]
    00569e08str x1, [sp+112]
    00569e0cstr xzr, [sp+80]
    00569e10ldr x1, [sp+104]
    00569e14ldr x2, [sp+112]
    00569e18str x1, [sp+64]
    00569e1cstr x2, [sp+72]
    00569e20ldr x0, [sp+80]
    00569e24ldur x29, [sp-8]
    00569e28ldr x30, [sp], 128
    00569e2cret x30
    00569e30
    00569e30loc_569e30:
    00569e30stp xzr, xzr, [sp+24]
    00569e34stp xzr, xzr, [sp+40]
    00569e38add x4, sp, 24
    00569e3cstr x4, [sp+88]
    00569e40ldr x1, [sp+144]
    00569e44ldr x3, [sp+152]
    00569e48subs xzr, x3, 32
    00569e4cb.hs 0x569e54
    00569e50b 0x569e98
    00569e54
    00569e54loc_569e54:
    00569e54str x1, [sp+96]
    00569e58ldr x0, [sp+88]
    00569e5cbl crypto/internal/fips140/nistec.p256OrdBigToLittle
    00569e60ldr x0, [sp+88]
    00569e64bl crypto/internal/fips140/nistec.p256OrdReduce
    00569e68ldr x1, [sp+88]
    00569e6cldr x0, [sp+136]
    00569e70bl crypto/internal/fips140/nistec.(*P256Point).p256BaseMult
    00569e74ldr x2, [sp+136]
    00569e78str x2, [sp+80]
    00569e7cstp xzr, xzr, [sp+64]
    00569e80ldr x0, [sp+80]
    00569e84mov x1, xzr
    00569e88mov x2, xzr
    00569e8cldur x29, [sp-8]
    00569e90ldr x30, [sp], 128
    00569e94ret x30
    00569e98
    00569e98loc_569e98:
    00569e98orr x2, xzr, 32
    00569e9cbl runtime.panicSliceConvert
    00569ea0hint
    00569ea4
    00569ea4loc_569ea4:
    00569ea4stp x0, x1, [sp+8]
    00569ea8stp x2, x3, [sp+24]
    00569eacmov x3, x30
    00569eb0bl runtime.morestack_noctxt.abi0
    00569eb4ldp x0, x1, [sp+8]
    00569eb8ldp x2, x3, [sp+24]
    00569ebcb 0x569db0
    00569db0
    00569ec0
    00569ec0crypto/internal/fips140/nistec.(*P256Point).ScalarMult: ; void crypto/internal/fips140/nistec.(*P256Point).ScalarMult(crypto/internal/fips140/nistec.P256Point * r, crypto/internal/fips140/nistec.P256Point * q, struct []uint8 scalar)
    00569ec0ldr x16, [x28+16]
    00569ec4sub x17, sp, 16
    00569ec8subs xzr, x17, x16
    00569eccb.ls 0x569fc8
    00569ed0str x30, [sp-144]!
    00569ed4stur x29, [sp-8]
    00569ed8sub x29, sp, 8
    00569edcstr x0, [sp+152]
    00569ee0str x1, [sp+160]
    00569ee4str x2, [sp+168]
    00569ee8str x3, [sp+176]
    00569eecstr x4, [sp+184]
    00569ef0str xzr, [sp+88]
    00569ef4stp xzr, xzr, [sp+72]
    00569ef8ldr x4, [sp+176]
    00569efcstr x4, [sp+64]
    00569f00subs xzr, x4, 32
    00569f04b.ne 0x569f0c
    00569f08b 0x569f48
    00569f0c
    00569f0cloc_569f0c:
    00569f0cadrp x0, 0x14e000
    00569f10add x0, x0, 2076
    00569f14movz x1, 21
    00569f18bl errors.New
    00569f1cstr x0, [sp+112]
    00569f20str x1, [sp+120]
    00569f24str xzr, [sp+88]
    00569f28ldr x1, [sp+112]
    00569f2cldr x2, [sp+120]
    00569f30str x1, [sp+72]
    00569f34str x2, [sp+80]
    00569f38ldr x0, [sp+88]
    00569f3cldur x29, [sp-8]
    00569f40ldr x30, [sp], 144
    00569f44ret x30
    00569f48
    00569f48loc_569f48:
    00569f48stp xzr, xzr, [sp+32]
    00569f4cstp xzr, xzr, [sp+48]
    00569f50add x4, sp, 32
    00569f54str x4, [sp+96]
    00569f58ldr x1, [sp+168]
    00569f5cldr x3, [sp+176]
    00569f60subs xzr, x3, 32
    00569f64b.hs 0x569f6c
    00569f68b 0x569fbc
    00569f6c
    00569f6cloc_569f6c:
    00569f6cstr x1, [sp+128]
    00569f70ldr x0, [sp+96]
    00569f74bl crypto/internal/fips140/nistec.p256OrdBigToLittle
    00569f78ldr x0, [sp+96]
    00569f7cbl crypto/internal/fips140/nistec.p256OrdReduce
    00569f80ldr x1, [sp+160]
    00569f84ldr x0, [sp+152]
    00569f88bl crypto/internal/fips140/nistec.(*P256Point).Set
    00569f8cstr x0, [sp+104]
    00569f90ldr x1, [sp+96]
    00569f94bl crypto/internal/fips140/nistec.(*P256Point).p256ScalarMult
    00569f98ldr x2, [sp+152]
    00569f9cstr x2, [sp+88]
    00569fa0stp xzr, xzr, [sp+72]
    00569fa4ldr x0, [sp+88]
    00569fa8mov x1, xzr
    00569facmov x2, xzr
    00569fb0ldur x29, [sp-8]
    00569fb4ldr x30, [sp], 144
    00569fb8ret x30
    00569fbc
    00569fbcloc_569fbc:
    00569fbcorr x2, xzr, 32
    00569fc0bl runtime.panicSliceConvert
    00569fc4hint
    00569fc8
    00569fc8loc_569fc8:
    00569fc8stp x0, x1, [sp+8]
    00569fccstp x2, x3, [sp+24]
    00569fd0str x4, [sp+40]
    00569fd4mov x3, x30
    00569fd8bl runtime.morestack_noctxt.abi0
    00569fdcldp x0, x1, [sp+8]
    00569fe0ldp x2, x3, [sp+24]
    00569fe4ldr x4, [sp+40]
    00569fe8b 0x569ec0
    00569fecudf 0
    00569ec0
    00569ff0
    00569ff0crypto/internal/fips140/nistec.uint64IsZero: ; void crypto/internal/fips140/nistec.uint64IsZero(uint64 x)
    00569ff0str x30, [sp-32]!
    00569ff4stur x29, [sp-8]
    00569ff8sub x29, sp, 8
    00569ffcstr x0, [sp+40]
    0056a000str xzr, [sp+16]
    0056a004orn x1, xzr, x0
    0056a008str x1, [sp+40]
    0056a00cubfm x1, x1, 32, 63
    0056a010bic x1, x1, x0
    0056a014str x1, [sp+40]
    0056a018and x1, x1, x1, lsr #16
    0056a01cstr x1, [sp+40]
    0056a020and x1, x1, x1, lsr #8
    0056a024str x1, [sp+40]
    0056a028and x1, x1, x1, lsr #4
    0056a02cstr x1, [sp+40]
    0056a030and x1, x1, x1, lsr #2
    0056a034str x1, [sp+40]
    0056a038and x1, x1, x1, lsr #1
    0056a03cstr x1, [sp+40]
    0056a040and x1, x1, 1
    0056a044str x1, [sp+16]
    0056a048ldr x0, [sp+16]
    0056a04cadd x29, sp, 24
    0056a050add sp, sp, 32
    0056a054ret x30
    0056a058udf 0
    0056a05cudf 0
    00569ff0
    0056a060
    0056a060crypto/internal/fips140/nistec.p256Equal: ; void crypto/internal/fips140/nistec.p256Equal(crypto/internal/fips140/nistec.p256Element * a, crypto/internal/fips140/nistec.p256Element * b)
    0056a060ldr x16, [x28+16]
    0056a064subs xzr, sp, x16
    0056a068b.ls 0x56a130
    0056a06cstr x30, [sp-80]!
    0056a070stur x29, [sp-8]
    0056a074sub x29, sp, 8
    0056a078str x0, [sp+88]
    0056a07cstr x1, [sp+96]
    0056a080str xzr, [sp+24]
    0056a084str xzr, [sp+40]
    0056a088str xzr, [sp+56]
    0056a08corr x1, xzr, 4
    0056a090str x1, [sp+48]
    0056a094b 0x56a098
    0056a098
    0056a098loc_56a098:
    0056a098ldr x2, [sp+48]
    0056a09cldr x3, [sp+56]
    0056a0a0subs xzr, x2, x3
    0056a0a4b.gt 0x56a0ac
    0056a0a8b 0x56a108
    0056a0ac
    0056a0acloc_56a0ac:
    0056a0acldr x0, [sp+56]
    0056a0b0str x0, [sp+32]
    0056a0b4ldr x2, [sp+40]
    0056a0b8ldr x3, [sp+88]
    0056a0bcldrsb x27, [x3]
    0056a0c0subs xzr, x0, 4
    0056a0c4b.lo 0x56a0cc
    0056a0c8b 0x56a128
    0056a0cc
    0056a0ccloc_56a0cc:
    0056a0ccldr x3, [x3+3*x0]
    0056a0d0ldr x4, [sp+96]
    0056a0d4ldrsb x27, [x4]
    0056a0d8subs xzr, x0, 4
    0056a0dcb.lo 0x56a0e4
    0056a0e0b 0x56a124
    0056a0e4
    0056a0e4loc_56a0e4:
    0056a0e4ldr x4, [x4+3*x0]
    0056a0e8eor x3, x3, x4
    0056a0ecorr x2, x2, x3
    0056a0f0str x2, [sp+40]
    0056a0f4b 0x56a0f8
    0056a0f8
    0056a0f8loc_56a0f8:
    0056a0f8ldr x2, [sp+56]
    0056a0fcadd x2, x2, 1
    0056a100str x2, [sp+56]
    0056a104b 0x56a098
    0056a108
    0056a108loc_56a108:
    0056a108ldr x0, [sp+40]
    0056a10cbl crypto/internal/fips140/nistec.uint64IsZero
    0056a110str x0, [sp+64]
    0056a114str x0, [sp+24]
    0056a118ldur x29, [sp-8]
    0056a11cldr x30, [sp], 80
    0056a120ret x30
    0056a124
    0056a124loc_56a124:
    0056a124bl runtime.panicIndex
    0056a128
    0056a128loc_56a128:
    0056a128bl runtime.panicIndex
    0056a12chint
    0056a130
    0056a130loc_56a130:
    0056a130stp x0, x1, [sp+8]
    0056a134mov x3, x30
    0056a138bl runtime.morestack_noctxt.abi0
    0056a13cldp x0, x1, [sp+8]
    0056a140b 0x56a060
    0056a144udf 0
    0056a148udf 0
    0056a14cudf 0
    0056a060
    0056a150
    0056a150crypto/internal/fips140/nistec.(*P256Point).isInfinity: ; void crypto/internal/fips140/nistec.(*P256Point).isInfinity(crypto/internal/fips140/nistec.P256Point * p)
    0056a150ldr x16, [x28+16]
    0056a154subs xzr, sp, x16
    0056a158b.ls 0x56a19c
    0056a15cstr x30, [sp-64]!
    0056a160stur x29, [sp-8]
    0056a164sub x29, sp, 8
    0056a168str x0, [sp+72]
    0056a16cstr xzr, [sp+32]
    0056a170ldrsb x27, [x0]
    0056a174add x0, x0, 64
    0056a178str x0, [sp+48]
    0056a17cadrp x1, 0x4e1000
    0056a180add x1, x1, 3680
    0056a184bl crypto/internal/fips140/nistec.p256Equal
    0056a188str x0, [sp+40]
    0056a18cstr x0, [sp+32]
    0056a190ldur x29, [sp-8]
    0056a194ldr x30, [sp], 64
    0056a198ret x30
    0056a19c
    0056a19cloc_56a19c:
    0056a19cstr x0, [sp+8]
    0056a1a0mov x3, x30
    0056a1a4bl runtime.morestack_noctxt.abi0
    0056a1a8ldr x0, [sp+8]
    0056a1acb 0x56a150
    0056a150
    0056a1b0
    0056a1b0crypto/internal/fips140/nistec.(*P256Point).Bytes: ; void crypto/internal/fips140/nistec.(*P256Point).Bytes(crypto/internal/fips140/nistec.P256Point * p)
    0056a1b0ldr x16, [x28+16]
    0056a1b4subs xzr, sp, x16
    0056a1b8b.ls 0x56a228
    0056a1bcstr x30, [sp-96]!
    0056a1c0stur x29, [sp-8]
    0056a1c4sub x29, sp, 8
    0056a1c8str x0, [sp+104]
    0056a1ccstr xzr, [sp+32]
    0056a1d0stp xzr, xzr, [sp+40]
    0056a1d4adrp x0, 0x97000
    0056a1d8add x0, x0, 2688
    0056a1dcbl runtime.newobject
    0056a1e0str x0, [sp+80]
    0056a1e4stp xzr, xzr, [x0]
    0056a1e8stp xzr, xzr, [x0+16]
    0056a1ecstp xzr, xzr, [x0+32]
    0056a1f0stp xzr, xzr, [x0+48]
    0056a1f4stur xzr, [x0+57]
    0056a1f8ldr x0, [sp+104]
    0056a1fcldr x1, [sp+80]
    0056a200bl crypto/internal/fips140/nistec.(*P256Point).bytes
    0056a204str x0, [sp+56]
    0056a208str x1, [sp+64]
    0056a20cstr x2, [sp+72]
    0056a210str x0, [sp+32]
    0056a214str x1, [sp+40]
    0056a218str x2, [sp+48]
    0056a21cldur x29, [sp-8]
    0056a220ldr x30, [sp], 96
    0056a224ret x30
    0056a228
    0056a228loc_56a228:
    0056a228str x0, [sp+8]
    0056a22cmov x3, x30
    0056a230bl runtime.morestack_noctxt.abi0
    0056a234ldr x0, [sp+8]
    0056a238b 0x56a1b0
    0056a23cudf 0
    0056a1b0
    0056a240
    0056a240crypto/internal/fips140/nistec.(*P256Point).bytes: ; void crypto/internal/fips140/nistec.(*P256Point).bytes(crypto/internal/fips140/nistec.P256Point * p, uint8[65] * out)
    0056a240ldr x16, [x28+16]
    0056a244sub x17, sp, 112
    0056a248subs xzr, x17, x16
    0056a24cb.ls 0x56a3c8
    0056a250str x30, [sp-240]!
    0056a254stur x29, [sp-8]
    0056a258sub x29, sp, 8
    0056a25cstr x0, [sp+248]
    0056a260str x1, [sp+256]
    0056a264str xzr, [sp+112]
    0056a268stp xzr, xzr, [sp+120]
    0056a26cldr x0, [sp+248]
    0056a270bl crypto/internal/fips140/nistec.(*P256Point).isInfinity
    0056a274str x0, [sp+40]
    0056a278subs xzr, x0, 1
    0056a27cb.eq 0x56a284
    0056a280b 0x56a2d8
    0056a284
    0056a284loc_56a284:
    0056a284ldr x3, [sp+256]
    0056a288ldrsb x27, [x3]
    0056a28cb 0x56a290
    0056a290
    0056a290loc_56a290:
    0056a290b 0x56a294
    0056a294
    0056a294loc_56a294:
    0056a294str x3, [sp+192]
    0056a298str xzr, [sp+200]
    0056a29cmovz x2, 65
    0056a2a0str x2, [sp+208]
    0056a2a4b 0x56a2a8
    0056a2a8
    0056a2a8loc_56a2a8:
    0056a2a8strb wzr, [x3]
    0056a2acstr x3, [sp+168]
    0056a2b0orr x1, xzr, 1
    0056a2b4str x1, [sp+176]
    0056a2b8str x2, [sp+184]
    0056a2bcstr x3, [sp+112]
    0056a2c0str x1, [sp+120]
    0056a2c4str x2, [sp+128]
    0056a2c8ldr x0, [sp+112]
    0056a2ccldur x29, [sp-8]
    0056a2d0ldr x30, [sp], 240
    0056a2d4ret x30
    0056a2d8
    0056a2d8loc_56a2d8:
    0056a2d8stp xzr, xzr, [sp+80]
    0056a2dcstp xzr, xzr, [sp+96]
    0056a2e0add x3, sp, 80
    0056a2e4str x3, [sp+160]
    0056a2e8stp xzr, xzr, [sp+48]
    0056a2ecstp xzr, xzr, [sp+64]
    0056a2f0add x3, sp, 48
    0056a2f4str x3, [sp+152]
    0056a2f8ldr x3, [sp+160]
    0056a2fcstr x3, [sp+144]
    0056a300ldr x2, [sp+152]
    0056a304str x2, [sp+136]
    0056a308ldr x1, [sp+144]
    0056a30cldr x0, [sp+248]
    0056a310bl crypto/internal/fips140/nistec.(*P256Point).affineFromMont
    0056a314ldr x3, [sp+256]
    0056a318ldrsb x27, [x3]
    0056a31corr x4, xzr, 4
    0056a320strb w4, [x3]
    0056a324ldr x3, [sp+256]
    0056a328ldrsb x27, [x3]
    0056a32cb 0x56a330
    0056a330
    0056a330loc_56a330:
    0056a330b 0x56a334
    0056a334
    0056a334loc_56a334:
    0056a334add x0, x3, 1
    0056a338str x0, [sp+168]
    0056a33corr x2, xzr, 32
    0056a340str x2, [sp+176]
    0056a344orr x3, xzr, 64
    0056a348str x3, [sp+184]
    0056a34cb 0x56a350
    0056a350
    0056a350loc_56a350:
    0056a350str x0, [sp+224]
    0056a354ldr x1, [sp+144]
    0056a358bl crypto/internal/fips140/nistec.p256LittleToBig
    0056a35cldr x2, [sp+256]
    0056a360ldrsb x27, [x2]
    0056a364b 0x56a368
    0056a368
    0056a368loc_56a368:
    0056a368add x0, x2, 33
    0056a36cstr x0, [sp+168]
    0056a370orr x2, xzr, 32
    0056a374str x2, [sp+176]
    0056a378str x2, [sp+184]
    0056a37cb 0x56a380
    0056a380
    0056a380loc_56a380:
    0056a380str x0, [sp+216]
    0056a384ldr x1, [sp+136]
    0056a388bl crypto/internal/fips140/nistec.p256LittleToBig
    0056a38cldr x2, [sp+256]
    0056a390ldrsb x27, [x2]
    0056a394b 0x56a398
    0056a398
    0056a398loc_56a398:
    0056a398str x2, [sp+168]
    0056a39cmovz x1, 65
    0056a3a0str x1, [sp+176]
    0056a3a4str x1, [sp+184]
    0056a3a8str x2, [sp+112]
    0056a3acstr x1, [sp+120]
    0056a3b0str x1, [sp+128]
    0056a3b4ldr x0, [sp+112]
    0056a3b8mov x2, x1
    0056a3bcldur x29, [sp-8]
    0056a3c0ldr x30, [sp], 240
    0056a3c4ret x30
    0056a3c8
    0056a3c8loc_56a3c8:
    0056a3c8stp x0, x1, [sp+8]
    0056a3ccmov x3, x30
    0056a3d0bl runtime.morestack_noctxt.abi0
    0056a3d4ldp x0, x1, [sp+8]
    0056a3d8b 0x56a240
    0056a3dcudf 0
    0056a240
    0056a3e0
    0056a3e0crypto/internal/fips140/nistec.(*P256Point).affineFromMont: ; void crypto/internal/fips140/nistec.(*P256Point).affineFromMont(crypto/internal/fips140/nistec.P256Point * p, crypto/internal/fips140/nistec.p256Element * x, crypto/internal/fips140/nistec.p256Element * y)
    0056a3e0ldr x16, [x28+16]
    0056a3e4subs xzr, sp, x16
    0056a3e8b.ls 0x56a4d0
    0056a3ecstr x30, [sp-64]!
    0056a3f0stur x29, [sp-8]
    0056a3f4sub x29, sp, 8
    0056a3f8str x0, [sp+72]
    0056a3fcstr x1, [sp+80]
    0056a400str x2, [sp+88]
    0056a404ldrsb x27, [x0]
    0056a408add x1, x0, 64
    0056a40cstr x1, [sp+48]
    0056a410ldr x0, [sp+88]
    0056a414bl crypto/internal/fips140/nistec.p256Inverse
    0056a418ldr x2, [sp+88]
    0056a41cldr x3, [sp+80]
    0056a420str x3, [sp+8]
    0056a424str x2, [sp+16]
    0056a428orr x2, xzr, 1
    0056a42cstr x2, [sp+24]
    0056a430bl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a434ldr x2, [sp+88]
    0056a438ldr x3, [sp+80]
    0056a43cldr x4, [sp+88]
    0056a440str x4, [sp+8]
    0056a444str x2, [sp+16]
    0056a448str x3, [sp+24]
    0056a44cbl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a450ldr x2, [sp+72]
    0056a454ldrsb x27, [x2]
    0056a458str x2, [sp+40]
    0056a45cldr x3, [sp+80]
    0056a460ldr x4, [sp+80]
    0056a464str x3, [sp+8]
    0056a468str x2, [sp+16]
    0056a46cstr x4, [sp+24]
    0056a470bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a474ldr x2, [sp+72]
    0056a478ldrsb x27, [x2]
    0056a47cadd x2, x2, 32
    0056a480str x2, [sp+32]
    0056a484ldr x3, [sp+88]
    0056a488ldr x4, [sp+88]
    0056a48cstr x3, [sp+8]
    0056a490str x2, [sp+16]
    0056a494str x4, [sp+24]
    0056a498bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a49cldr x2, [sp+80]
    0056a4a0ldr x3, [sp+80]
    0056a4a4str x3, [sp+8]
    0056a4a8str x2, [sp+16]
    0056a4acbl crypto/internal/fips140/nistec.p256FromMont.abi0
    0056a4b0ldr x2, [sp+88]
    0056a4b4ldr x3, [sp+88]
    0056a4b8str x3, [sp+8]
    0056a4bcstr x2, [sp+16]
    0056a4c0bl crypto/internal/fips140/nistec.p256FromMont.abi0
    0056a4c4ldur x29, [sp-8]
    0056a4c8ldr x30, [sp], 64
    0056a4ccret x30
    0056a4d0
    0056a4d0loc_56a4d0:
    0056a4d0stp x0, x1, [sp+8]
    0056a4d4str x2, [sp+24]
    0056a4d8mov x3, x30
    0056a4dcbl runtime.morestack_noctxt.abi0
    0056a4e0ldp x0, x1, [sp+8]
    0056a4e4ldr x2, [sp+24]
    0056a4e8b 0x56a3e0
    0056a4ecudf 0
    0056a3e0
    0056a4f0
    0056a4f0crypto/internal/fips140/nistec.(*P256Point).BytesX: ; void crypto/internal/fips140/nistec.(*P256Point).BytesX(crypto/internal/fips140/nistec.P256Point * p)
    0056a4f0ldr x16, [x28+16]
    0056a4f4sub x17, sp, 48
    0056a4f8subs xzr, x17, x16
    0056a4fcb.ls 0x56a5c8
    0056a500str x30, [sp-176]!
    0056a504stur x29, [sp-8]
    0056a508sub x29, sp, 8
    0056a50cstr x0, [sp+184]
    0056a510str xzr, [sp+56]
    0056a514stp xzr, xzr, [sp+64]
    0056a518stp xzr, xzr, [sp+40]
    0056a51cadrp x0, 0x93000
    0056a520add x0, x0, 2240
    0056a524bl runtime.newobject
    0056a528str x0, [sp+160]
    0056a52cstp xzr, xzr, [x0]
    0056a530stp xzr, xzr, [x0+16]
    0056a534str xzr, [sp+96]
    0056a538stp xzr, xzr, [sp+104]
    0056a53cstp xzr, xzr, [sp+80]
    0056a540ldr x0, [sp+184]
    0056a544ldr x1, [sp+160]
    0056a548bl crypto/internal/fips140/nistec.(*P256Point).bytesX
    0056a54cstr x0, [sp+96]
    0056a550str x1, [sp+104]
    0056a554str x2, [sp+112]
    0056a558str x3, [sp+80]
    0056a55cstr x4, [sp+88]
    0056a560ldr x1, [sp+96]
    0056a564ldr x2, [sp+104]
    0056a568ldr x3, [sp+112]
    0056a56cstr x1, [sp+136]
    0056a570str x2, [sp+144]
    0056a574str x3, [sp+152]
    0056a578ldr x1, [sp+80]
    0056a57cldr x2, [sp+88]
    0056a580str x1, [sp+120]
    0056a584str x2, [sp+128]
    0056a588ldr x1, [sp+136]
    0056a58cldr x2, [sp+144]
    0056a590ldr x3, [sp+152]
    0056a594str x1, [sp+56]
    0056a598str x2, [sp+64]
    0056a59cstr x3, [sp+72]
    0056a5a0ldr x3, [sp+120]
    0056a5a4ldr x4, [sp+128]
    0056a5a8str x3, [sp+40]
    0056a5acstr x4, [sp+48]
    0056a5b0ldr x0, [sp+56]
    0056a5b4ldr x1, [sp+64]
    0056a5b8ldr x2, [sp+72]
    0056a5bcldur x29, [sp-8]
    0056a5c0ldr x30, [sp], 176
    0056a5c4ret x30
    0056a5c8
    0056a5c8loc_56a5c8:
    0056a5c8str x0, [sp+8]
    0056a5ccmov x3, x30
    0056a5d0bl runtime.morestack_noctxt.abi0
    0056a5d4ldr x0, [sp+8]
    0056a5d8b 0x56a4f0
    0056a5dcudf 0
    0056a4f0
    0056a5e0
    0056a5e0crypto/internal/fips140/nistec.(*P256Point).bytesX: ; void crypto/internal/fips140/nistec.(*P256Point).bytesX(crypto/internal/fips140/nistec.P256Point * p, uint8[32] * out)
    0056a5e0ldr x16, [x28+16]
    0056a5e4sub x17, sp, 64
    0056a5e8subs xzr, x17, x16
    0056a5ecb.ls 0x56a764
    0056a5f0str x30, [sp-192]!
    0056a5f4stur x29, [sp-8]
    0056a5f8sub x29, sp, 8
    0056a5fcstr x0, [sp+200]
    0056a600str x1, [sp+208]
    0056a604str xzr, [sp+88]
    0056a608stp xzr, xzr, [sp+96]
    0056a60cstp xzr, xzr, [sp+72]
    0056a610ldr x0, [sp+200]
    0056a614bl crypto/internal/fips140/nistec.(*P256Point).isInfinity
    0056a618str x0, [sp+64]
    0056a61csubs xzr, x0, 1
    0056a620b.eq 0x56a628
    0056a624b 0x56a670
    0056a628
    0056a628loc_56a628:
    0056a628adrp x0, 0x157000
    0056a62cadd x0, x0, 530
    0056a630movz x1, 35
    0056a634bl errors.New
    0056a638str x0, [sp+152]
    0056a63cstr x1, [sp+160]
    0056a640str xzr, [sp+88]
    0056a644stp xzr, xzr, [sp+96]
    0056a648ldr x3, [sp+152]
    0056a64cldr x4, [sp+160]
    0056a650str x3, [sp+72]
    0056a654str x4, [sp+80]
    0056a658ldr x0, [sp+88]
    0056a65cldr x1, [sp+96]
    0056a660ldr x2, [sp+104]
    0056a664ldur x29, [sp-8]
    0056a668ldr x30, [sp], 192
    0056a66cret x30
    0056a670
    0056a670loc_56a670:
    0056a670stp xzr, xzr, [sp+32]
    0056a674stp xzr, xzr, [sp+48]
    0056a678add x2, sp, 32
    0056a67cstr x2, [sp+112]
    0056a680ldr x2, [sp+200]
    0056a684ldrsb x27, [x2]
    0056a688add x1, x2, 64
    0056a68cstr x1, [sp+120]
    0056a690ldr x0, [sp+112]
    0056a694bl crypto/internal/fips140/nistec.p256Inverse
    0056a698ldr x2, [sp+112]
    0056a69cldr x3, [sp+112]
    0056a6a0str x3, [sp+8]
    0056a6a4str x2, [sp+16]
    0056a6a8orr x2, xzr, 1
    0056a6acstr x2, [sp+24]
    0056a6b0bl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a6b4ldr x2, [sp+200]
    0056a6b8ldrsb x27, [x2]
    0056a6bcstr x2, [sp+176]
    0056a6c0ldr x3, [sp+112]
    0056a6c4ldr x4, [sp+112]
    0056a6c8str x3, [sp+8]
    0056a6ccstr x2, [sp+16]
    0056a6d0str x4, [sp+24]
    0056a6d4bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a6d8ldr x2, [sp+112]
    0056a6dcldr x3, [sp+112]
    0056a6e0str x3, [sp+8]
    0056a6e4str x2, [sp+16]
    0056a6e8bl crypto/internal/fips140/nistec.p256FromMont.abi0
    0056a6ecldr x0, [sp+208]
    0056a6f0ldrsb x27, [x0]
    0056a6f4b 0x56a6f8
    0056a6f8
    0056a6f8loc_56a6f8:
    0056a6f8str x0, [sp+128]
    0056a6fcorr x2, xzr, 32
    0056a700str x2, [sp+136]
    0056a704str x2, [sp+144]
    0056a708b 0x56a70c
    0056a70c
    0056a70cloc_56a70c:
    0056a70cstr x0, [sp+168]
    0056a710ldr x1, [sp+112]
    0056a714bl crypto/internal/fips140/nistec.p256LittleToBig
    0056a718ldr x2, [sp+208]
    0056a71cldrsb x27, [x2]
    0056a720b 0x56a724
    0056a724
    0056a724loc_56a724:
    0056a724str x2, [sp+128]
    0056a728orr x5, xzr, 32
    0056a72cstr x5, [sp+136]
    0056a730str x5, [sp+144]
    0056a734str x2, [sp+88]
    0056a738str x5, [sp+96]
    0056a73cstr x5, [sp+104]
    0056a740stp xzr, xzr, [sp+72]
    0056a744ldr x0, [sp+88]
    0056a748ldr x1, [sp+96]
    0056a74cldr x2, [sp+104]
    0056a750mov x3, xzr
    0056a754mov x4, xzr
    0056a758ldur x29, [sp-8]
    0056a75cldr x30, [sp], 192
    0056a760ret x30
    0056a764
    0056a764loc_56a764:
    0056a764stp x0, x1, [sp+8]
    0056a768mov x3, x30
    0056a76cbl runtime.morestack_noctxt.abi0
    0056a770ldp x0, x1, [sp+8]
    0056a774b 0x56a5e0
    0056a778udf 0
    0056a77cudf 0
    0056a5e0
    0056a780
    0056a780crypto/internal/fips140/nistec.p256Inverse: ; void crypto/internal/fips140/nistec.p256Inverse(crypto/internal/fips140/nistec.p256Element * out, crypto/internal/fips140/nistec.p256Element * in)
    0056a780ldr x16, [x28+16]
    0056a784sub x17, sp, 32
    0056a788subs xzr, x17, x16
    0056a78cb.ls 0x56aa80
    0056a790str x30, [sp-160]!
    0056a794stur x29, [sp-8]
    0056a798sub x29, sp, 8
    0056a79cstr x0, [sp+168]
    0056a7a0str x1, [sp+176]
    0056a7a4stp xzr, xzr, [sp+96]
    0056a7a8stp xzr, xzr, [sp+112]
    0056a7acadd x0, sp, 96
    0056a7b0str x0, [sp+128]
    0056a7b4stp xzr, xzr, [sp+64]
    0056a7b8stp xzr, xzr, [sp+80]
    0056a7bcadd x0, sp, 64
    0056a7c0str x0, [sp+144]
    0056a7c4stp xzr, xzr, [sp+32]
    0056a7c8stp xzr, xzr, [sp+48]
    0056a7ccadd x0, sp, 32
    0056a7d0str x0, [sp+136]
    0056a7d4ldr x0, [sp+176]
    0056a7d8ldr x1, [sp+128]
    0056a7dcstr x1, [sp+8]
    0056a7e0str x0, [sp+16]
    0056a7e4orr x0, xzr, 1
    0056a7e8str x0, [sp+24]
    0056a7ecbl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a7f0ldr x0, [sp+176]
    0056a7f4ldr x1, [sp+128]
    0056a7f8ldr x2, [sp+128]
    0056a7fcstr x2, [sp+8]
    0056a800str x0, [sp+16]
    0056a804str x1, [sp+24]
    0056a808bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a80cldr x0, [sp+128]
    0056a810ldr x1, [sp+128]
    0056a814str x1, [sp+8]
    0056a818str x0, [sp+16]
    0056a81corr x0, xzr, 1
    0056a820str x0, [sp+24]
    0056a824bl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a828ldr x0, [sp+176]
    0056a82cldr x1, [sp+128]
    0056a830ldr x2, [sp+128]
    0056a834str x2, [sp+8]
    0056a838str x0, [sp+16]
    0056a83cstr x1, [sp+24]
    0056a840bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a844ldr x0, [sp+128]
    0056a848ldr x1, [sp+144]
    0056a84cstr x1, [sp+8]
    0056a850str x0, [sp+16]
    0056a854orr x0, xzr, 3
    0056a858str x0, [sp+24]
    0056a85cbl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a860ldr x0, [sp+128]
    0056a864ldr x1, [sp+144]
    0056a868ldr x2, [sp+144]
    0056a86cstr x2, [sp+8]
    0056a870str x0, [sp+16]
    0056a874str x1, [sp+24]
    0056a878bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a87cldr x0, [sp+144]
    0056a880ldr x1, [sp+136]
    0056a884str x1, [sp+8]
    0056a888str x0, [sp+16]
    0056a88corr x0, xzr, 6
    0056a890str x0, [sp+24]
    0056a894bl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a898ldr x0, [sp+144]
    0056a89cldr x1, [sp+136]
    0056a8a0ldr x2, [sp+144]
    0056a8a4str x2, [sp+8]
    0056a8a8str x0, [sp+16]
    0056a8acstr x1, [sp+24]
    0056a8b0bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a8b4ldr x0, [sp+144]
    0056a8b8ldr x1, [sp+144]
    0056a8bcstr x1, [sp+8]
    0056a8c0str x0, [sp+16]
    0056a8c4orr x0, xzr, 3
    0056a8c8str x0, [sp+24]
    0056a8ccbl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a8d0ldr x0, [sp+128]
    0056a8d4ldr x1, [sp+144]
    0056a8d8ldr x2, [sp+128]
    0056a8dcstr x2, [sp+8]
    0056a8e0str x0, [sp+16]
    0056a8e4str x1, [sp+24]
    0056a8e8bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a8ecldr x0, [sp+128]
    0056a8f0ldr x1, [sp+144]
    0056a8f4str x1, [sp+8]
    0056a8f8str x0, [sp+16]
    0056a8fcorr x0, xzr, 1
    0056a900str x0, [sp+24]
    0056a904bl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a908ldr x0, [sp+176]
    0056a90cldr x1, [sp+144]
    0056a910ldr x2, [sp+144]
    0056a914str x2, [sp+8]
    0056a918str x0, [sp+16]
    0056a91cstr x1, [sp+24]
    0056a920bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a924ldr x0, [sp+144]
    0056a928ldr x1, [sp+136]
    0056a92cstr x1, [sp+8]
    0056a930str x0, [sp+16]
    0056a934orr x0, xzr, 16
    0056a938str x0, [sp+24]
    0056a93cbl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a940ldr x0, [sp+144]
    0056a944ldr x1, [sp+136]
    0056a948ldr x2, [sp+144]
    0056a94cstr x2, [sp+8]
    0056a950str x0, [sp+16]
    0056a954str x1, [sp+24]
    0056a958bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a95cldr x0, [sp+144]
    0056a960ldr x1, [sp+144]
    0056a964str x1, [sp+8]
    0056a968str x0, [sp+16]
    0056a96corr x0, xzr, 15
    0056a970str x0, [sp+24]
    0056a974bl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a978ldr x0, [sp+128]
    0056a97cldr x1, [sp+144]
    0056a980ldr x2, [sp+128]
    0056a984str x2, [sp+8]
    0056a988str x0, [sp+16]
    0056a98cstr x1, [sp+24]
    0056a990bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a994ldr x0, [sp+144]
    0056a998ldr x1, [sp+144]
    0056a99cstr x1, [sp+8]
    0056a9a0str x0, [sp+16]
    0056a9a4movz x0, 17
    0056a9a8str x0, [sp+24]
    0056a9acbl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a9b0ldr x0, [sp+176]
    0056a9b4ldr x1, [sp+144]
    0056a9b8ldr x2, [sp+144]
    0056a9bcstr x2, [sp+8]
    0056a9c0str x0, [sp+16]
    0056a9c4str x1, [sp+24]
    0056a9c8bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056a9ccldr x0, [sp+144]
    0056a9d0ldr x1, [sp+144]
    0056a9d4str x1, [sp+8]
    0056a9d8str x0, [sp+16]
    0056a9dcmovz x0, 143
    0056a9e0str x0, [sp+24]
    0056a9e4bl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056a9e8ldr x0, [sp+128]
    0056a9ecldr x1, [sp+144]
    0056a9f0ldr x2, [sp+144]
    0056a9f4str x2, [sp+8]
    0056a9f8str x0, [sp+16]
    0056a9fcstr x1, [sp+24]
    0056aa00bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056aa04ldr x0, [sp+144]
    0056aa08ldr x1, [sp+144]
    0056aa0cstr x1, [sp+8]
    0056aa10str x0, [sp+16]
    0056aa14movz x0, 47
    0056aa18str x0, [sp+24]
    0056aa1cbl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056aa20ldr x0, [sp+128]
    0056aa24ldr x1, [sp+144]
    0056aa28ldr x2, [sp+128]
    0056aa2cstr x2, [sp+8]
    0056aa30str x0, [sp+16]
    0056aa34str x1, [sp+24]
    0056aa38bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056aa3cldr x0, [sp+128]
    0056aa40ldr x1, [sp+128]
    0056aa44str x1, [sp+8]
    0056aa48str x0, [sp+16]
    0056aa4corr x0, xzr, 2
    0056aa50str x0, [sp+24]
    0056aa54bl crypto/internal/fips140/nistec.p256Sqr.abi0
    0056aa58ldr x0, [sp+176]
    0056aa5cldr x1, [sp+128]
    0056aa60ldr x2, [sp+168]
    0056aa64str x2, [sp+8]
    0056aa68str x0, [sp+16]
    0056aa6cstr x1, [sp+24]
    0056aa70bl crypto/internal/fips140/nistec.p256Mul.abi0
    0056aa74ldur x29, [sp-8]
    0056aa78ldr x30, [sp], 160
    0056aa7cret x30
    0056aa80
    0056aa80loc_56aa80:
    0056aa80stp x0, x1, [sp+8]
    0056aa84mov x3, x30
    0056aa88bl runtime.morestack_noctxt.abi0
    0056aa8cldp x0, x1, [sp+8]
    0056aa90b 0x56a780
    0056aa94udf 0
    0056aa98udf 0
    0056aa9cudf 0
    0056a780