File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    00592f70
    00592f70crypto/internal/fips140/edwards25519.(*Point).Bytes: ; void crypto/internal/fips140/edwards25519.(*Point).Bytes(crypto/internal/fips140/edwards25519.Point * v)
    00592f70ldr x16, [x28+16]
    00592f74subs xzr, sp, x16
    00592f78b.ls 0x592fdc
    00592f7cstr x30, [sp-96]!
    00592f80stur x29, [sp-8]
    00592f84sub x29, sp, 8
    00592f88str x0, [sp+104]
    00592f8cstr xzr, [sp+32]
    00592f90stp xzr, xzr, [sp+40]
    00592f94adrp x0, 0x6b000
    00592f98add x0, x0, 2240
    00592f9cbl runtime.newobject
    00592fa0str x0, [sp+80]
    00592fa4stp xzr, xzr, [x0]
    00592fa8stp xzr, xzr, [x0+16]
    00592facldr x0, [sp+104]
    00592fb0ldr x1, [sp+80]
    00592fb4bl crypto/internal/fips140/edwards25519.(*Point).bytes
    00592fb8str x0, [sp+56]
    00592fbcstr x1, [sp+64]
    00592fc0str x2, [sp+72]
    00592fc4str x0, [sp+32]
    00592fc8str x1, [sp+40]
    00592fccstr x2, [sp+48]
    00592fd0ldur x29, [sp-8]
    00592fd4ldr x30, [sp], 96
    00592fd8ret x30
    00592fdc
    00592fdcloc_592fdc:
    00592fdcstr x0, [sp+8]
    00592fe0mov x3, x30
    00592fe4bl runtime.morestack_noctxt.abi0
    00592fe8ldr x0, [sp+8]
    00592fecb 0x592f70
    00592f70
    00592ff0
    00592ff0crypto/internal/fips140/edwards25519.(*Point).bytes: ; void crypto/internal/fips140/edwards25519.(*Point).bytes(crypto/internal/fips140/edwards25519.Point * v, uint8[32] * buf)
    00592ff0ldr x16, [x28+16]
    00592ff4sub x17, sp, 160
    00592ff8subs xzr, x17, x16
    00592ffcb.ls 0x593180
    00593000sub x20, sp, 288
    00593004stp x29, x30, [x20-8]
    00593008add sp, x20, 0
    0059300csub x29, sp, 8
    00593010str x0, [sp+296]
    00593014str x1, [sp+304]
    00593018stp xzr, xzr, [sp+168]
    0059301cstr xzr, [sp+184]
    00593020str xzr, [sp+240]
    00593024add x0, sp, 240
    00593028str x0, [sp+272]
    0059302cldrsb x27, [x0]
    00593030ldr x3, [sp+296]
    00593034adrp x27, 0x4b8000
    00593038ldr w4, [x27+3056]
    0059303ccbz w4, 0x593044
    00593040b 0x593048
    00593044
    00593044loc_593044:
    00593044b 0x59305c
    00593048
    00593048loc_593048:
    00593048bl runtime.gcWriteBarrier2
    0059304cstr x3, [x25]
    00593050ldr x4, [x0]
    00593054str x4, [x25+8]
    00593058b 0x59305c
    0059305c
    0059305cloc_59305c:
    0059305cstr x3, [x0]
    00593060ldrsb x27, [x0]
    00593064b 0x593068
    00593068
    00593068loc_593068:
    00593068str x0, [sp+216]
    0059306corr x2, xzr, 1
    00593070str x2, [sp+224]
    00593074str x2, [sp+232]
    00593078mov x1, x2
    0059307cbl crypto/internal/fips140/edwards25519.checkInitialized
    00593080stp xzr, xzr, [sp+40]
    00593084stp xzr, xzr, [sp+56]
    00593088str xzr, [sp+72]
    0059308cstp xzr, xzr, [sp+120]
    00593090stp xzr, xzr, [sp+136]
    00593094str xzr, [sp+152]
    00593098stp xzr, xzr, [sp+80]
    0059309cstp xzr, xzr, [sp+96]
    005930a0str xzr, [sp+112]
    005930a4ldr x3, [sp+296]
    005930a8ldrsb x27, [x3]
    005930acadd x1, x3, 80
    005930b0str x1, [sp+264]
    005930b4add x0, sp, 40
    005930b8bl crypto/internal/fips140/edwards25519/field.(*Element).Invert
    005930bcldr x1, [sp+296]
    005930c0ldrsb x27, [x1]
    005930c4str x1, [sp+256]
    005930c8add x0, sp, 120
    005930ccadd x2, sp, 40
    005930d0bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005930d4ldr x3, [sp+296]
    005930d8ldrsb x27, [x3]
    005930dcadd x1, x3, 40
    005930e0str x1, [sp+248]
    005930e4add x0, sp, 80
    005930e8add x2, sp, 40
    005930ecbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005930f0ldr x0, [sp+304]
    005930f4add x1, sp, 80
    005930f8bl crypto/internal/fips140/edwards25519.copyFieldElement
    005930fcstr x0, [sp+192]
    00593100str x1, [sp+200]
    00593104str x2, [sp+208]
    00593108add x0, sp, 120
    0059310cbl crypto/internal/fips140/edwards25519/field.(*Element).IsNegative
    00593110str x0, [sp+160]
    00593114ldr x1, [sp+200]
    00593118ldr x3, [sp+192]
    0059311csubs xzr, x1, 31
    00593120b.hi 0x593128
    00593124b 0x593174
    00593128
    00593128loc_593128:
    00593128ldr x1, [sp+200]
    0059312cldr x4, [sp+192]
    00593130ldrb w3, [x3+31]
    00593134orr x3, x3, x0, lsl #7
    00593138subs xzr, x1, 31
    0059313cb.hi 0x593144
    00593140b 0x59316c
    00593144
    00593144loc_593144:
    00593144strb w3, [x4+31]
    00593148ldr x0, [sp+192]
    0059314cldr x1, [sp+200]
    00593150ldr x2, [sp+208]
    00593154str x0, [sp+168]
    00593158str x1, [sp+176]
    0059315cstr x2, [sp+184]
    00593160ldp x29, x30, [sp-8]
    00593164add sp, sp, 288
    00593168ret x30
    0059316c
    0059316cloc_59316c:
    0059316corr x0, xzr, 31
    00593170bl runtime.panicIndex
    00593174
    00593174loc_593174:
    00593174orr x0, xzr, 31
    00593178bl runtime.panicIndex
    0059317chint
    00593180
    00593180loc_593180:
    00593180stp x0, x1, [sp+8]
    00593184mov x3, x30
    00593188bl runtime.morestack_noctxt.abi0
    0059318cldp x0, x1, [sp+8]
    00593190b 0x592ff0
    00593194udf 0
    00593198udf 0
    0059319cudf 0
    00592ff0
    005931a0
    005931a0crypto/internal/fips140/edwards25519.(*Point).SetBytes: ; void crypto/internal/fips140/edwards25519.(*Point).SetBytes(crypto/internal/fips140/edwards25519.Point * v, struct []uint8 x)
    005931a0ldr x16, [x28+16]
    005931a4sub x17, sp, 384
    005931a8subs xzr, x17, x16
    005931acb.ls 0x59347c
    005931b0sub x20, sp, 512
    005931b4stp x29, x30, [x20-8]
    005931b8add sp, x20, 0
    005931bcsub x29, sp, 8
    005931c0str x0, [sp+520]
    005931c4str x1, [sp+528]
    005931c8str x2, [sp+536]
    005931ccstr x3, [sp+544]
    005931d0str xzr, [sp+336]
    005931d4stp xzr, xzr, [sp+320]
    005931d8stp xzr, xzr, [sp+264]
    005931dcstp xzr, xzr, [sp+280]
    005931e0str xzr, [sp+296]
    005931e4add x4, sp, 264
    005931e8str x4, [sp+488]
    005931ecstr xzr, [sp+480]
    005931f0stp xzr, xzr, [sp+464]
    005931f4ldr x1, [sp+528]
    005931f8ldr x2, [sp+536]
    005931fcldr x3, [sp+544]
    00593200ldr x0, [sp+488]
    00593204bl crypto/internal/fips140/edwards25519/field.(*Element).SetBytes
    00593208str x0, [sp+480]
    0059320cstr x1, [sp+464]
    00593210str x2, [sp+472]
    00593214ldr x4, [sp+480]
    00593218str x4, [sp+424]
    0059321cldr x4, [sp+464]
    00593220ldr x5, [sp+472]
    00593224str x4, [sp+408]
    00593228str x5, [sp+416]
    0059322cldr x4, [sp+424]
    00593230str x4, [sp+352]
    00593234ldr x4, [sp+416]
    00593238ldr x5, [sp+408]
    0059323cstr x5, [sp+392]
    00593240str x4, [sp+400]
    00593244cbnz x5, 0x59324c
    00593248b 0x593288
    0059324c
    0059324cloc_59324c:
    0059324cadrp x0, 0x133000
    00593250add x0, x0, 763
    00593254movz x1, 43
    00593258bl errors.New
    0059325cstr x0, [sp+464]
    00593260str x1, [sp+472]
    00593264str xzr, [sp+336]
    00593268ldr x1, [sp+464]
    0059326cldr x2, [sp+472]
    00593270str x1, [sp+320]
    00593274str x2, [sp+328]
    00593278ldr x0, [sp+336]
    0059327cldp x29, x30, [sp-8]
    00593280add sp, sp, 512
    00593284ret x30
    00593288
    00593288loc_593288:
    00593288stp xzr, xzr, [sp+224]
    0059328cstp xzr, xzr, [sp+240]
    00593290str xzr, [sp+256]
    00593294add x0, sp, 224
    00593298str x0, [sp+480]
    0059329cldr x1, [sp+352]
    005932a0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
    005932a4str x0, [sp+344]
    005932a8stp xzr, xzr, [sp+184]
    005932acstp xzr, xzr, [sp+200]
    005932b0str xzr, [sp+216]
    005932b4add x0, sp, 184
    005932b8str x0, [sp+480]
    005932bcldr x1, [sp+344]
    005932c0adrp x27, 0x48e000
    005932c4ldr x2, [x27+712]
    005932c8bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    005932ccstr x0, [sp+384]
    005932d0stp xzr, xzr, [sp+144]
    005932d4stp xzr, xzr, [sp+160]
    005932d8str xzr, [sp+176]
    005932dcadd x0, sp, 144
    005932e0str x0, [sp+480]
    005932e4ldr x1, [sp+344]
    005932e8adrp x27, 0x48e000
    005932ecldr x2, [x27+720]
    005932f0bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005932f4str x0, [sp+376]
    005932f8adrp x27, 0x48e000
    005932fcldr x2, [x27+712]
    00593300mov x1, x0
    00593304bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00593308str x0, [sp+376]
    0059330cstp xzr, xzr, [sp+104]
    00593310stp xzr, xzr, [sp+120]
    00593314str xzr, [sp+136]
    00593318add x2, sp, 104
    0059331cstr x2, [sp+480]
    00593320str xzr, [sp+488]
    00593324ldr x1, [sp+384]
    00593328ldr x2, [sp+376]
    0059332cldr x0, [sp+480]
    00593330bl crypto/internal/fips140/edwards25519/field.(*Element).SqrtRatio
    00593334str x0, [sp+488]
    00593338str x1, [sp+304]
    0059333cstr x0, [sp+496]
    00593340ldr x2, [sp+304]
    00593344str x2, [sp+312]
    00593348str x0, [sp+368]
    0059334cldr x2, [sp+312]
    00593350str x2, [sp+48]
    00593354cbz x2, 0x59335c
    00593358b 0x593398
    0059335c
    0059335cloc_59335c:
    0059335cadrp x0, 0x12e000
    00593360add x0, x0, 3901
    00593364movz x1, 36
    00593368bl errors.New
    0059336cstr x0, [sp+464]
    00593370str x1, [sp+472]
    00593374str xzr, [sp+336]
    00593378ldr x1, [sp+464]
    0059337cldr x2, [sp+472]
    00593380str x1, [sp+320]
    00593384str x2, [sp+328]
    00593388ldr x0, [sp+336]
    0059338cldp x29, x30, [sp-8]
    00593390add sp, sp, 512
    00593394ret x30
    00593398
    00593398loc_593398:
    00593398stp xzr, xzr, [sp+64]
    0059339cstp xzr, xzr, [sp+80]
    005933a0str xzr, [sp+96]
    005933a4add x0, sp, 64
    005933a8str x0, [sp+488]
    005933acldr x1, [sp+368]
    005933b0bl crypto/internal/fips140/edwards25519/field.(*Element).Negate
    005933b4str x0, [sp+360]
    005933b8ldr x1, [sp+536]
    005933bcldr x2, [sp+528]
    005933c0subs xzr, x1, 31
    005933c4b.hi 0x5933cc
    005933c8b 0x593470
    005933cc
    005933ccloc_5933cc:
    005933ccldrb w4, [x2+31]
    005933d0ubfm x3, x4, 7, 7
    005933d4str x3, [sp+56]
    005933d8ldr x4, [sp+368]
    005933dcldr x2, [sp+368]
    005933e0mov x1, x0
    005933e4mov x0, x4
    005933e8bl crypto/internal/fips140/edwards25519/field.(*Element).Select
    005933ecstr x0, [sp+368]
    005933f0ldr x0, [sp+520]
    005933f4ldrsb x27, [x0]
    005933f8str x0, [sp+456]
    005933fcldr x1, [sp+368]
    00593400bl crypto/internal/fips140/edwards25519/field.(*Element).Set
    00593404ldr x4, [sp+520]
    00593408ldrsb x27, [x4]
    0059340cadd x0, x4, 40
    00593410str x0, [sp+448]
    00593414ldr x1, [sp+352]
    00593418bl crypto/internal/fips140/edwards25519/field.(*Element).Set
    0059341cldr x4, [sp+520]
    00593420ldrsb x27, [x4]
    00593424add x0, x4, 80
    00593428str x0, [sp+440]
    0059342cbl crypto/internal/fips140/edwards25519/field.(*Element).One
    00593430ldr x4, [sp+520]
    00593434ldrsb x27, [x4]
    00593438add x0, x4, 120
    0059343cstr x0, [sp+432]
    00593440ldr x1, [sp+368]
    00593444ldr x2, [sp+352]
    00593448bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    0059344cldr x4, [sp+520]
    00593450str x4, [sp+336]
    00593454stp xzr, xzr, [sp+320]
    00593458ldr x0, [sp+336]
    0059345cmov x1, xzr
    00593460mov x2, xzr
    00593464ldp x29, x30, [sp-8]
    00593468add sp, sp, 512
    0059346cret x30
    00593470
    00593470loc_593470:
    00593470orr x0, xzr, 31
    00593474bl runtime.panicIndex
    00593478hint
    0059347c
    0059347cloc_59347c:
    0059347cstp x0, x1, [sp+8]
    00593480stp x2, x3, [sp+24]
    00593484mov x3, x30
    00593488bl runtime.morestack_noctxt.abi0
    0059348cldp x0, x1, [sp+8]
    00593490ldp x2, x3, [sp+24]
    00593494b 0x5931a0
    00593498udf 0
    0059349cudf 0
    005931a0
    005934a0
    005934a0crypto/internal/fips140/edwards25519.copyFieldElement: ; void crypto/internal/fips140/edwards25519.copyFieldElement(uint8[32] * buf, crypto/internal/fips140/edwards25519/field.Element * v)
    005934a0ldr x16, [x28+16]
    005934a4sub x17, sp, 48
    005934a8subs xzr, x17, x16
    005934acb.ls 0x5935bc
    005934b0str x30, [sp-176]!
    005934b4stur x29, [sp-8]
    005934b8sub x29, sp, 8
    005934bcstr x0, [sp+184]
    005934c0str x1, [sp+192]
    005934c4str xzr, [sp+48]
    005934c8stp xzr, xzr, [sp+56]
    005934ccldr x1, [sp+184]
    005934d0ldrsb x27, [x1]
    005934d4b 0x5934d8
    005934d8
    005934d8loc_5934d8:
    005934d8str x1, [sp+144]
    005934dcorr x1, xzr, 32
    005934e0str x1, [sp+152]
    005934e4str x1, [sp+160]
    005934e8ldr x0, [sp+192]
    005934ecbl crypto/internal/fips140/edwards25519/field.(*Element).Bytes
    005934f0str x0, [sp+120]
    005934f4str x1, [sp+128]
    005934f8str x2, [sp+136]
    005934fcldr x1, [sp+144]
    00593500ldr x2, [sp+152]
    00593504ldr x3, [sp+160]
    00593508str x1, [sp+96]
    0059350cstr x2, [sp+104]
    00593510str x3, [sp+112]
    00593514ldr x1, [sp+128]
    00593518ldr x2, [sp+120]
    0059351cldr x3, [sp+136]
    00593520str x2, [sp+72]
    00593524str x1, [sp+80]
    00593528str x3, [sp+88]
    0059352cldr x2, [sp+104]
    00593530str x2, [sp+40]
    00593534subs xzr, x2, x1
    00593538b.gt 0x593540
    0059353cb 0x593548
    00593540
    00593540loc_593540:
    00593540str x1, [sp+40]
    00593544b 0x59354c
    00593548
    00593548loc_593548:
    00593548b 0x59354c
    0059354c
    0059354cloc_59354c:
    0059354cldr x3, [sp+72]
    00593550ldr x4, [sp+96]
    00593554subs xzr, x3, x4
    00593558b.ne 0x593560
    0059355cb 0x59357c
    00593560
    00593560loc_593560:
    00593560ldr x3, [sp+40]
    00593564str x3, [sp+32]
    00593568ldr x2, [sp+32]
    0059356cldr x1, [sp+72]
    00593570ldr x0, [sp+96]
    00593574bl runtime.memmove
    00593578b 0x593580
    0059357c
    0059357cloc_59357c:
    0059357cb 0x593580
    00593580
    00593580loc_593580:
    00593580ldr x3, [sp+184]
    00593584ldrsb x27, [x3]
    00593588b 0x59358c
    0059358c
    0059358cloc_59358c:
    0059358cstr x3, [sp+120]
    00593590orr x2, xzr, 32
    00593594str x2, [sp+128]
    00593598str x2, [sp+136]
    0059359cstr x3, [sp+48]
    005935a0str x2, [sp+56]
    005935a4str x2, [sp+64]
    005935a8ldr x0, [sp+48]
    005935acmov x1, x2
    005935b0ldur x29, [sp-8]
    005935b4ldr x30, [sp], 176
    005935b8ret x30
    005935bc
    005935bcloc_5935bc:
    005935bcstp x0, x1, [sp+8]
    005935c0mov x3, x30
    005935c4bl runtime.morestack_noctxt.abi0
    005935c8ldp x0, x1, [sp+8]
    005935ccb 0x5934a0
    005934a0
    005935d0
    005935d0crypto/internal/fips140/edwards25519.(*projP2).FromP1xP1: ; void crypto/internal/fips140/edwards25519.(*projP2).FromP1xP1(crypto/internal/fips140/edwards25519.projP2 * v, crypto/internal/fips140/edwards25519.projP1xP1 * p)
    005935d0ldr x16, [x28+16]
    005935d4subs xzr, sp, x16
    005935d8b.ls 0x5936b4
    005935dcstr x30, [sp-128]!
    005935e0stur x29, [sp-8]
    005935e4sub x29, sp, 8
    005935e8str x0, [sp+136]
    005935ecstr x1, [sp+144]
    005935f0str xzr, [sp+40]
    005935f4ldr x3, [sp+136]
    005935f8ldrsb x27, [x3]
    005935fcstr x3, [sp+96]
    00593600ldr x3, [sp+144]
    00593604ldrsb x27, [x3]
    00593608str x3, [sp+88]
    0059360cldr x3, [sp+144]
    00593610ldrsb x27, [x3]
    00593614add x2, x3, 120
    00593618str x2, [sp+80]
    0059361cldr x1, [sp+88]
    00593620ldr x0, [sp+96]
    00593624bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593628ldr x3, [sp+136]
    0059362cldrsb x27, [x3]
    00593630add x3, x3, 40
    00593634str x3, [sp+72]
    00593638ldr x3, [sp+144]
    0059363cldrsb x27, [x3]
    00593640add x3, x3, 40
    00593644str x3, [sp+64]
    00593648ldr x3, [sp+144]
    0059364cldrsb x27, [x3]
    00593650add x2, x3, 80
    00593654str x2, [sp+56]
    00593658ldr x1, [sp+64]
    0059365cldr x0, [sp+72]
    00593660bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593664ldr x3, [sp+136]
    00593668ldrsb x27, [x3]
    0059366cadd x3, x3, 80
    00593670str x3, [sp+48]
    00593674ldr x3, [sp+144]
    00593678ldrsb x27, [x3]
    0059367cadd x3, x3, 80
    00593680str x3, [sp+112]
    00593684ldr x3, [sp+144]
    00593688ldrsb x27, [x3]
    0059368cadd x2, x3, 120
    00593690str x2, [sp+104]
    00593694ldr x0, [sp+48]
    00593698ldr x1, [sp+112]
    0059369cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005936a0ldr x0, [sp+136]
    005936a4str x0, [sp+40]
    005936a8ldur x29, [sp-8]
    005936acldr x30, [sp], 128
    005936b0ret x30
    005936b4
    005936b4loc_5936b4:
    005936b4stp x0, x1, [sp+8]
    005936b8mov x3, x30
    005936bcbl runtime.morestack_noctxt.abi0
    005936c0ldp x0, x1, [sp+8]
    005936c4b 0x5935d0
    005936c8udf 0
    005936ccudf 0
    005935d0
    005936d0
    005936d0crypto/internal/fips140/edwards25519.(*projP2).FromP3: ; void crypto/internal/fips140/edwards25519.(*projP2).FromP3(crypto/internal/fips140/edwards25519.projP2 * v, crypto/internal/fips140/edwards25519.Point * p)
    005936d0ldr x16, [x28+16]
    005936d4subs xzr, sp, x16
    005936d8b.ls 0x593778
    005936dcstr x30, [sp-96]!
    005936e0stur x29, [sp-8]
    005936e4sub x29, sp, 8
    005936e8str x0, [sp+104]
    005936ecstr x1, [sp+112]
    005936f0str xzr, [sp+32]
    005936f4ldr x2, [sp+104]
    005936f8ldrsb x27, [x2]
    005936fcstr x2, [sp+80]
    00593700ldr x1, [sp+112]
    00593704ldrsb x27, [x1]
    00593708str x1, [sp+72]
    0059370cldr x0, [sp+80]
    00593710bl crypto/internal/fips140/edwards25519/field.(*Element).Set
    00593714ldr x2, [sp+104]
    00593718ldrsb x27, [x2]
    0059371cadd x2, x2, 40
    00593720str x2, [sp+64]
    00593724ldr x2, [sp+112]
    00593728ldrsb x27, [x2]
    0059372cadd x1, x2, 40
    00593730str x1, [sp+56]
    00593734ldr x0, [sp+64]
    00593738bl crypto/internal/fips140/edwards25519/field.(*Element).Set
    0059373cldr x2, [sp+104]
    00593740ldrsb x27, [x2]
    00593744add x2, x2, 80
    00593748str x2, [sp+48]
    0059374cldr x2, [sp+112]
    00593750ldrsb x27, [x2]
    00593754add x1, x2, 80
    00593758str x1, [sp+40]
    0059375cldr x0, [sp+48]
    00593760bl crypto/internal/fips140/edwards25519/field.(*Element).Set
    00593764ldr x0, [sp+104]
    00593768str x0, [sp+32]
    0059376cldur x29, [sp-8]
    00593770ldr x30, [sp], 96
    00593774ret x30
    00593778
    00593778loc_593778:
    00593778stp x0, x1, [sp+8]
    0059377cmov x3, x30
    00593780bl runtime.morestack_noctxt.abi0
    00593784ldp x0, x1, [sp+8]
    00593788b 0x5936d0
    0059378cudf 0
    005936d0
    00593790
    00593790crypto/internal/fips140/edwards25519.(*Point).fromP1xP1: ; void crypto/internal/fips140/edwards25519.(*Point).fromP1xP1(crypto/internal/fips140/edwards25519.Point * v, crypto/internal/fips140/edwards25519.projP1xP1 * p)
    00593790ldr x16, [x28+16]
    00593794sub x17, sp, 16
    00593798subs xzr, x17, x16
    0059379cb.ls 0x5938b0
    005937a0str x30, [sp-144]!
    005937a4stur x29, [sp-8]
    005937a8sub x29, sp, 8
    005937acstr x0, [sp+152]
    005937b0str x1, [sp+160]
    005937b4str xzr, [sp+32]
    005937b8ldr x3, [sp+152]
    005937bcldrsb x27, [x3]
    005937c0str x3, [sp+88]
    005937c4ldr x3, [sp+160]
    005937c8ldrsb x27, [x3]
    005937ccstr x3, [sp+80]
    005937d0ldr x3, [sp+160]
    005937d4ldrsb x27, [x3]
    005937d8add x2, x3, 120
    005937dcstr x2, [sp+72]
    005937e0ldr x1, [sp+80]
    005937e4ldr x0, [sp+88]
    005937e8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005937ecldr x3, [sp+152]
    005937f0ldrsb x27, [x3]
    005937f4add x3, x3, 40
    005937f8str x3, [sp+64]
    005937fcldr x3, [sp+160]
    00593800ldrsb x27, [x3]
    00593804add x3, x3, 40
    00593808str x3, [sp+56]
    0059380cldr x3, [sp+160]
    00593810ldrsb x27, [x3]
    00593814add x2, x3, 80
    00593818str x2, [sp+48]
    0059381cldr x1, [sp+56]
    00593820ldr x0, [sp+64]
    00593824bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593828ldr x3, [sp+152]
    0059382cldrsb x27, [x3]
    00593830add x3, x3, 80
    00593834str x3, [sp+40]
    00593838ldr x3, [sp+160]
    0059383cldrsb x27, [x3]
    00593840add x3, x3, 80
    00593844str x3, [sp+128]
    00593848ldr x3, [sp+160]
    0059384cldrsb x27, [x3]
    00593850add x2, x3, 120
    00593854str x2, [sp+120]
    00593858ldr x0, [sp+40]
    0059385cldr x1, [sp+128]
    00593860bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593864ldr x3, [sp+152]
    00593868ldrsb x27, [x3]
    0059386cadd x3, x3, 120
    00593870str x3, [sp+112]
    00593874ldr x3, [sp+160]
    00593878ldrsb x27, [x3]
    0059387cstr x3, [sp+104]
    00593880ldr x3, [sp+160]
    00593884ldrsb x27, [x3]
    00593888add x2, x3, 40
    0059388cstr x2, [sp+96]
    00593890ldr x0, [sp+112]
    00593894ldr x1, [sp+104]
    00593898bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    0059389cldr x0, [sp+152]
    005938a0str x0, [sp+32]
    005938a4ldur x29, [sp-8]
    005938a8ldr x30, [sp], 144
    005938acret x30
    005938b0
    005938b0loc_5938b0:
    005938b0stp x0, x1, [sp+8]
    005938b4mov x3, x30
    005938b8bl runtime.morestack_noctxt.abi0
    005938bcldp x0, x1, [sp+8]
    005938c0b 0x593790
    005938c4udf 0
    005938c8udf 0
    005938ccudf 0
    00593790
    005938d0
    005938d0crypto/internal/fips140/edwards25519.(*Point).fromP2: ; void crypto/internal/fips140/edwards25519.(*Point).fromP2(crypto/internal/fips140/edwards25519.Point * v, crypto/internal/fips140/edwards25519.projP2 * p)
    005938d0ldr x16, [x28+16]
    005938d4sub x17, sp, 16
    005938d8subs xzr, x17, x16
    005938dcb.ls 0x5939dc
    005938e0str x30, [sp-144]!
    005938e4stur x29, [sp-8]
    005938e8sub x29, sp, 8
    005938ecstr x0, [sp+152]
    005938f0str x1, [sp+160]
    005938f4str xzr, [sp+40]
    005938f8ldr x3, [sp+152]
    005938fcldrsb x27, [x3]
    00593900str x3, [sp+96]
    00593904ldr x3, [sp+160]
    00593908ldrsb x27, [x3]
    0059390cstr x3, [sp+88]
    00593910ldr x3, [sp+160]
    00593914ldrsb x27, [x3]
    00593918add x2, x3, 80
    0059391cstr x2, [sp+80]
    00593920ldr x1, [sp+88]
    00593924ldr x0, [sp+96]
    00593928bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    0059392cldr x3, [sp+152]
    00593930ldrsb x27, [x3]
    00593934add x3, x3, 40
    00593938str x3, [sp+72]
    0059393cldr x3, [sp+160]
    00593940ldrsb x27, [x3]
    00593944add x3, x3, 40
    00593948str x3, [sp+64]
    0059394cldr x3, [sp+160]
    00593950ldrsb x27, [x3]
    00593954add x2, x3, 80
    00593958str x2, [sp+56]
    0059395cldr x1, [sp+64]
    00593960ldr x0, [sp+72]
    00593964bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593968ldr x3, [sp+152]
    0059396cldrsb x27, [x3]
    00593970add x3, x3, 80
    00593974str x3, [sp+48]
    00593978ldr x3, [sp+160]
    0059397cldrsb x27, [x3]
    00593980add x1, x3, 80
    00593984str x1, [sp+128]
    00593988ldr x0, [sp+48]
    0059398cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
    00593990ldr x3, [sp+152]
    00593994ldrsb x27, [x3]
    00593998add x3, x3, 120
    0059399cstr x3, [sp+120]
    005939a0ldr x3, [sp+160]
    005939a4ldrsb x27, [x3]
    005939a8str x3, [sp+112]
    005939acldr x3, [sp+160]
    005939b0ldrsb x27, [x3]
    005939b4add x2, x3, 40
    005939b8str x2, [sp+104]
    005939bcldr x0, [sp+120]
    005939c0ldr x1, [sp+112]
    005939c4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005939c8ldr x0, [sp+152]
    005939ccstr x0, [sp+40]
    005939d0ldur x29, [sp-8]
    005939d4ldr x30, [sp], 144
    005939d8ret x30
    005939dc
    005939dcloc_5939dc:
    005939dcstp x0, x1, [sp+8]
    005939e0mov x3, x30
    005939e4bl runtime.morestack_noctxt.abi0
    005939e8ldp x0, x1, [sp+8]
    005939ecb 0x5938d0
    005938d0
    005939f0
    005939f0crypto/internal/fips140/edwards25519.(*projCached).FromP3: ; void crypto/internal/fips140/edwards25519.(*projCached).FromP3(crypto/internal/fips140/edwards25519.projCached * v, crypto/internal/fips140/edwards25519.Point * p)
    005939f0ldr x16, [x28+16]
    005939f4subs xzr, sp, x16
    005939f8b.ls 0x593aec
    005939fcstr x30, [sp-128]!
    00593a00stur x29, [sp-8]
    00593a04sub x29, sp, 8
    00593a08str x0, [sp+136]
    00593a0cstr x1, [sp+144]
    00593a10str xzr, [sp+32]
    00593a14ldr x3, [sp+136]
    00593a18ldrsb x27, [x3]
    00593a1cstr x3, [sp+88]
    00593a20ldr x3, [sp+144]
    00593a24ldrsb x27, [x3]
    00593a28add x3, x3, 40
    00593a2cstr x3, [sp+80]
    00593a30ldr x2, [sp+144]
    00593a34ldrsb x27, [x2]
    00593a38str x2, [sp+72]
    00593a3cldr x1, [sp+80]
    00593a40ldr x0, [sp+88]
    00593a44bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00593a48ldr x3, [sp+136]
    00593a4cldrsb x27, [x3]
    00593a50add x3, x3, 40
    00593a54str x3, [sp+64]
    00593a58ldr x3, [sp+144]
    00593a5cldrsb x27, [x3]
    00593a60add x3, x3, 40
    00593a64str x3, [sp+56]
    00593a68ldr x2, [sp+144]
    00593a6cldrsb x27, [x2]
    00593a70str x2, [sp+48]
    00593a74ldr x1, [sp+56]
    00593a78ldr x0, [sp+64]
    00593a7cbl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00593a80ldr x3, [sp+136]
    00593a84ldrsb x27, [x3]
    00593a88add x3, x3, 80
    00593a8cstr x3, [sp+40]
    00593a90ldr x3, [sp+144]
    00593a94ldrsb x27, [x3]
    00593a98add x1, x3, 80
    00593a9cstr x1, [sp+112]
    00593aa0ldr x0, [sp+40]
    00593aa4bl crypto/internal/fips140/edwards25519/field.(*Element).Set
    00593aa8ldr x3, [sp+136]
    00593aacldrsb x27, [x3]
    00593ab0add x3, x3, 120
    00593ab4str x3, [sp+104]
    00593ab8ldr x3, [sp+144]
    00593abcldrsb x27, [x3]
    00593ac0add x1, x3, 120
    00593ac4str x1, [sp+96]
    00593ac8adrp x27, 0x48e000
    00593accldr x2, [x27+728]
    00593ad0ldr x0, [sp+104]
    00593ad4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593ad8ldr x0, [sp+136]
    00593adcstr x0, [sp+32]
    00593ae0ldur x29, [sp-8]
    00593ae4ldr x30, [sp], 128
    00593ae8ret x30
    00593aec
    00593aecloc_593aec:
    00593aecstp x0, x1, [sp+8]
    00593af0mov x3, x30
    00593af4bl runtime.morestack_noctxt.abi0
    00593af8ldp x0, x1, [sp+8]
    00593afcb 0x5939f0
    005939f0
    00593b00
    00593b00crypto/internal/fips140/edwards25519.(*affineCached).FromP3: ; void crypto/internal/fips140/edwards25519.(*affineCached).FromP3(crypto/internal/fips140/edwards25519.affineCached * v, crypto/internal/fips140/edwards25519.Point * p)
    00593b00ldr x16, [x28+16]
    00593b04sub x17, sp, 80
    00593b08subs xzr, x17, x16
    00593b0cb.ls 0x593c78
    00593b10str x30, [sp-208]!
    00593b14stur x29, [sp-8]
    00593b18sub x29, sp, 8
    00593b1cstr x0, [sp+216]
    00593b20str x1, [sp+224]
    00593b24str xzr, [sp+72]
    00593b28ldr x3, [sp+216]
    00593b2cldrsb x27, [x3]
    00593b30str x3, [sp+120]
    00593b34ldr x3, [sp+224]
    00593b38ldrsb x27, [x3]
    00593b3cadd x3, x3, 40
    00593b40str x3, [sp+112]
    00593b44ldr x2, [sp+224]
    00593b48ldrsb x27, [x2]
    00593b4cstr x2, [sp+104]
    00593b50ldr x1, [sp+112]
    00593b54ldr x0, [sp+120]
    00593b58bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00593b5cldr x3, [sp+216]
    00593b60ldrsb x27, [x3]
    00593b64add x3, x3, 40
    00593b68str x3, [sp+96]
    00593b6cldr x3, [sp+224]
    00593b70ldrsb x27, [x3]
    00593b74add x3, x3, 40
    00593b78str x3, [sp+88]
    00593b7cldr x2, [sp+224]
    00593b80ldrsb x27, [x2]
    00593b84str x2, [sp+80]
    00593b88ldr x1, [sp+88]
    00593b8cldr x0, [sp+96]
    00593b90bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00593b94ldr x3, [sp+216]
    00593b98ldrsb x27, [x3]
    00593b9cadd x3, x3, 80
    00593ba0str x3, [sp+192]
    00593ba4ldr x3, [sp+224]
    00593ba8ldrsb x27, [x3]
    00593bacadd x1, x3, 120
    00593bb0str x1, [sp+184]
    00593bb4adrp x27, 0x48e000
    00593bb8ldr x2, [x27+728]
    00593bbcldr x0, [sp+192]
    00593bc0bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593bc4stp xzr, xzr, [sp+32]
    00593bc8stp xzr, xzr, [sp+48]
    00593bccstr xzr, [sp+64]
    00593bd0ldr x3, [sp+224]
    00593bd4ldrsb x27, [x3]
    00593bd8add x1, x3, 80
    00593bdcstr x1, [sp+176]
    00593be0add x0, sp, 32
    00593be4bl crypto/internal/fips140/edwards25519/field.(*Element).Invert
    00593be8ldr x3, [sp+216]
    00593becldrsb x27, [x3]
    00593bf0str x3, [sp+168]
    00593bf4ldr x1, [sp+216]
    00593bf8ldrsb x27, [x1]
    00593bfcstr x1, [sp+160]
    00593c00ldr x0, [sp+168]
    00593c04add x2, sp, 32
    00593c08bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593c0cldr x3, [sp+216]
    00593c10ldrsb x27, [x3]
    00593c14add x3, x3, 40
    00593c18str x3, [sp+152]
    00593c1cldr x3, [sp+216]
    00593c20ldrsb x27, [x3]
    00593c24add x1, x3, 40
    00593c28str x1, [sp+144]
    00593c2cldr x0, [sp+152]
    00593c30add x2, sp, 32
    00593c34bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593c38ldr x3, [sp+216]
    00593c3cldrsb x27, [x3]
    00593c40add x3, x3, 80
    00593c44str x3, [sp+136]
    00593c48ldr x3, [sp+216]
    00593c4cldrsb x27, [x3]
    00593c50add x1, x3, 80
    00593c54str x1, [sp+128]
    00593c58ldr x0, [sp+136]
    00593c5cadd x2, sp, 32
    00593c60bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593c64ldr x0, [sp+216]
    00593c68str x0, [sp+72]
    00593c6cldur x29, [sp-8]
    00593c70ldr x30, [sp], 208
    00593c74ret x30
    00593c78
    00593c78loc_593c78:
    00593c78stp x0, x1, [sp+8]
    00593c7cmov x3, x30
    00593c80bl runtime.morestack_noctxt.abi0
    00593c84ldp x0, x1, [sp+8]
    00593c88b 0x593b00
    00593c8cudf 0
    00593b00
    00593c90
    00593c90crypto/internal/fips140/edwards25519.(*Point).Add: ; void crypto/internal/fips140/edwards25519.(*Point).Add(crypto/internal/fips140/edwards25519.Point * v, crypto/internal/fips140/edwards25519.Point * p, crypto/internal/fips140/edwards25519.Point * q)
    00593c90ldr x16, [x28+16]
    00593c94sub x17, sp, 336
    00593c98subs xzr, x17, x16
    00593c9cb.ls 0x593dd4
    00593ca0sub x20, sp, 464
    00593ca4stp x29, x30, [x20-8]
    00593ca8add sp, x20, 0
    00593cacsub x29, sp, 8
    00593cb0str x0, [sp+472]
    00593cb4str x1, [sp+480]
    00593cb8str x2, [sp+488]
    00593cbcstr xzr, [sp+360]
    00593cc0stp xzr, xzr, [sp+408]
    00593cc4add x0, sp, 408
    00593cc8str x0, [sp+424]
    00593cccldrsb x27, [x0]
    00593cd0ldr x3, [sp+480]
    00593cd4adrp x27, 0x4b8000
    00593cd8ldr w4, [x27+3056]
    00593cdccbz w4, 0x593ce4
    00593ce0b 0x593ce8
    00593ce4
    00593ce4loc_593ce4:
    00593ce4b 0x593cfc
    00593ce8
    00593ce8loc_593ce8:
    00593ce8bl runtime.gcWriteBarrier2
    00593cecstr x3, [x25]
    00593cf0ldr x4, [x0]
    00593cf4str x4, [x25+8]
    00593cf8b 0x593cfc
    00593cfc
    00593cfcloc_593cfc:
    00593cfcstr x3, [x0]
    00593d00ldrsb x27, [x0]
    00593d04ldr x3, [sp+488]
    00593d08adrp x27, 0x4b8000
    00593d0cldr w4, [x27+3056]
    00593d10cbz w4, 0x593d18
    00593d14b 0x593d1c
    00593d18
    00593d18loc_593d18:
    00593d18b 0x593d30
    00593d1c
    00593d1cloc_593d1c:
    00593d1cbl runtime.gcWriteBarrier2
    00593d20str x3, [x25]
    00593d24ldr x4, [x0+8]
    00593d28str x4, [x25+8]
    00593d2cb 0x593d30
    00593d30
    00593d30loc_593d30:
    00593d30str x3, [x0+8]
    00593d34ldrsb x27, [x0]
    00593d38b 0x593d3c
    00593d3c
    00593d3cloc_593d3c:
    00593d3cstr x0, [sp+432]
    00593d40orr x2, xzr, 2
    00593d44str x2, [sp+440]
    00593d48str x2, [sp+448]
    00593d4cmov x1, x2
    00593d50bl crypto/internal/fips140/edwards25519.checkInitialized
    00593d54add x20, sp, 200
    00593d58adr x27, 16
    00593d5cstp x29, x27, [sp-24]
    00593d60sub x29, sp, 24
    00593d64bl fn_87ce8
    00593d68sub x29, sp, 8
    00593d6cadd x0, sp, 200
    00593d70str x0, [sp+400]
    00593d74ldr x1, [sp+488]
    00593d78bl crypto/internal/fips140/edwards25519.(*projCached).FromP3
    00593d7cstr x0, [sp+376]
    00593d80add x20, sp, 40
    00593d84adr x27, 16
    00593d88stp x29, x27, [sp-24]
    00593d8csub x29, sp, 24
    00593d90bl fn_87ce8
    00593d94sub x29, sp, 8
    00593d98add x0, sp, 40
    00593d9cstr x0, [sp+392]
    00593da0ldr x1, [sp+480]
    00593da4ldr x2, [sp+376]
    00593da8bl crypto/internal/fips140/edwards25519.(*projP1xP1).Add
    00593dacstr x0, [sp+368]
    00593db0ldr x3, [sp+472]
    00593db4mov x1, x0
    00593db8mov x0, x3
    00593dbcbl crypto/internal/fips140/edwards25519.(*Point).fromP1xP1
    00593dc0str x0, [sp+384]
    00593dc4str x0, [sp+360]
    00593dc8ldp x29, x30, [sp-8]
    00593dccadd sp, sp, 464
    00593dd0ret x30
    00593dd4
    00593dd4loc_593dd4:
    00593dd4stp x0, x1, [sp+8]
    00593dd8str x2, [sp+24]
    00593ddcmov x3, x30
    00593de0bl runtime.morestack_noctxt.abi0
    00593de4ldp x0, x1, [sp+8]
    00593de8ldr x2, [sp+24]
    00593decb 0x593c90
    00593c90
    00593df0
    00593df0crypto/internal/fips140/edwards25519.(*projP1xP1).Add: ; void crypto/internal/fips140/edwards25519.(*projP1xP1).Add(crypto/internal/fips140/edwards25519.projP1xP1 * v, crypto/internal/fips140/edwards25519.Point * p, crypto/internal/fips140/edwards25519.projCached * q)
    00593df0ldr x16, [x28+16]
    00593df4sub x17, sp, 272
    00593df8subs xzr, x17, x16
    00593dfcb.ls 0x593fd4
    00593e00sub x20, sp, 400
    00593e04stp x29, x30, [x20-8]
    00593e08add sp, x20, 0
    00593e0csub x29, sp, 8
    00593e10str x0, [sp+408]
    00593e14str x1, [sp+416]
    00593e18str x2, [sp+424]
    00593e1cstr xzr, [sp+272]
    00593e20stp xzr, xzr, [sp+72]
    00593e24stp xzr, xzr, [sp+88]
    00593e28str xzr, [sp+104]
    00593e2cstp xzr, xzr, [sp+112]
    00593e30stp xzr, xzr, [sp+128]
    00593e34str xzr, [sp+144]
    00593e38stp xzr, xzr, [sp+192]
    00593e3cstp xzr, xzr, [sp+208]
    00593e40str xzr, [sp+224]
    00593e44stp xzr, xzr, [sp+232]
    00593e48stp xzr, xzr, [sp+248]
    00593e4cstr xzr, [sp+264]
    00593e50stp xzr, xzr, [sp+152]
    00593e54stp xzr, xzr, [sp+168]
    00593e58str xzr, [sp+184]
    00593e5cstp xzr, xzr, [sp+32]
    00593e60stp xzr, xzr, [sp+48]
    00593e64str xzr, [sp+64]
    00593e68ldr x3, [sp+416]
    00593e6cldrsb x27, [x3]
    00593e70add x3, x3, 40
    00593e74str x3, [sp+384]
    00593e78ldr x2, [sp+416]
    00593e7cldrsb x27, [x2]
    00593e80str x2, [sp+376]
    00593e84ldr x1, [sp+384]
    00593e88add x0, sp, 72
    00593e8cbl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00593e90ldr x3, [sp+416]
    00593e94ldrsb x27, [x3]
    00593e98add x3, x3, 40
    00593e9cstr x3, [sp+368]
    00593ea0ldr x2, [sp+416]
    00593ea4ldrsb x27, [x2]
    00593ea8str x2, [sp+360]
    00593eacldr x1, [sp+368]
    00593eb0add x0, sp, 112
    00593eb4bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00593eb8ldr x2, [sp+424]
    00593ebcldrsb x27, [x2]
    00593ec0str x2, [sp+352]
    00593ec4add x0, sp, 192
    00593ec8add x1, sp, 72
    00593eccbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593ed0ldr x3, [sp+424]
    00593ed4ldrsb x27, [x3]
    00593ed8add x2, x3, 40
    00593edcstr x2, [sp+344]
    00593ee0add x0, sp, 232
    00593ee4add x1, sp, 112
    00593ee8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593eecldr x3, [sp+416]
    00593ef0ldrsb x27, [x3]
    00593ef4add x3, x3, 120
    00593ef8str x3, [sp+336]
    00593efcldr x3, [sp+424]
    00593f00ldrsb x27, [x3]
    00593f04add x2, x3, 120
    00593f08str x2, [sp+328]
    00593f0cldr x1, [sp+336]
    00593f10add x0, sp, 152
    00593f14bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593f18ldr x3, [sp+416]
    00593f1cldrsb x27, [x3]
    00593f20add x3, x3, 80
    00593f24str x3, [sp+320]
    00593f28ldr x3, [sp+424]
    00593f2cldrsb x27, [x3]
    00593f30add x2, x3, 80
    00593f34str x2, [sp+312]
    00593f38ldr x1, [sp+320]
    00593f3cadd x0, sp, 32
    00593f40bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00593f44add x0, sp, 32
    00593f48add x1, sp, 32
    00593f4cadd x2, sp, 32
    00593f50bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00593f54ldr x0, [sp+408]
    00593f58ldrsb x27, [x0]
    00593f5cstr x0, [sp+304]
    00593f60add x1, sp, 192
    00593f64add x2, sp, 232
    00593f68bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00593f6cldr x3, [sp+408]
    00593f70ldrsb x27, [x3]
    00593f74add x0, x3, 40
    00593f78str x0, [sp+296]
    00593f7cadd x1, sp, 192
    00593f80add x2, sp, 232
    00593f84bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00593f88ldr x3, [sp+408]
    00593f8cldrsb x27, [x3]
    00593f90add x0, x3, 80
    00593f94str x0, [sp+288]
    00593f98add x1, sp, 32
    00593f9cadd x2, sp, 152
    00593fa0bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00593fa4ldr x3, [sp+408]
    00593fa8ldrsb x27, [x3]
    00593facadd x0, x3, 120
    00593fb0str x0, [sp+280]
    00593fb4add x1, sp, 32
    00593fb8add x2, sp, 152
    00593fbcbl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00593fc0ldr x0, [sp+408]
    00593fc4str x0, [sp+272]
    00593fc8ldp x29, x30, [sp-8]
    00593fccadd sp, sp, 400
    00593fd0ret x30
    00593fd4
    00593fd4loc_593fd4:
    00593fd4stp x0, x1, [sp+8]
    00593fd8str x2, [sp+24]
    00593fdcmov x3, x30
    00593fe0bl runtime.morestack_noctxt.abi0
    00593fe4ldp x0, x1, [sp+8]
    00593fe8ldr x2, [sp+24]
    00593fecb 0x593df0
    00593df0
    00593ff0
    00593ff0crypto/internal/fips140/edwards25519.(*projP1xP1).Sub: ; void crypto/internal/fips140/edwards25519.(*projP1xP1).Sub(crypto/internal/fips140/edwards25519.projP1xP1 * v, crypto/internal/fips140/edwards25519.Point * p, crypto/internal/fips140/edwards25519.projCached * q)
    00593ff0ldr x16, [x28+16]
    00593ff4sub x17, sp, 272
    00593ff8subs xzr, x17, x16
    00593ffcb.ls 0x5941d4
    00594000sub x20, sp, 400
    00594004stp x29, x30, [x20-8]
    00594008add sp, x20, 0
    0059400csub x29, sp, 8
    00594010str x0, [sp+408]
    00594014str x1, [sp+416]
    00594018str x2, [sp+424]
    0059401cstr xzr, [sp+272]
    00594020stp xzr, xzr, [sp+72]
    00594024stp xzr, xzr, [sp+88]
    00594028str xzr, [sp+104]
    0059402cstp xzr, xzr, [sp+112]
    00594030stp xzr, xzr, [sp+128]
    00594034str xzr, [sp+144]
    00594038stp xzr, xzr, [sp+192]
    0059403cstp xzr, xzr, [sp+208]
    00594040str xzr, [sp+224]
    00594044stp xzr, xzr, [sp+232]
    00594048stp xzr, xzr, [sp+248]
    0059404cstr xzr, [sp+264]
    00594050stp xzr, xzr, [sp+152]
    00594054stp xzr, xzr, [sp+168]
    00594058str xzr, [sp+184]
    0059405cstp xzr, xzr, [sp+32]
    00594060stp xzr, xzr, [sp+48]
    00594064str xzr, [sp+64]
    00594068ldr x3, [sp+416]
    0059406cldrsb x27, [x3]
    00594070add x3, x3, 40
    00594074str x3, [sp+384]
    00594078ldr x2, [sp+416]
    0059407cldrsb x27, [x2]
    00594080str x2, [sp+376]
    00594084ldr x1, [sp+384]
    00594088add x0, sp, 72
    0059408cbl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00594090ldr x3, [sp+416]
    00594094ldrsb x27, [x3]
    00594098add x3, x3, 40
    0059409cstr x3, [sp+368]
    005940a0ldr x2, [sp+416]
    005940a4ldrsb x27, [x2]
    005940a8str x2, [sp+360]
    005940acldr x1, [sp+368]
    005940b0add x0, sp, 112
    005940b4bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    005940b8ldr x3, [sp+424]
    005940bcldrsb x27, [x3]
    005940c0add x2, x3, 40
    005940c4str x2, [sp+352]
    005940c8add x0, sp, 192
    005940ccadd x1, sp, 72
    005940d0bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005940d4ldr x2, [sp+424]
    005940d8ldrsb x27, [x2]
    005940dcstr x2, [sp+344]
    005940e0add x0, sp, 232
    005940e4add x1, sp, 112
    005940e8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005940ecldr x3, [sp+416]
    005940f0ldrsb x27, [x3]
    005940f4add x3, x3, 120
    005940f8str x3, [sp+336]
    005940fcldr x3, [sp+424]
    00594100ldrsb x27, [x3]
    00594104add x2, x3, 120
    00594108str x2, [sp+328]
    0059410cldr x1, [sp+336]
    00594110add x0, sp, 152
    00594114bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00594118ldr x3, [sp+416]
    0059411cldrsb x27, [x3]
    00594120add x3, x3, 80
    00594124str x3, [sp+320]
    00594128ldr x3, [sp+424]
    0059412cldrsb x27, [x3]
    00594130add x2, x3, 80
    00594134str x2, [sp+312]
    00594138ldr x1, [sp+320]
    0059413cadd x0, sp, 32
    00594140bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00594144add x0, sp, 32
    00594148add x1, sp, 32
    0059414cadd x2, sp, 32
    00594150bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00594154ldr x0, [sp+408]
    00594158ldrsb x27, [x0]
    0059415cstr x0, [sp+304]
    00594160add x1, sp, 192
    00594164add x2, sp, 232
    00594168bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    0059416cldr x3, [sp+408]
    00594170ldrsb x27, [x3]
    00594174add x0, x3, 40
    00594178str x0, [sp+296]
    0059417cadd x1, sp, 192
    00594180add x2, sp, 232
    00594184bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00594188ldr x3, [sp+408]
    0059418cldrsb x27, [x3]
    00594190add x0, x3, 80
    00594194str x0, [sp+288]
    00594198add x1, sp, 32
    0059419cadd x2, sp, 152
    005941a0bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    005941a4ldr x3, [sp+408]
    005941a8ldrsb x27, [x3]
    005941acadd x0, x3, 120
    005941b0str x0, [sp+280]
    005941b4add x1, sp, 32
    005941b8add x2, sp, 152
    005941bcbl crypto/internal/fips140/edwards25519/field.(*Element).Add
    005941c0ldr x0, [sp+408]
    005941c4str x0, [sp+272]
    005941c8ldp x29, x30, [sp-8]
    005941ccadd sp, sp, 400
    005941d0ret x30
    005941d4
    005941d4loc_5941d4:
    005941d4stp x0, x1, [sp+8]
    005941d8str x2, [sp+24]
    005941dcmov x3, x30
    005941e0bl runtime.morestack_noctxt.abi0
    005941e4ldp x0, x1, [sp+8]
    005941e8ldr x2, [sp+24]
    005941ecb 0x593ff0
    00593ff0
    005941f0
    005941f0crypto/internal/fips140/edwards25519.(*projP1xP1).AddAffine: ; void crypto/internal/fips140/edwards25519.(*projP1xP1).AddAffine(crypto/internal/fips140/edwards25519.projP1xP1 * v, crypto/internal/fips140/edwards25519.Point * p, crypto/internal/fips140/edwards25519.affineCached * q)
    005941f0ldr x16, [x28+16]
    005941f4sub x17, sp, 272
    005941f8subs xzr, x17, x16
    005941fcb.ls 0x5943c4
    00594200sub x20, sp, 400
    00594204stp x29, x30, [x20-8]
    00594208add sp, x20, 0
    0059420csub x29, sp, 8
    00594210str x0, [sp+408]
    00594214str x1, [sp+416]
    00594218str x2, [sp+424]
    0059421cstr xzr, [sp+272]
    00594220stp xzr, xzr, [sp+72]
    00594224stp xzr, xzr, [sp+88]
    00594228str xzr, [sp+104]
    0059422cstp xzr, xzr, [sp+112]
    00594230stp xzr, xzr, [sp+128]
    00594234str xzr, [sp+144]
    00594238stp xzr, xzr, [sp+192]
    0059423cstp xzr, xzr, [sp+208]
    00594240str xzr, [sp+224]
    00594244stp xzr, xzr, [sp+232]
    00594248stp xzr, xzr, [sp+248]
    0059424cstr xzr, [sp+264]
    00594250stp xzr, xzr, [sp+152]
    00594254stp xzr, xzr, [sp+168]
    00594258str xzr, [sp+184]
    0059425cstp xzr, xzr, [sp+32]
    00594260stp xzr, xzr, [sp+48]
    00594264str xzr, [sp+64]
    00594268ldr x3, [sp+416]
    0059426cldrsb x27, [x3]
    00594270add x3, x3, 40
    00594274str x3, [sp+384]
    00594278ldr x2, [sp+416]
    0059427cldrsb x27, [x2]
    00594280str x2, [sp+376]
    00594284ldr x1, [sp+384]
    00594288add x0, sp, 72
    0059428cbl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00594290ldr x3, [sp+416]
    00594294ldrsb x27, [x3]
    00594298add x3, x3, 40
    0059429cstr x3, [sp+368]
    005942a0ldr x2, [sp+416]
    005942a4ldrsb x27, [x2]
    005942a8str x2, [sp+360]
    005942acldr x1, [sp+368]
    005942b0add x0, sp, 112
    005942b4bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    005942b8ldr x2, [sp+424]
    005942bcldrsb x27, [x2]
    005942c0str x2, [sp+352]
    005942c4add x0, sp, 192
    005942c8add x1, sp, 72
    005942ccbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005942d0ldr x3, [sp+424]
    005942d4ldrsb x27, [x3]
    005942d8add x2, x3, 40
    005942dcstr x2, [sp+344]
    005942e0add x0, sp, 232
    005942e4add x1, sp, 112
    005942e8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005942ecldr x3, [sp+416]
    005942f0ldrsb x27, [x3]
    005942f4add x3, x3, 120
    005942f8str x3, [sp+336]
    005942fcldr x3, [sp+424]
    00594300ldrsb x27, [x3]
    00594304add x2, x3, 80
    00594308str x2, [sp+328]
    0059430cldr x1, [sp+336]
    00594310add x0, sp, 152
    00594314bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00594318ldr x3, [sp+416]
    0059431cldrsb x27, [x3]
    00594320add x3, x3, 80
    00594324str x3, [sp+320]
    00594328ldr x3, [sp+416]
    0059432cldrsb x27, [x3]
    00594330add x2, x3, 80
    00594334str x2, [sp+312]
    00594338ldr x1, [sp+320]
    0059433cadd x0, sp, 32
    00594340bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00594344ldr x0, [sp+408]
    00594348ldrsb x27, [x0]
    0059434cstr x0, [sp+304]
    00594350add x1, sp, 192
    00594354add x2, sp, 232
    00594358bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    0059435cldr x3, [sp+408]
    00594360ldrsb x27, [x3]
    00594364add x0, x3, 40
    00594368str x0, [sp+296]
    0059436cadd x1, sp, 192
    00594370add x2, sp, 232
    00594374bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00594378ldr x3, [sp+408]
    0059437cldrsb x27, [x3]
    00594380add x0, x3, 80
    00594384str x0, [sp+288]
    00594388add x1, sp, 32
    0059438cadd x2, sp, 152
    00594390bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00594394ldr x3, [sp+408]
    00594398ldrsb x27, [x3]
    0059439cadd x0, x3, 120
    005943a0str x0, [sp+280]
    005943a4add x1, sp, 32
    005943a8add x2, sp, 152
    005943acbl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    005943b0ldr x0, [sp+408]
    005943b4str x0, [sp+272]
    005943b8ldp x29, x30, [sp-8]
    005943bcadd sp, sp, 400
    005943c0ret x30
    005943c4
    005943c4loc_5943c4:
    005943c4stp x0, x1, [sp+8]
    005943c8str x2, [sp+24]
    005943ccmov x3, x30
    005943d0bl runtime.morestack_noctxt.abi0
    005943d4ldp x0, x1, [sp+8]
    005943d8ldr x2, [sp+24]
    005943dcb 0x5941f0
    005941f0
    005943e0
    005943e0crypto/internal/fips140/edwards25519.(*projP1xP1).SubAffine: ; void crypto/internal/fips140/edwards25519.(*projP1xP1).SubAffine(crypto/internal/fips140/edwards25519.projP1xP1 * v, crypto/internal/fips140/edwards25519.Point * p, crypto/internal/fips140/edwards25519.affineCached * q)
    005943e0ldr x16, [x28+16]
    005943e4sub x17, sp, 272
    005943e8subs xzr, x17, x16
    005943ecb.ls 0x5945b4
    005943f0sub x20, sp, 400
    005943f4stp x29, x30, [x20-8]
    005943f8add sp, x20, 0
    005943fcsub x29, sp, 8
    00594400str x0, [sp+408]
    00594404str x1, [sp+416]
    00594408str x2, [sp+424]
    0059440cstr xzr, [sp+272]
    00594410stp xzr, xzr, [sp+72]
    00594414stp xzr, xzr, [sp+88]
    00594418str xzr, [sp+104]
    0059441cstp xzr, xzr, [sp+112]
    00594420stp xzr, xzr, [sp+128]
    00594424str xzr, [sp+144]
    00594428stp xzr, xzr, [sp+192]
    0059442cstp xzr, xzr, [sp+208]
    00594430str xzr, [sp+224]
    00594434stp xzr, xzr, [sp+232]
    00594438stp xzr, xzr, [sp+248]
    0059443cstr xzr, [sp+264]
    00594440stp xzr, xzr, [sp+152]
    00594444stp xzr, xzr, [sp+168]
    00594448str xzr, [sp+184]
    0059444cstp xzr, xzr, [sp+32]
    00594450stp xzr, xzr, [sp+48]
    00594454str xzr, [sp+64]
    00594458ldr x3, [sp+416]
    0059445cldrsb x27, [x3]
    00594460add x3, x3, 40
    00594464str x3, [sp+384]
    00594468ldr x2, [sp+416]
    0059446cldrsb x27, [x2]
    00594470str x2, [sp+376]
    00594474ldr x1, [sp+384]
    00594478add x0, sp, 72
    0059447cbl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00594480ldr x3, [sp+416]
    00594484ldrsb x27, [x3]
    00594488add x3, x3, 40
    0059448cstr x3, [sp+368]
    00594490ldr x2, [sp+416]
    00594494ldrsb x27, [x2]
    00594498str x2, [sp+360]
    0059449cldr x1, [sp+368]
    005944a0add x0, sp, 112
    005944a4bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    005944a8ldr x3, [sp+424]
    005944acldrsb x27, [x3]
    005944b0add x2, x3, 40
    005944b4str x2, [sp+352]
    005944b8add x0, sp, 192
    005944bcadd x1, sp, 72
    005944c0bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005944c4ldr x2, [sp+424]
    005944c8ldrsb x27, [x2]
    005944ccstr x2, [sp+344]
    005944d0add x0, sp, 232
    005944d4add x1, sp, 112
    005944d8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    005944dcldr x3, [sp+416]
    005944e0ldrsb x27, [x3]
    005944e4add x3, x3, 120
    005944e8str x3, [sp+336]
    005944ecldr x3, [sp+424]
    005944f0ldrsb x27, [x3]
    005944f4add x2, x3, 80
    005944f8str x2, [sp+328]
    005944fcldr x1, [sp+336]
    00594500add x0, sp, 152
    00594504bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
    00594508ldr x3, [sp+416]
    0059450cldrsb x27, [x3]
    00594510add x3, x3, 80
    00594514str x3, [sp+320]
    00594518ldr x3, [sp+416]
    0059451cldrsb x27, [x3]
    00594520add x2, x3, 80
    00594524str x2, [sp+312]
    00594528ldr x1, [sp+320]
    0059452cadd x0, sp, 32
    00594530bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00594534ldr x0, [sp+408]
    00594538ldrsb x27, [x0]
    0059453cstr x0, [sp+304]
    00594540add x1, sp, 192
    00594544add x2, sp, 232
    00594548bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    0059454cldr x3, [sp+408]
    00594550ldrsb x27, [x3]
    00594554add x0, x3, 40
    00594558str x0, [sp+296]
    0059455cadd x1, sp, 192
    00594560add x2, sp, 232
    00594564bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00594568ldr x3, [sp+408]
    0059456cldrsb x27, [x3]
    00594570add x0, x3, 80
    00594574str x0, [sp+288]
    00594578add x1, sp, 32
    0059457cadd x2, sp, 152
    00594580bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00594584ldr x3, [sp+408]
    00594588ldrsb x27, [x3]
    0059458cadd x0, x3, 120
    00594590str x0, [sp+280]
    00594594add x1, sp, 32
    00594598add x2, sp, 152
    0059459cbl crypto/internal/fips140/edwards25519/field.(*Element).Add
    005945a0ldr x0, [sp+408]
    005945a4str x0, [sp+272]
    005945a8ldp x29, x30, [sp-8]
    005945acadd sp, sp, 400
    005945b0ret x30
    005945b4
    005945b4loc_5945b4:
    005945b4stp x0, x1, [sp+8]
    005945b8str x2, [sp+24]
    005945bcmov x3, x30
    005945c0bl runtime.morestack_noctxt.abi0
    005945c4ldp x0, x1, [sp+8]
    005945c8ldr x2, [sp+24]
    005945ccb 0x5943e0
    005943e0
    005945d0
    005945d0crypto/internal/fips140/edwards25519.(*projP1xP1).Double: ; void crypto/internal/fips140/edwards25519.(*projP1xP1).Double(crypto/internal/fips140/edwards25519.projP1xP1 * v, crypto/internal/fips140/edwards25519.projP2 * p)
    005945d0ldr x16, [x28+16]
    005945d4sub x17, sp, 176
    005945d8subs xzr, x17, x16
    005945dcb.ls 0x594754
    005945e0sub x20, sp, 304
    005945e4stp x29, x30, [x20-8]
    005945e8add sp, x20, 0
    005945ecsub x29, sp, 8
    005945f0str x0, [sp+312]
    005945f4str x1, [sp+320]
    005945f8str xzr, [sp+200]
    005945fcstp xzr, xzr, [sp+160]
    00594600stp xzr, xzr, [sp+176]
    00594604str xzr, [sp+192]
    00594608stp xzr, xzr, [sp+80]
    0059460cstp xzr, xzr, [sp+96]
    00594610str xzr, [sp+112]
    00594614stp xzr, xzr, [sp+40]
    00594618stp xzr, xzr, [sp+56]
    0059461cstr xzr, [sp+72]
    00594620stp xzr, xzr, [sp+120]
    00594624stp xzr, xzr, [sp+136]
    00594628str xzr, [sp+152]
    0059462cldr x1, [sp+320]
    00594630ldrsb x27, [x1]
    00594634str x1, [sp+224]
    00594638add x0, sp, 160
    0059463cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
    00594640ldr x2, [sp+320]
    00594644ldrsb x27, [x2]
    00594648add x1, x2, 40
    0059464cstr x1, [sp+216]
    00594650add x0, sp, 80
    00594654bl crypto/internal/fips140/edwards25519/field.(*Element).Square
    00594658ldr x2, [sp+320]
    0059465cldrsb x27, [x2]
    00594660add x1, x2, 80
    00594664str x1, [sp+208]
    00594668add x0, sp, 40
    0059466cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
    00594670add x0, sp, 40
    00594674add x1, sp, 40
    00594678add x2, sp, 40
    0059467cbl crypto/internal/fips140/edwards25519/field.(*Element).Add
    00594680ldr x2, [sp+320]
    00594684ldrsb x27, [x2]
    00594688str x2, [sp+288]
    0059468cldr x2, [sp+320]
    00594690ldrsb x27, [x2]
    00594694add x2, x2, 40
    00594698str x2, [sp+280]
    0059469cldr x1, [sp+288]
    005946a0add x0, sp, 120
    005946a4bl crypto/internal/fips140/edwards25519/field.(*Element).Add
    005946a8add x0, sp, 120
    005946acadd x1, sp, 120
    005946b0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
    005946b4ldr x2, [sp+312]
    005946b8ldrsb x27, [x2]
    005946bcadd x0, x2, 40
    005946c0str x0, [sp+272]
    005946c4add x1, sp, 80
    005946c8add x2, sp, 160
    005946ccbl crypto/internal/fips140/edwards25519/field.(*Element).Add
    005946d0ldr x2, [sp+312]
    005946d4ldrsb x27, [x2]
    005946d8add x0, x2, 80
    005946dcstr x0, [sp+264]
    005946e0add x1, sp, 80
    005946e4add x2, sp, 160
    005946e8bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    005946ecldr x2, [sp+312]
    005946f0ldrsb x27, [x2]
    005946f4str x2, [sp+256]
    005946f8ldr x2, [sp+312]
    005946fcldrsb x27, [x2]
    00594700add x2, x2, 40
    00594704str x2, [sp+248]
    00594708ldr x0, [sp+256]
    0059470cadd x1, sp, 120
    00594710bl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00594714ldr x2, [sp+312]
    00594718ldrsb x27, [x2]
    0059471cadd x2, x2, 120
    00594720str x2, [sp+240]
    00594724ldr x2, [sp+312]
    00594728ldrsb x27, [x2]
    0059472cadd x2, x2, 80
    00594730str x2, [sp+232]
    00594734ldr x0, [sp+240]
    00594738add x1, sp, 40
    0059473cbl crypto/internal/fips140/edwards25519/field.(*Element).Subtract
    00594740ldr x0, [sp+312]
    00594744str x0, [sp+200]
    00594748ldp x29, x30, [sp-8]
    0059474cadd sp, sp, 304
    00594750ret x30
    00594754
    00594754loc_594754:
    00594754stp x0, x1, [sp+8]
    00594758mov x3, x30
    0059475cbl runtime.morestack_noctxt.abi0
    00594760ldp x0, x1, [sp+8]
    00594764b 0x5945d0
    00594768udf 0
    0059476cudf 0
    005945d0
    00594770
    00594770crypto/internal/fips140/edwards25519.(*Point).Negate: ; void crypto/internal/fips140/edwards25519.(*Point).Negate(crypto/internal/fips140/edwards25519.Point * v, crypto/internal/fips140/edwards25519.Point * p)
    00594770ldr x16, [x28+16]
    00594774sub x17, sp, 32
    00594778subs xzr, x17, x16
    0059477cb.ls 0x5948a4
    00594780str x30, [sp-160]!
    00594784stur x29, [sp-8]
    00594788sub x29, sp, 8
    0059478cstr x0, [sp+168]
    00594790str x1, [sp+176]
    00594794str xzr, [sp+40]
    00594798str xzr, [sp+112]
    0059479cadd x0, sp, 112
    005947a0str x0, [sp+80]
    005947a4ldrsb x27, [x0]
    005947a8ldr x3, [sp+176]
    005947acadrp x27, 0x4b7000
    005947b0ldr w4, [x27+3056]
    005947b4cbz w4, 0x5947bc
    005947b8b 0x5947c0
    005947bc
    005947bcloc_5947bc:
    005947bcb 0x5947d4
    005947c0
    005947c0loc_5947c0:
    005947c0bl runtime.gcWriteBarrier2
    005947c4str x3, [x25]
    005947c8ldr x4, [x0]
    005947ccstr x4, [x25+8]
    005947d0b 0x5947d4
    005947d4
    005947d4loc_5947d4:
    005947d4str x3, [x0]
    005947d8ldrsb x27, [x0]
    005947dcb 0x5947e0
    005947e0
    005947e0loc_5947e0:
    005947e0str x0, [sp+88]
    005947e4orr x2, xzr, 1
    005947e8str x2, [sp+96]
    005947ecstr x2, [sp+104]
    005947f0mov x1, x2
    005947f4bl crypto/internal/fips140/edwards25519.checkInitialized
    005947f8ldr x3, [sp+168]
    005947fcldrsb x27, [x3]
    00594800str x3, [sp+72]
    00594804ldr x1, [sp+176]
    00594808ldrsb x27, [x1]
    0059480cstr x1, [sp+64]
    00594810ldr x0, [sp+72]
    00594814bl crypto/internal/fips140/edwards25519/field.(*Element).Negate
    00594818ldr x3, [sp+168]
    0059481cldrsb x27, [x3]
    00594820add x3, x3, 40
    00594824str x3, [sp+56]
    00594828ldr x3, [sp+176]
    0059482cldrsb x27, [x3]
    00594830add x1, x3, 40
    00594834str x1, [sp+48]
    00594838ldr x0, [sp+56]
    0059483cbl crypto/internal/fips140/edwards25519/field.(*Element).Set
    00594840ldr x3, [sp+168]
    00594844ldrsb x27, [x3]
    00594848add x3, x3, 80
    0059484cstr x3, [sp+144]
    00594850ldr x3, [sp+176]
    00594854ldrsb x27, [x3]
    00594858add x1, x3, 80
    0059485cstr x1, [sp+136]
    00594860ldr x0, [sp+144]
    00594864bl crypto/internal/fips140/edwards25519/field.(*Element).Set
    00594868ldr x3, [sp+168]
    0059486cldrsb x27, [x3]
    00594870add x3, x3, 120
    00594874str x3, [sp+128]
    00594878ldr x3, [sp+176]
    0059487cldrsb x27, [x3]
    00594880add x1, x3, 120
    00594884str x1, [sp+120]
    00594888ldr x0, [sp+128]
    0059488cbl crypto/internal/fips140/edwards25519/field.(*Element).Negate
    00594890ldr x0, [sp+168]
    00594894str x0, [sp+40]
    00594898ldur x29, [sp-8]
    0059489cldr x30, [sp], 160
    005948a0ret x30
    005948a4
    005948a4loc_5948a4:
    005948a4stp x0, x1, [sp+8]
    005948a8mov x3, x30
    005948acbl runtime.morestack_noctxt.abi0
    005948b0ldp x0, x1, [sp+8]
    005948b4b 0x594770
    005948b8udf 0
    005948bcudf 0
    00594770
    005948c0
    005948c0crypto/internal/fips140/edwards25519.(*affineCached).Select: ; void crypto/internal/fips140/edwards25519.(*affineCached).Select(crypto/internal/fips140/edwards25519.affineCached * v, crypto/internal/fips140/edwards25519.affineCached * a, crypto/internal/fips140/edwards25519.affineCached * b, int cond)
    005948c0ldr x16, [x28+16]
    005948c4subs xzr, sp, x16
    005948c8b.ls 0x5949b4
    005948ccstr x30, [sp-128]!
    005948d0stur x29, [sp-8]
    005948d4sub x29, sp, 8
    005948d8str x0, [sp+136]
    005948dcstr x1, [sp+144]
    005948e0str x2, [sp+152]
    005948e4str x3, [sp+160]
    005948e8str xzr, [sp+40]
    005948ecldr x4, [sp+136]
    005948f0ldrsb x27, [x4]
    005948f4str x4, [sp+80]
    005948f8ldr x4, [sp+144]
    005948fcldrsb x27, [x4]
    00594900str x4, [sp+72]
    00594904ldr x2, [sp+152]
    00594908ldrsb x27, [x2]
    0059490cstr x2, [sp+64]
    00594910ldr x3, [sp+160]
    00594914ldr x1, [sp+72]
    00594918ldr x0, [sp+80]
    0059491cbl crypto/internal/fips140/edwards25519/field.(*Element).Select
    00594920ldr x4, [sp+136]
    00594924ldrsb x27, [x4]
    00594928add x4, x4, 40
    0059492cstr x4, [sp+56]
    00594930ldr x4, [sp+144]
    00594934ldrsb x27, [x4]
    00594938add x4, x4, 40
    0059493cstr x4, [sp+48]
    00594940ldr x4, [sp+152]
    00594944ldrsb x27, [x4]
    00594948add x2, x4, 40
    0059494cstr x2, [sp+112]
    00594950ldr x3, [sp+160]
    00594954ldr x0, [sp+56]
    00594958ldr x1, [sp+48]
    0059495cbl crypto/internal/fips140/edwards25519/field.(*Element).Select
    00594960ldr x4, [sp+136]
    00594964ldrsb x27, [x4]
    00594968add x4, x4, 80
    0059496cstr x4, [sp+104]
    00594970ldr x4, [sp+144]
    00594974ldrsb x27, [x4]
    00594978add x4, x4, 80
    0059497cstr x4, [sp+96]
    00594980ldr x4, [sp+152]
    00594984ldrsb x27, [x4]
    00594988add x2, x4, 80
    0059498cstr x2, [sp+88]
    00594990ldr x3, [sp+160]
    00594994ldr x0, [sp+104]
    00594998ldr x1, [sp+96]
    0059499cbl crypto/internal/fips140/edwards25519/field.(*Element).Select
    005949a0ldr x0, [sp+136]
    005949a4str x0, [sp+40]
    005949a8ldur x29, [sp-8]
    005949acldr x30, [sp], 128
    005949b0ret x30
    005949b4
    005949b4loc_5949b4:
    005949b4stp x0, x1, [sp+8]
    005949b8stp x2, x3, [sp+24]
    005949bcmov x3, x30
    005949c0bl runtime.morestack_noctxt.abi0
    005949c4ldp x0, x1, [sp+8]
    005949c8ldp x2, x3, [sp+24]
    005949ccb 0x5948c0
    005948c0
    005949d0
    005949d0crypto/internal/fips140/edwards25519.(*affineCached).CondNeg: ; void crypto/internal/fips140/edwards25519.(*affineCached).CondNeg(crypto/internal/fips140/edwards25519.affineCached * v, int cond)
    005949d0ldr x16, [x28+16]
    005949d4sub x17, sp, 32
    005949d8subs xzr, x17, x16
    005949dcb.ls 0x594a94
    005949e0str x30, [sp-160]!
    005949e4stur x29, [sp-8]
    005949e8sub x29, sp, 8
    005949ecstr x0, [sp+168]
    005949f0str x1, [sp+176]
    005949f4str xzr, [sp+88]
    005949f8ldr x3, [sp+168]
    005949fcldrsb x27, [x3]
    00594a00str x3, [sp+120]
    00594a04ldr x3, [sp+168]
    00594a08ldrsb x27, [x3]
    00594a0cadd x1, x3, 40
    00594a10str x1, [sp+112]
    00594a14ldr x2, [sp+176]
    00594a18ldr x0, [sp+120]
    00594a1cbl crypto/internal/fips140/edwards25519/field.(*Element).Swap
    00594a20stp xzr, xzr, [sp+48]
    00594a24stp xzr, xzr, [sp+64]
    00594a28str xzr, [sp+80]
    00594a2cadd x3, sp, 48
    00594a30str x3, [sp+136]
    00594a34ldr x3, [sp+168]
    00594a38ldrsb x27, [x3]
    00594a3cadd x1, x3, 80
    00594a40str x1, [sp+104]
    00594a44ldr x0, [sp+136]
    00594a48bl crypto/internal/fips140/edwards25519/field.(*Element).Negate
    00594a4cstr x0, [sp+128]
    00594a50ldr x3, [sp+168]
    00594a54ldrsb x27, [x3]
    00594a58add x3, x3, 80
    00594a5cstr x3, [sp+96]
    00594a60ldr x3, [sp+168]
    00594a64ldrsb x27, [x3]
    00594a68add x2, x3, 80
    00594a6cstr x2, [sp+144]
    00594a70ldr x3, [sp+176]
    00594a74ldr x0, [sp+96]
    00594a78ldr x1, [sp+128]
    00594a7cbl crypto/internal/fips140/edwards25519/field.(*Element).Select
    00594a80ldr x0, [sp+168]
    00594a84str x0, [sp+88]
    00594a88ldur x29, [sp-8]
    00594a8cldr x30, [sp], 160
    00594a90ret x30
    00594a94
    00594a94loc_594a94:
    00594a94stp x0, x1, [sp+8]
    00594a98mov x3, x30
    00594a9cbl runtime.morestack_noctxt.abi0
    00594aa0ldp x0, x1, [sp+8]
    00594aa4b 0x5949d0
    00594aa8udf 0
    00594aacudf 0
    005949d0
    00594ab0
    00594ab0crypto/internal/fips140/edwards25519.NewScalar: ; void crypto/internal/fips140/edwards25519.NewScalar(void)
    00594ab0ldr x16, [x28+16]
    00594ab4subs xzr, sp, x16
    00594ab8b.ls 0x594af8
    00594abcstr x30, [sp-64]!
    00594ac0stur x29, [sp-8]
    00594ac4sub x29, sp, 8
    00594ac8str xzr, [sp+40]
    00594accadrp x0, 0x9a000
    00594ad0add x0, x0, 2400
    00594ad4bl runtime.newobject
    00594ad8str x0, [sp+48]
    00594adcstp xzr, xzr, [x0]
    00594ae0stp xzr, xzr, [x0+16]
    00594ae4ldr x0, [sp+48]
    00594ae8str x0, [sp+40]
    00594aecldur x29, [sp-8]
    00594af0ldr x30, [sp], 64
    00594af4ret x30
    00594af8
    00594af8loc_594af8:
    00594af8mov x3, x30
    00594afcbl runtime.morestack_noctxt.abi0
    00594b00b 0x594ab0
    00594b04udf 0
    00594b08udf 0
    00594b0cudf 0
    00594ab0
    00594b10
    00594b10crypto/internal/fips140/edwards25519.(*Scalar).MultiplyAdd: ; void crypto/internal/fips140/edwards25519.(*Scalar).MultiplyAdd(crypto/internal/fips140/edwards25519.Scalar * s, crypto/internal/fips140/edwards25519.Scalar * x, crypto/internal/fips140/edwards25519.Scalar * y, crypto/internal/fips140/edwards25519.Scalar * z)
    00594b10ldr x16, [x28+16]
    00594b14subs xzr, sp, x16
    00594b18b.ls 0x594b8c
    00594b1cstr x30, [sp-112]!
    00594b20stur x29, [sp-8]
    00594b24sub x29, sp, 8
    00594b28str x0, [sp+120]
    00594b2cstr x1, [sp+128]
    00594b30str x2, [sp+136]
    00594b34str x3, [sp+144]
    00594b38str xzr, [sp+72]
    00594b3cstp xzr, xzr, [sp+40]
    00594b40stp xzr, xzr, [sp+56]
    00594b44add x0, sp, 40
    00594b48str x0, [sp+96]
    00594b4cldr x1, [sp+144]
    00594b50bl crypto/internal/fips140/edwards25519.(*Scalar).Set
    00594b54str x0, [sp+80]
    00594b58ldr x1, [sp+128]
    00594b5cldr x2, [sp+136]
    00594b60ldr x0, [sp+120]
    00594b64bl crypto/internal/fips140/edwards25519.(*Scalar).Multiply
    00594b68str x0, [sp+96]
    00594b6cldr x1, [sp+120]
    00594b70ldr x2, [sp+80]
    00594b74bl crypto/internal/fips140/edwards25519.(*Scalar).Add
    00594b78str x0, [sp+88]
    00594b7cstr x0, [sp+72]
    00594b80ldur x29, [sp-8]
    00594b84ldr x30, [sp], 112
    00594b88ret x30
    00594b8c
    00594b8cloc_594b8c:
    00594b8cstp x0, x1, [sp+8]
    00594b90stp x2, x3, [sp+24]
    00594b94mov x3, x30
    00594b98bl runtime.morestack_noctxt.abi0
    00594b9cldp x0, x1, [sp+8]
    00594ba0ldp x2, x3, [sp+24]
    00594ba4b 0x594b10
    00594ba8udf 0
    00594bacudf 0
    00594b10
    00594bb0
    00594bb0crypto/internal/fips140/edwards25519.(*Scalar).Add: ; void crypto/internal/fips140/edwards25519.(*Scalar).Add(crypto/internal/fips140/edwards25519.Scalar * s, crypto/internal/fips140/edwards25519.Scalar * x, crypto/internal/fips140/edwards25519.Scalar * y)
    00594bb0ldr x16, [x28+16]
    00594bb4subs xzr, sp, x16
    00594bb8b.ls 0x594c1c
    00594bbcstr x30, [sp-80]!
    00594bc0stur x29, [sp-8]
    00594bc4sub x29, sp, 8
    00594bc8str x0, [sp+88]
    00594bccstr x1, [sp+96]
    00594bd0str x2, [sp+104]
    00594bd4str xzr, [sp+40]
    00594bd8ldr x3, [sp+88]
    00594bdcldrsb x27, [x3]
    00594be0str x3, [sp+64]
    00594be4ldr x3, [sp+96]
    00594be8ldrsb x27, [x3]
    00594becstr x3, [sp+56]
    00594bf0ldr x2, [sp+104]
    00594bf4ldrsb x27, [x2]
    00594bf8str x2, [sp+48]
    00594bfcldr x0, [sp+64]
    00594c00ldr x1, [sp+56]
    00594c04bl crypto/internal/fips140/edwards25519.fiatScalarAdd
    00594c08ldr x0, [sp+88]
    00594c0cstr x0, [sp+40]
    00594c10ldur x29, [sp-8]
    00594c14ldr x30, [sp], 80
    00594c18ret x30
    00594c1c
    00594c1cloc_594c1c:
    00594c1cstp x0, x1, [sp+8]
    00594c20str x2, [sp+24]
    00594c24mov x3, x30
    00594c28bl runtime.morestack_noctxt.abi0
    00594c2cldp x0, x1, [sp+8]
    00594c30ldr x2, [sp+24]
    00594c34b 0x594bb0
    00594c38udf 0
    00594c3cudf 0
    00594bb0
    00594c40
    00594c40crypto/internal/fips140/edwards25519.(*Scalar).Multiply: ; void crypto/internal/fips140/edwards25519.(*Scalar).Multiply(crypto/internal/fips140/edwards25519.Scalar * s, crypto/internal/fips140/edwards25519.Scalar * x, crypto/internal/fips140/edwards25519.Scalar * y)
    00594c40ldr x16, [x28+16]
    00594c44subs xzr, sp, x16
    00594c48b.ls 0x594cac
    00594c4cstr x30, [sp-80]!
    00594c50stur x29, [sp-8]
    00594c54sub x29, sp, 8
    00594c58str x0, [sp+88]
    00594c5cstr x1, [sp+96]
    00594c60str x2, [sp+104]
    00594c64str xzr, [sp+40]
    00594c68ldr x3, [sp+88]
    00594c6cldrsb x27, [x3]
    00594c70str x3, [sp+64]
    00594c74ldr x3, [sp+96]
    00594c78ldrsb x27, [x3]
    00594c7cstr x3, [sp+56]
    00594c80ldr x2, [sp+104]
    00594c84ldrsb x27, [x2]
    00594c88str x2, [sp+48]
    00594c8cldr x0, [sp+64]
    00594c90ldr x1, [sp+56]
    00594c94bl crypto/internal/fips140/edwards25519.fiatScalarMul
    00594c98ldr x0, [sp+88]
    00594c9cstr x0, [sp+40]
    00594ca0ldur x29, [sp-8]
    00594ca4ldr x30, [sp], 80
    00594ca8ret x30
    00594cac
    00594cacloc_594cac:
    00594cacstp x0, x1, [sp+8]
    00594cb0str x2, [sp+24]
    00594cb4mov x3, x30
    00594cb8bl runtime.morestack_noctxt.abi0
    00594cbcldp x0, x1, [sp+8]
    00594cc0ldr x2, [sp+24]
    00594cc4b 0x594c40
    00594cc8udf 0
    00594cccudf 0
    00594c40
    00594cd0
    00594cd0crypto/internal/fips140/edwards25519.(*Scalar).Set: ; void crypto/internal/fips140/edwards25519.(*Scalar).Set(crypto/internal/fips140/edwards25519.Scalar * s, crypto/internal/fips140/edwards25519.Scalar * x)
    00594cd0str x30, [sp-32]!
    00594cd4stur x29, [sp-8]
    00594cd8sub x29, sp, 8
    00594cdcstr x0, [sp+40]
    00594ce0str x1, [sp+48]
    00594ce4str xzr, [sp+16]
    00594ce8ldr x1, [sp+40]
    00594cecldrsb x27, [x1]
    00594cf0ldr x2, [sp+48]
    00594cf4ldrsb x27, [x2]
    00594cf8ldp x3, x4, [x2]
    00594cfcldp x2, x5, [x2+16]
    00594d00stp x3, x4, [x1]
    00594d04stp x2, x5, [x1+16]
    00594d08ldr x0, [sp+40]
    00594d0cstr x0, [sp+16]
    00594d10add x29, sp, 24
    00594d14add sp, sp, 32
    00594d18ret x30
    00594d1cudf 0
    00594cd0
    00594d20
    00594d20crypto/internal/fips140/edwards25519.(*Scalar).SetUniformBytes: ; void crypto/internal/fips140/edwards25519.(*Scalar).SetUniformBytes(crypto/internal/fips140/edwards25519.Scalar * s, struct []uint8 x)
    00594d20ldr x16, [x28+16]
    00594d24sub x17, sp, 48
    00594d28subs xzr, x17, x16
    00594d2cb.ls 0x594f18
    00594d30str x30, [sp-176]!
    00594d34stur x29, [sp-8]
    00594d38sub x29, sp, 8
    00594d3cstr x0, [sp+184]
    00594d40str x1, [sp+192]
    00594d44str x2, [sp+200]
    00594d48str x3, [sp+208]
    00594d4cstr xzr, [sp+104]
    00594d50stp xzr, xzr, [sp+88]
    00594d54ldr x4, [sp+200]
    00594d58str x4, [sp+80]
    00594d5csubs xzr, x4, 64
    00594d60b.ne 0x594d68
    00594d64b 0x594da4
    00594d68
    00594d68loc_594d68:
    00594d68adrp x0, 0x135000
    00594d6cadd x0, x0, 2108
    00594d70movz x1, 50
    00594d74bl errors.New
    00594d78str x0, [sp+152]
    00594d7cstr x1, [sp+160]
    00594d80str xzr, [sp+104]
    00594d84ldr x1, [sp+152]
    00594d88ldr x2, [sp+160]
    00594d8cstr x1, [sp+88]
    00594d90str x2, [sp+96]
    00594d94ldr x0, [sp+104]
    00594d98ldur x29, [sp-8]
    00594d9cldr x30, [sp], 176
    00594da0ret x30
    00594da4
    00594da4loc_594da4:
    00594da4ldr x2, [sp+208]
    00594da8ldr x1, [sp+192]
    00594dacsubs xzr, x2, 21
    00594db0b.hs 0x594db8
    00594db4b 0x594f0c
    00594db8
    00594db8loc_594db8:
    00594db8b 0x594dbc
    00594dbc
    00594dbcloc_594dbc:
    00594dbcstr x1, [sp+128]
    00594dc0movz x4, 21
    00594dc4str x4, [sp+136]
    00594dc8str x2, [sp+144]
    00594dccldr x0, [sp+184]
    00594dd0mov x3, x2
    00594dd4mov x2, x4
    00594dd8bl crypto/internal/fips140/edwards25519.(*Scalar).setShortBytes
    00594ddcstp xzr, xzr, [sp+48]
    00594de0stp xzr, xzr, [sp+64]
    00594de4add x4, sp, 48
    00594de8str x4, [sp+120]
    00594decldr x2, [sp+208]
    00594df0ldr x4, [sp+192]
    00594df4subs xzr, x2, 42
    00594df8b.hs 0x594e00
    00594dfcb 0x594f04
    00594e00
    00594e00loc_594e00:
    00594e00b 0x594e04
    00594e04
    00594e04loc_594e04:
    00594e04sub x3, x2, 21
    00594e08sub x5, xzr, x3
    00594e0csbfm x5, x5, 63, 63
    00594e10movz x6, 21
    00594e14and x5, x5, x6
    00594e18add x1, x4, x5
    00594e1cstr x1, [sp+128]
    00594e20movz x2, 21
    00594e24str x2, [sp+136]
    00594e28str x3, [sp+144]
    00594e2cldr x0, [sp+120]
    00594e30bl crypto/internal/fips140/edwards25519.(*Scalar).setShortBytes
    00594e34str x0, [sp+112]
    00594e38adrp x27, 0x48d000
    00594e3cldr x2, [x27+736]
    00594e40mov x1, x0
    00594e44bl crypto/internal/fips140/edwards25519.(*Scalar).Multiply
    00594e48str x0, [sp+120]
    00594e4cldr x4, [sp+184]
    00594e50ldr x1, [sp+184]
    00594e54mov x2, x0
    00594e58mov x0, x4
    00594e5cbl crypto/internal/fips140/edwards25519.(*Scalar).Add
    00594e60ldr x1, [sp+200]
    00594e64ldr x4, [sp+192]
    00594e68ldr x5, [sp+208]
    00594e6cb 0x594e70
    00594e70
    00594e70loc_594e70:
    00594e70subs xzr, x1, 42
    00594e74b.hs 0x594e7c
    00594e78b 0x594efc
    00594e7c
    00594e7cloc_594e7c:
    00594e7csub x3, x5, 42
    00594e80sub x2, x1, 42
    00594e84sub x5, xzr, x3
    00594e88sbfm x5, x5, 63, 63
    00594e8cmovz x6, 42
    00594e90and x5, x5, x6
    00594e94add x1, x4, x5
    00594e98str x1, [sp+128]
    00594e9cstr x2, [sp+136]
    00594ea0str x3, [sp+144]
    00594ea4ldr x0, [sp+112]
    00594ea8bl crypto/internal/fips140/edwards25519.(*Scalar).setShortBytes
    00594eacldr x1, [sp+112]
    00594eb0adrp x27, 0x48d000
    00594eb4ldr x2, [x27+744]
    00594eb8ldr x0, [sp+112]
    00594ebcbl crypto/internal/fips140/edwards25519.(*Scalar).Multiply
    00594ec0str x0, [sp+120]
    00594ec4ldr x4, [sp+184]
    00594ec8ldr x1, [sp+184]
    00594eccmov x2, x0
    00594ed0mov x0, x4
    00594ed4bl crypto/internal/fips140/edwards25519.(*Scalar).Add
    00594ed8ldr x4, [sp+184]
    00594edcstr x4, [sp+104]
    00594ee0stp xzr, xzr, [sp+88]
    00594ee4ldr x0, [sp+104]
    00594ee8mov x1, xzr
    00594eecmov x2, xzr
    00594ef0ldur x29, [sp-8]
    00594ef4ldr x30, [sp], 176
    00594ef8ret x30
    00594efc
    00594efcloc_594efc:
    00594efcmovz x0, 42
    00594f00bl runtime.panicSliceB
    00594f04
    00594f04loc_594f04:
    00594f04movz x1, 42
    00594f08bl runtime.panicSliceAcap
    00594f0c
    00594f0cloc_594f0c:
    00594f0cmovz x1, 21
    00594f10bl runtime.panicSliceAcap
    00594f14hint
    00594f18
    00594f18loc_594f18:
    00594f18stp x0, x1, [sp+8]
    00594f1cstp x2, x3, [sp+24]
    00594f20mov x3, x30
    00594f24bl runtime.morestack_noctxt.abi0
    00594f28ldp x0, x1, [sp+8]
    00594f2cldp x2, x3, [sp+24]
    00594f30b 0x594d20
    00594f34udf 0
    00594f38udf 0
    00594f3cudf 0
    00594d20
    00594f40
    00594f40crypto/internal/fips140/edwards25519.(*Scalar).setShortBytes: ; void crypto/internal/fips140/edwards25519.(*Scalar).setShortBytes(crypto/internal/fips140/edwards25519.Scalar * s, struct []uint8 x)
    00594f40ldr x16, [x28+16]
    00594f44sub x17, sp, 96
    00594f48subs xzr, x17, x16
    00594f4cb.ls 0x5950a0
    00594f50str x30, [sp-224]!
    00594f54stur x29, [sp-8]
    00594f58sub x29, sp, 8
    00594f5cstr x0, [sp+232]
    00594f60str x1, [sp+240]
    00594f64str x2, [sp+248]
    00594f68str x3, [sp+256]
    00594f6cstr xzr, [sp+88]
    00594f70ldr x3, [sp+248]
    00594f74str x3, [sp+64]
    00594f78subs xzr, x3, 32
    00594f7cb.ge 0x595070
    00594f80b 0x594f84
    00594f84
    00594f84loc_594f84:
    00594f84stp xzr, xzr, [sp+32]
    00594f88stp xzr, xzr, [sp+48]
    00594f8cadd x3, sp, 32
    00594f90ldrsb x27, [x3]
    00594f94b 0x594f98
    00594f98
    00594f98loc_594f98:
    00594f98str x3, [sp+152]
    00594f9corr x4, xzr, 32
    00594fa0str x4, [sp+160]
    00594fa4str x4, [sp+168]
    00594fa8str x3, [sp+120]
    00594facstr x4, [sp+128]
    00594fb0str x4, [sp+136]
    00594fb4ldr x3, [sp+248]
    00594fb8ldr x4, [sp+240]
    00594fbcldr x5, [sp+256]
    00594fc0str x4, [sp+96]
    00594fc4str x3, [sp+104]
    00594fc8str x5, [sp+112]
    00594fccldr x4, [sp+128]
    00594fd0str x4, [sp+80]
    00594fd4subs xzr, x4, x3
    00594fd8b.gt 0x594fe0
    00594fdcb 0x594fe8
    00594fe0
    00594fe0loc_594fe0:
    00594fe0str x3, [sp+80]
    00594fe4b 0x594fec
    00594fe8
    00594fe8loc_594fe8:
    00594fe8b 0x594fec
    00594fec
    00594fecloc_594fec:
    00594fecldr x3, [sp+96]
    00594ff0ldr x4, [sp+120]
    00594ff4subs xzr, x3, x4
    00594ff8b.ne 0x595000
    00594ffcb 0x59501c
    00595000
    00595000loc_595000:
    00595000ldr x3, [sp+80]
    00595004str x3, [sp+72]
    00595008ldr x2, [sp+72]
    0059500cldr x1, [sp+96]
    00595010ldr x0, [sp+120]
    00595014bl runtime.memmove
    00595018b 0x595020
    0059501c
    0059501cloc_59501c:
    0059501cb 0x595020
    00595020
    00595020loc_595020:
    00595020ldr x2, [sp+232]
    00595024ldrsb x27, [x2]
    00595028str x2, [sp+208]
    0059502cldr x0, [sp+208]
    00595030add x1, sp, 32
    00595034bl crypto/internal/fips140/edwards25519.fiatScalarFromBytes
    00595038ldr x2, [sp+232]
    0059503cldrsb x27, [x2]
    00595040str x2, [sp+200]
    00595044ldr x2, [sp+232]
    00595048ldrsb x27, [x2]
    0059504cstr x2, [sp+192]
    00595050ldr x1, [sp+192]
    00595054ldr x0, [sp+200]
    00595058bl crypto/internal/fips140/edwards25519.fiatScalarToMontgomery
    0059505cldr x0, [sp+232]
    00595060str x0, [sp+88]
    00595064ldur x29, [sp-8]
    00595068ldr x30, [sp], 224
    0059506cret x30
    00595070
    00595070loc_595070:
    00595070adrp x0, 0x139000
    00595074add x0, x0, 1814
    00595078str x0, [sp+176]
    0059507cmovz x1, 69
    00595080str x1, [sp+184]
    00595084bl runtime.convTstring
    00595088str x0, [sp+144]
    0059508cmov x1, x0
    00595090adrp x0, 0x60000
    00595094add x0, x0, 2944
    00595098bl runtime.gopanic
    0059509chint
    005950a0
    005950a0loc_5950a0:
    005950a0stp x0, x1, [sp+8]
    005950a4stp x2, x3, [sp+24]
    005950a8mov x3, x30
    005950acbl runtime.morestack_noctxt.abi0
    005950b0ldp x0, x1, [sp+8]
    005950b4ldp x2, x3, [sp+24]
    005950b8b 0x594f40
    005950bcudf 0
    00594f40