File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
005778b0
005778b0crypto/internal/fips140/edwards25519/field.(*Element).Invert: ; void crypto/internal/fips140/edwards25519/field.(*Element).Invert(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * z)
005778b0ldr x16, [x28+16]
005778b4sub x17, sp, 352
005778b8subs xzr, x17, x16
005778bcb.ls 0x577c54
005778c0sub x20, sp, 480
005778c4stp x29, x30, [x20-8]
005778c8add sp, x20, 0
005778ccsub x29, sp, 8
005778d0str x0, [sp+488]
005778d4str x1, [sp+496]
005778d8str xzr, [sp+456]
005778dcstp xzr, xzr, [sp+280]
005778e0stp xzr, xzr, [sp+296]
005778e4str xzr, [sp+312]
005778e8stp xzr, xzr, [sp+40]
005778ecstp xzr, xzr, [sp+56]
005778f0str xzr, [sp+72]
005778f4stp xzr, xzr, [sp+320]
005778f8stp xzr, xzr, [sp+336]
005778fcstr xzr, [sp+352]
00577900stp xzr, xzr, [sp+80]
00577904stp xzr, xzr, [sp+96]
00577908str xzr, [sp+112]
0057790cstp xzr, xzr, [sp+200]
00577910stp xzr, xzr, [sp+216]
00577914str xzr, [sp+232]
00577918stp xzr, xzr, [sp+160]
0057791cstp xzr, xzr, [sp+176]
00577920str xzr, [sp+192]
00577924stp xzr, xzr, [sp+120]
00577928stp xzr, xzr, [sp+136]
0057792cstr xzr, [sp+152]
00577930stp xzr, xzr, [sp+240]
00577934stp xzr, xzr, [sp+256]
00577938str xzr, [sp+272]
0057793cstp xzr, xzr, [sp+360]
00577940stp xzr, xzr, [sp+376]
00577944str xzr, [sp+392]
00577948ldr x1, [sp+496]
0057794cadd x0, sp, 280
00577950bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577954add x0, sp, 360
00577958add x1, sp, 280
0057795cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577960add x0, sp, 360
00577964add x1, sp, 360
00577968bl crypto/internal/fips140/edwards25519/field.(*Element).Square
0057796cldr x2, [sp+496]
00577970add x0, sp, 40
00577974add x1, sp, 360
00577978bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
0057797cadd x0, sp, 320
00577980add x1, sp, 40
00577984add x2, sp, 280
00577988bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
0057798cadd x0, sp, 360
00577990add x1, sp, 320
00577994bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577998add x0, sp, 80
0057799cadd x1, sp, 360
005779a0add x2, sp, 40
005779a4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
005779a8add x0, sp, 360
005779acadd x1, sp, 80
005779b0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
005779b4str xzr, [sp+448]
005779b8b 0x5779bc
005779bc
005779bcloc_5779bc:
005779bcldr x3, [sp+448]
005779c0subs xzr, x3, 4
005779c4b.lt 0x5779cc
005779c8b 0x5779ec
005779cc
005779ccloc_5779cc:
005779ccadd x0, sp, 360
005779d0add x1, sp, 360
005779d4bl crypto/internal/fips140/edwards25519/field.(*Element).Square
005779d8b 0x5779dc
005779dc
005779dcloc_5779dc:
005779dcldr x3, [sp+448]
005779e0add x3, x3, 1
005779e4str x3, [sp+448]
005779e8b 0x5779bc
005779ec
005779ecloc_5779ec:
005779ecadd x0, sp, 200
005779f0add x1, sp, 360
005779f4add x2, sp, 80
005779f8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
005779fcadd x0, sp, 360
00577a00add x1, sp, 200
00577a04bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577a08str xzr, [sp+440]
00577a0cb 0x577a10
00577a10
00577a10loc_577a10:
00577a10ldr x3, [sp+440]
00577a14subs xzr, x3, 9
00577a18b.lt 0x577a20
00577a1cb 0x577a40
00577a20
00577a20loc_577a20:
00577a20add x0, sp, 360
00577a24add x1, sp, 360
00577a28bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577a2cb 0x577a30
00577a30
00577a30loc_577a30:
00577a30ldr x3, [sp+440]
00577a34add x3, x3, 1
00577a38str x3, [sp+440]
00577a3cb 0x577a10
00577a40
00577a40loc_577a40:
00577a40add x0, sp, 160
00577a44add x1, sp, 360
00577a48add x2, sp, 200
00577a4cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577a50add x0, sp, 360
00577a54add x1, sp, 160
00577a58bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577a5cstr xzr, [sp+432]
00577a60b 0x577a64
00577a64
00577a64loc_577a64:
00577a64ldr x3, [sp+432]
00577a68subs xzr, x3, 19
00577a6cb.lt 0x577a74
00577a70b 0x577a94
00577a74
00577a74loc_577a74:
00577a74add x0, sp, 360
00577a78add x1, sp, 360
00577a7cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577a80b 0x577a84
00577a84
00577a84loc_577a84:
00577a84ldr x3, [sp+432]
00577a88add x3, x3, 1
00577a8cstr x3, [sp+432]
00577a90b 0x577a64
00577a94
00577a94loc_577a94:
00577a94add x0, sp, 360
00577a98add x1, sp, 360
00577a9cadd x2, sp, 160
00577aa0bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577aa4add x0, sp, 360
00577aa8add x1, sp, 360
00577aacbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577ab0str xzr, [sp+424]
00577ab4b 0x577ab8
00577ab8
00577ab8loc_577ab8:
00577ab8ldr x3, [sp+424]
00577abcsubs xzr, x3, 9
00577ac0b.lt 0x577ac8
00577ac4b 0x577ae8
00577ac8
00577ac8loc_577ac8:
00577ac8add x0, sp, 360
00577accadd x1, sp, 360
00577ad0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577ad4b 0x577ad8
00577ad8
00577ad8loc_577ad8:
00577ad8ldr x3, [sp+424]
00577adcadd x3, x3, 1
00577ae0str x3, [sp+424]
00577ae4b 0x577ab8
00577ae8
00577ae8loc_577ae8:
00577ae8add x0, sp, 120
00577aecadd x1, sp, 360
00577af0add x2, sp, 200
00577af4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577af8add x0, sp, 360
00577afcadd x1, sp, 120
00577b00bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577b04str xzr, [sp+416]
00577b08b 0x577b0c
00577b0c
00577b0cloc_577b0c:
00577b0cldr x3, [sp+416]
00577b10subs xzr, x3, 49
00577b14b.lt 0x577b1c
00577b18b 0x577b3c
00577b1c
00577b1cloc_577b1c:
00577b1cadd x0, sp, 360
00577b20add x1, sp, 360
00577b24bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577b28b 0x577b2c
00577b2c
00577b2cloc_577b2c:
00577b2cldr x3, [sp+416]
00577b30add x3, x3, 1
00577b34str x3, [sp+416]
00577b38b 0x577b0c
00577b3c
00577b3cloc_577b3c:
00577b3cadd x0, sp, 240
00577b40add x1, sp, 360
00577b44add x2, sp, 120
00577b48bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577b4cadd x0, sp, 360
00577b50add x1, sp, 240
00577b54bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577b58str xzr, [sp+408]
00577b5cb 0x577b60
00577b60
00577b60loc_577b60:
00577b60ldr x3, [sp+408]
00577b64subs xzr, x3, 99
00577b68b.lt 0x577b70
00577b6cb 0x577b90
00577b70
00577b70loc_577b70:
00577b70add x0, sp, 360
00577b74add x1, sp, 360
00577b78bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577b7cb 0x577b80
00577b80
00577b80loc_577b80:
00577b80ldr x3, [sp+408]
00577b84add x3, x3, 1
00577b88str x3, [sp+408]
00577b8cb 0x577b60
00577b90
00577b90loc_577b90:
00577b90add x0, sp, 360
00577b94add x1, sp, 360
00577b98add x2, sp, 240
00577b9cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577ba0add x0, sp, 360
00577ba4add x1, sp, 360
00577ba8bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577bacstr xzr, [sp+400]
00577bb0b 0x577bb4
00577bb4
00577bb4loc_577bb4:
00577bb4ldr x3, [sp+400]
00577bb8subs xzr, x3, 49
00577bbcb.lt 0x577bc4
00577bc0b 0x577be4
00577bc4
00577bc4loc_577bc4:
00577bc4add x0, sp, 360
00577bc8add x1, sp, 360
00577bccbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577bd0b 0x577bd4
00577bd4
00577bd4loc_577bd4:
00577bd4ldr x3, [sp+400]
00577bd8add x3, x3, 1
00577bdcstr x3, [sp+400]
00577be0b 0x577bb4
00577be4
00577be4loc_577be4:
00577be4add x0, sp, 360
00577be8add x1, sp, 360
00577becadd x2, sp, 120
00577bf0bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577bf4add x0, sp, 360
00577bf8add x1, sp, 360
00577bfcbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577c00add x0, sp, 360
00577c04add x1, sp, 360
00577c08bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577c0cadd x0, sp, 360
00577c10add x1, sp, 360
00577c14bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577c18add x0, sp, 360
00577c1cadd x1, sp, 360
00577c20bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577c24add x0, sp, 360
00577c28add x1, sp, 360
00577c2cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577c30ldr x0, [sp+488]
00577c34add x1, sp, 360
00577c38add x2, sp, 320
00577c3cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577c40str x0, [sp+464]
00577c44str x0, [sp+456]
00577c48ldp x29, x30, [sp-8]
00577c4cadd sp, sp, 480
00577c50ret x30
00577c54
00577c54loc_577c54:
00577c54stp x0, x1, [sp+8]
00577c58mov x3, x30
00577c5cbl runtime.morestack_noctxt.abi0
00577c60ldp x0, x1, [sp+8]
00577c64b 0x5778b0
00577c68udf 0
00577c6cudf 0
005778b0
005778b0crypto/internal/fips140/edwards25519/field.(*Element).Invert: ; void crypto/internal/fips140/edwards25519/field.(*Element).Invert(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * z)
005778b0ldr x16, [x28+16]
005778b4sub x17, sp, 352
005778b8subs xzr, x17, x16
005778bcb.ls 0x577c54
005778c0sub x20, sp, 480
005778c4stp x29, x30, [x20-8]
005778c8add sp, x20, 0
005778ccsub x29, sp, 8
005778d0str x0, [sp+488]
005778d4str x1, [sp+496]
005778d8str xzr, [sp+456]
005778dcstp xzr, xzr, [sp+280]
005778e0stp xzr, xzr, [sp+296]
005778e4str xzr, [sp+312]
005778e8stp xzr, xzr, [sp+40]
005778ecstp xzr, xzr, [sp+56]
005778f0str xzr, [sp+72]
005778f4stp xzr, xzr, [sp+320]
005778f8stp xzr, xzr, [sp+336]
005778fcstr xzr, [sp+352]
00577900stp xzr, xzr, [sp+80]
00577904stp xzr, xzr, [sp+96]
00577908str xzr, [sp+112]
0057790cstp xzr, xzr, [sp+200]
00577910stp xzr, xzr, [sp+216]
00577914str xzr, [sp+232]
00577918stp xzr, xzr, [sp+160]
0057791cstp xzr, xzr, [sp+176]
00577920str xzr, [sp+192]
00577924stp xzr, xzr, [sp+120]
00577928stp xzr, xzr, [sp+136]
0057792cstr xzr, [sp+152]
00577930stp xzr, xzr, [sp+240]
00577934stp xzr, xzr, [sp+256]
00577938str xzr, [sp+272]
0057793cstp xzr, xzr, [sp+360]
00577940stp xzr, xzr, [sp+376]
00577944str xzr, [sp+392]
00577948ldr x1, [sp+496]
0057794cadd x0, sp, 280
00577950bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577954add x0, sp, 360
00577958add x1, sp, 280
0057795cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577960add x0, sp, 360
00577964add x1, sp, 360
00577968bl crypto/internal/fips140/edwards25519/field.(*Element).Square
0057796cldr x2, [sp+496]
00577970add x0, sp, 40
00577974add x1, sp, 360
00577978bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
0057797cadd x0, sp, 320
00577980add x1, sp, 40
00577984add x2, sp, 280
00577988bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
0057798cadd x0, sp, 360
00577990add x1, sp, 320
00577994bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577998add x0, sp, 80
0057799cadd x1, sp, 360
005779a0add x2, sp, 40
005779a4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
005779a8add x0, sp, 360
005779acadd x1, sp, 80
005779b0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
005779b4str xzr, [sp+448]
005779b8b 0x5779bc
005779bc
005779bcloc_5779bc:
005779bcldr x3, [sp+448]
005779c0subs xzr, x3, 4
005779c4b.lt 0x5779cc
005779c8b 0x5779ec
005779cc
005779ccloc_5779cc:
005779ccadd x0, sp, 360
005779d0add x1, sp, 360
005779d4bl crypto/internal/fips140/edwards25519/field.(*Element).Square
005779d8b 0x5779dc
005779dc
005779dcloc_5779dc:
005779dcldr x3, [sp+448]
005779e0add x3, x3, 1
005779e4str x3, [sp+448]
005779e8b 0x5779bc
005779ec
005779ecloc_5779ec:
005779ecadd x0, sp, 200
005779f0add x1, sp, 360
005779f4add x2, sp, 80
005779f8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
005779fcadd x0, sp, 360
00577a00add x1, sp, 200
00577a04bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577a08str xzr, [sp+440]
00577a0cb 0x577a10
00577a10
00577a10loc_577a10:
00577a10ldr x3, [sp+440]
00577a14subs xzr, x3, 9
00577a18b.lt 0x577a20
00577a1cb 0x577a40
00577a20
00577a20loc_577a20:
00577a20add x0, sp, 360
00577a24add x1, sp, 360
00577a28bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577a2cb 0x577a30
00577a30
00577a30loc_577a30:
00577a30ldr x3, [sp+440]
00577a34add x3, x3, 1
00577a38str x3, [sp+440]
00577a3cb 0x577a10
00577a40
00577a40loc_577a40:
00577a40add x0, sp, 160
00577a44add x1, sp, 360
00577a48add x2, sp, 200
00577a4cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577a50add x0, sp, 360
00577a54add x1, sp, 160
00577a58bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577a5cstr xzr, [sp+432]
00577a60b 0x577a64
00577a64
00577a64loc_577a64:
00577a64ldr x3, [sp+432]
00577a68subs xzr, x3, 19
00577a6cb.lt 0x577a74
00577a70b 0x577a94
00577a74
00577a74loc_577a74:
00577a74add x0, sp, 360
00577a78add x1, sp, 360
00577a7cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577a80b 0x577a84
00577a84
00577a84loc_577a84:
00577a84ldr x3, [sp+432]
00577a88add x3, x3, 1
00577a8cstr x3, [sp+432]
00577a90b 0x577a64
00577a94
00577a94loc_577a94:
00577a94add x0, sp, 360
00577a98add x1, sp, 360
00577a9cadd x2, sp, 160
00577aa0bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577aa4add x0, sp, 360
00577aa8add x1, sp, 360
00577aacbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577ab0str xzr, [sp+424]
00577ab4b 0x577ab8
00577ab8
00577ab8loc_577ab8:
00577ab8ldr x3, [sp+424]
00577abcsubs xzr, x3, 9
00577ac0b.lt 0x577ac8
00577ac4b 0x577ae8
00577ac8
00577ac8loc_577ac8:
00577ac8add x0, sp, 360
00577accadd x1, sp, 360
00577ad0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577ad4b 0x577ad8
00577ad8
00577ad8loc_577ad8:
00577ad8ldr x3, [sp+424]
00577adcadd x3, x3, 1
00577ae0str x3, [sp+424]
00577ae4b 0x577ab8
00577ae8
00577ae8loc_577ae8:
00577ae8add x0, sp, 120
00577aecadd x1, sp, 360
00577af0add x2, sp, 200
00577af4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577af8add x0, sp, 360
00577afcadd x1, sp, 120
00577b00bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577b04str xzr, [sp+416]
00577b08b 0x577b0c
00577b0c
00577b0cloc_577b0c:
00577b0cldr x3, [sp+416]
00577b10subs xzr, x3, 49
00577b14b.lt 0x577b1c
00577b18b 0x577b3c
00577b1c
00577b1cloc_577b1c:
00577b1cadd x0, sp, 360
00577b20add x1, sp, 360
00577b24bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577b28b 0x577b2c
00577b2c
00577b2cloc_577b2c:
00577b2cldr x3, [sp+416]
00577b30add x3, x3, 1
00577b34str x3, [sp+416]
00577b38b 0x577b0c
00577b3c
00577b3cloc_577b3c:
00577b3cadd x0, sp, 240
00577b40add x1, sp, 360
00577b44add x2, sp, 120
00577b48bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577b4cadd x0, sp, 360
00577b50add x1, sp, 240
00577b54bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577b58str xzr, [sp+408]
00577b5cb 0x577b60
00577b60
00577b60loc_577b60:
00577b60ldr x3, [sp+408]
00577b64subs xzr, x3, 99
00577b68b.lt 0x577b70
00577b6cb 0x577b90
00577b70
00577b70loc_577b70:
00577b70add x0, sp, 360
00577b74add x1, sp, 360
00577b78bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577b7cb 0x577b80
00577b80
00577b80loc_577b80:
00577b80ldr x3, [sp+408]
00577b84add x3, x3, 1
00577b88str x3, [sp+408]
00577b8cb 0x577b60
00577b90
00577b90loc_577b90:
00577b90add x0, sp, 360
00577b94add x1, sp, 360
00577b98add x2, sp, 240
00577b9cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577ba0add x0, sp, 360
00577ba4add x1, sp, 360
00577ba8bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577bacstr xzr, [sp+400]
00577bb0b 0x577bb4
00577bb4
00577bb4loc_577bb4:
00577bb4ldr x3, [sp+400]
00577bb8subs xzr, x3, 49
00577bbcb.lt 0x577bc4
00577bc0b 0x577be4
00577bc4
00577bc4loc_577bc4:
00577bc4add x0, sp, 360
00577bc8add x1, sp, 360
00577bccbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577bd0b 0x577bd4
00577bd4
00577bd4loc_577bd4:
00577bd4ldr x3, [sp+400]
00577bd8add x3, x3, 1
00577bdcstr x3, [sp+400]
00577be0b 0x577bb4
00577be4
00577be4loc_577be4:
00577be4add x0, sp, 360
00577be8add x1, sp, 360
00577becadd x2, sp, 120
00577bf0bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577bf4add x0, sp, 360
00577bf8add x1, sp, 360
00577bfcbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577c00add x0, sp, 360
00577c04add x1, sp, 360
00577c08bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577c0cadd x0, sp, 360
00577c10add x1, sp, 360
00577c14bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577c18add x0, sp, 360
00577c1cadd x1, sp, 360
00577c20bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577c24add x0, sp, 360
00577c28add x1, sp, 360
00577c2cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00577c30ldr x0, [sp+488]
00577c34add x1, sp, 360
00577c38add x2, sp, 320
00577c3cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00577c40str x0, [sp+464]
00577c44str x0, [sp+456]
00577c48ldp x29, x30, [sp-8]
00577c4cadd sp, sp, 480
00577c50ret x30
00577c54
00577c54loc_577c54:
00577c54stp x0, x1, [sp+8]
00577c58mov x3, x30
00577c5cbl runtime.morestack_noctxt.abi0
00577c60ldp x0, x1, [sp+8]
00577c64b 0x5778b0
00577c68udf 0
00577c6cudf 0
005778b0
00577c70
00577c70crypto/internal/fips140/edwards25519/field.(*Element).Set: ; void crypto/internal/fips140/edwards25519/field.(*Element).Set(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * a)
00577c70str x30, [sp-32]!
00577c74stur x29, [sp-8]
00577c78sub x29, sp, 8
00577c7cstr x0, [sp+40]
00577c80str x1, [sp+48]
00577c84str xzr, [sp+16]
00577c88ldr x1, [sp+40]
00577c8cldrsb x27, [x1]
00577c90ldr x2, [sp+48]
00577c94ldrsb x27, [x2]
00577c98ldp x3, x4, [x2]
00577c9cldp x5, x6, [x2+16]
00577ca0stp x3, x4, [x1]
00577ca4stp x5, x6, [x1+16]
00577ca8ldr x2, [x2+32]
00577cacstr x2, [x1+32]
00577cb0ldr x0, [sp+40]
00577cb4str x0, [sp+16]
00577cb8add x29, sp, 24
00577cbcadd sp, sp, 32
00577cc0ret x30
00577cc4udf 0
00577cc8udf 0
00577cccudf 0
00577c70
00577c70crypto/internal/fips140/edwards25519/field.(*Element).Set: ; void crypto/internal/fips140/edwards25519/field.(*Element).Set(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * a)
00577c70str x30, [sp-32]!
00577c74stur x29, [sp-8]
00577c78sub x29, sp, 8
00577c7cstr x0, [sp+40]
00577c80str x1, [sp+48]
00577c84str xzr, [sp+16]
00577c88ldr x1, [sp+40]
00577c8cldrsb x27, [x1]
00577c90ldr x2, [sp+48]
00577c94ldrsb x27, [x2]
00577c98ldp x3, x4, [x2]
00577c9cldp x5, x6, [x2+16]
00577ca0stp x3, x4, [x1]
00577ca4stp x5, x6, [x1+16]
00577ca8ldr x2, [x2+32]
00577cacstr x2, [x1+32]
00577cb0ldr x0, [sp+40]
00577cb4str x0, [sp+16]
00577cb8add x29, sp, 24
00577cbcadd sp, sp, 32
00577cc0ret x30
00577cc4udf 0
00577cc8udf 0
00577cccudf 0
00577c70
00577cd0
00577cd0crypto/internal/fips140/edwards25519/field.(*Element).SetBytes: ; void crypto/internal/fips140/edwards25519/field.(*Element).SetBytes(crypto/internal/fips140/edwards25519/field.Element * v, struct []uint8 x)
00577cd0ldr x16, [x28+16]
00577cd4subs xzr, sp, x16
00577cd8b.ls 0x577fbc
00577cdcstr x30, [sp-128]!
00577ce0stur x29, [sp-8]
00577ce4sub x29, sp, 8
00577ce8str x0, [sp+136]
00577cecstr x1, [sp+144]
00577cf0str x2, [sp+152]
00577cf4str x3, [sp+160]
00577cf8str xzr, [sp+72]
00577cfcstp xzr, xzr, [sp+56]
00577d00ldr x3, [sp+152]
00577d04str x3, [sp+48]
00577d08subs xzr, x3, 32
00577d0cb.ne 0x577d14
00577d10b 0x577d50
00577d14
00577d14loc_577d14:
00577d14adrp x0, 0x150000
00577d18add x0, x0, 2871
00577d1cmovz x1, 46
00577d20bl errors.New
00577d24str x0, [sp+104]
00577d28str x1, [sp+112]
00577d2cstr xzr, [sp+72]
00577d30ldr x1, [sp+104]
00577d34ldr x2, [sp+112]
00577d38str x1, [sp+56]
00577d3cstr x2, [sp+64]
00577d40ldr x0, [sp+72]
00577d44ldur x29, [sp-8]
00577d48ldr x30, [sp], 128
00577d4cret x30
00577d50
00577d50loc_577d50:
00577d50ldr x2, [sp+160]
00577d54ldr x0, [sp+144]
00577d58subs xzr, x2, 8
00577d5cb.hs 0x577d64
00577d60b 0x577fb0
00577d64
00577d64loc_577d64:
00577d64b 0x577d68
00577d68
00577d68loc_577d68:
00577d68str x0, [sp+80]
00577d6corr x1, xzr, 8
00577d70str x1, [sp+88]
00577d74str x2, [sp+96]
00577d78bl crypto/internal/fips140deps/byteorder.LEUint64
00577d7cstr x0, [sp+40]
00577d80ldr x3, [sp+136]
00577d84ldrsb x27, [x3]
00577d88str x0, [x3]
00577d8cldr x3, [sp+136]
00577d90ldrsb x27, [x3]
00577d94ldr x4, [sp+136]
00577d98ldrsb x27, [x4]
00577d9cldr x4, [x4]
00577da0and x4, x4, 0x7ffffffffffff
00577da4str x4, [x3]
00577da8ldr x2, [sp+160]
00577dacldr x3, [sp+144]
00577db0subs xzr, x2, 14
00577db4b.hs 0x577dbc
00577db8b 0x577fa8
00577dbc
00577dbcloc_577dbc:
00577dbcb 0x577dc0
00577dc0
00577dc0loc_577dc0:
00577dc0sub x2, x2, 6
00577dc4sub x4, xzr, x2
00577dc8sbfm x4, x4, 63, 63
00577dccand x4, x4, 6
00577dd0add x0, x3, x4
00577dd4str x0, [sp+80]
00577dd8orr x1, xzr, 8
00577ddcstr x1, [sp+88]
00577de0str x2, [sp+96]
00577de4bl crypto/internal/fips140deps/byteorder.LEUint64
00577de8str x0, [sp+40]
00577decldr x3, [sp+136]
00577df0ldrsb x27, [x3]
00577df4ubfm x4, x0, 3, 63
00577df8str x4, [x3+8]
00577dfcldr x3, [sp+136]
00577e00ldrsb x27, [x3]
00577e04ldr x4, [sp+136]
00577e08ldrsb x27, [x4]
00577e0cldr x4, [x4+8]
00577e10and x4, x4, 0x7ffffffffffff
00577e14str x4, [x3+8]
00577e18ldr x2, [sp+160]
00577e1cldr x3, [sp+144]
00577e20subs xzr, x2, 20
00577e24b.hs 0x577e2c
00577e28b 0x577fa0
00577e2c
00577e2cloc_577e2c:
00577e2cb 0x577e30
00577e30
00577e30loc_577e30:
00577e30sub x2, x2, 12
00577e34sub x4, xzr, x2
00577e38sbfm x4, x4, 63, 63
00577e3cand x4, x4, 12
00577e40add x0, x3, x4
00577e44str x0, [sp+80]
00577e48orr x1, xzr, 8
00577e4cstr x1, [sp+88]
00577e50str x2, [sp+96]
00577e54bl crypto/internal/fips140deps/byteorder.LEUint64
00577e58str x0, [sp+40]
00577e5cldr x3, [sp+136]
00577e60ldrsb x27, [x3]
00577e64ubfm x4, x0, 6, 63
00577e68str x4, [x3+16]
00577e6cldr x3, [sp+136]
00577e70ldrsb x27, [x3]
00577e74ldr x4, [sp+136]
00577e78ldrsb x27, [x4]
00577e7cldr x4, [x4+16]
00577e80and x4, x4, 0x7ffffffffffff
00577e84str x4, [x3+16]
00577e88ldr x2, [sp+160]
00577e8cldr x3, [sp+144]
00577e90subs xzr, x2, 27
00577e94b.hs 0x577e9c
00577e98b 0x577f98
00577e9c
00577e9cloc_577e9c:
00577e9cb 0x577ea0
00577ea0
00577ea0loc_577ea0:
00577ea0sub x2, x2, 19
00577ea4sub x4, xzr, x2
00577ea8sbfm x4, x4, 63, 63
00577eacmovz x5, 19
00577eb0and x4, x4, x5
00577eb4add x0, x3, x4
00577eb8str x0, [sp+80]
00577ebcorr x1, xzr, 8
00577ec0str x1, [sp+88]
00577ec4str x2, [sp+96]
00577ec8bl crypto/internal/fips140deps/byteorder.LEUint64
00577eccstr x0, [sp+40]
00577ed0ldr x3, [sp+136]
00577ed4ldrsb x27, [x3]
00577ed8ubfm x4, x0, 1, 63
00577edcstr x4, [x3+24]
00577ee0ldr x3, [sp+136]
00577ee4ldrsb x27, [x3]
00577ee8ldr x4, [sp+136]
00577eecldrsb x27, [x4]
00577ef0ldr x4, [x4+24]
00577ef4and x4, x4, 0x7ffffffffffff
00577ef8str x4, [x3+24]
00577efcldr x2, [sp+160]
00577f00ldr x3, [sp+144]
00577f04subs xzr, x2, 32
00577f08b.hs 0x577f10
00577f0cb 0x577f90
00577f10
00577f10loc_577f10:
00577f10b 0x577f14
00577f14
00577f14loc_577f14:
00577f14sub x2, x2, 24
00577f18sub x4, xzr, x2
00577f1csbfm x4, x4, 63, 63
00577f20and x4, x4, 24
00577f24add x0, x3, x4
00577f28str x0, [sp+80]
00577f2corr x1, xzr, 8
00577f30str x1, [sp+88]
00577f34str x2, [sp+96]
00577f38bl crypto/internal/fips140deps/byteorder.LEUint64
00577f3cstr x0, [sp+40]
00577f40ldr x3, [sp+136]
00577f44ldrsb x27, [x3]
00577f48ubfm x4, x0, 12, 63
00577f4cstr x4, [x3+32]
00577f50ldr x3, [sp+136]
00577f54ldrsb x27, [x3]
00577f58ldr x4, [sp+136]
00577f5cldrsb x27, [x4]
00577f60ldr x4, [x4+32]
00577f64and x4, x4, 0x7ffffffffffff
00577f68str x4, [x3+32]
00577f6cldr x3, [sp+136]
00577f70str x3, [sp+72]
00577f74stp xzr, xzr, [sp+56]
00577f78ldr x0, [sp+72]
00577f7cmov x1, xzr
00577f80mov x2, xzr
00577f84ldur x29, [sp-8]
00577f88ldr x30, [sp], 128
00577f8cret x30
00577f90
00577f90loc_577f90:
00577f90orr x1, xzr, 32
00577f94bl runtime.panicSliceAcap
00577f98
00577f98loc_577f98:
00577f98movz x1, 27
00577f9cbl runtime.panicSliceAcap
00577fa0
00577fa0loc_577fa0:
00577fa0movz x1, 20
00577fa4bl runtime.panicSliceAcap
00577fa8
00577fa8loc_577fa8:
00577fa8orr x1, xzr, 14
00577facbl runtime.panicSliceAcap
00577fb0
00577fb0loc_577fb0:
00577fb0orr x1, xzr, 8
00577fb4bl runtime.panicSliceAcap
00577fb8hint
00577fbc
00577fbcloc_577fbc:
00577fbcstp x0, x1, [sp+8]
00577fc0stp x2, x3, [sp+24]
00577fc4mov x3, x30
00577fc8bl runtime.morestack_noctxt.abi0
00577fccldp x0, x1, [sp+8]
00577fd0ldp x2, x3, [sp+24]
00577fd4b 0x577cd0
00577fd8udf 0
00577fdcudf 0
00577cd0
00577cd0crypto/internal/fips140/edwards25519/field.(*Element).SetBytes: ; void crypto/internal/fips140/edwards25519/field.(*Element).SetBytes(crypto/internal/fips140/edwards25519/field.Element * v, struct []uint8 x)
00577cd0ldr x16, [x28+16]
00577cd4subs xzr, sp, x16
00577cd8b.ls 0x577fbc
00577cdcstr x30, [sp-128]!
00577ce0stur x29, [sp-8]
00577ce4sub x29, sp, 8
00577ce8str x0, [sp+136]
00577cecstr x1, [sp+144]
00577cf0str x2, [sp+152]
00577cf4str x3, [sp+160]
00577cf8str xzr, [sp+72]
00577cfcstp xzr, xzr, [sp+56]
00577d00ldr x3, [sp+152]
00577d04str x3, [sp+48]
00577d08subs xzr, x3, 32
00577d0cb.ne 0x577d14
00577d10b 0x577d50
00577d14
00577d14loc_577d14:
00577d14adrp x0, 0x150000
00577d18add x0, x0, 2871
00577d1cmovz x1, 46
00577d20bl errors.New
00577d24str x0, [sp+104]
00577d28str x1, [sp+112]
00577d2cstr xzr, [sp+72]
00577d30ldr x1, [sp+104]
00577d34ldr x2, [sp+112]
00577d38str x1, [sp+56]
00577d3cstr x2, [sp+64]
00577d40ldr x0, [sp+72]
00577d44ldur x29, [sp-8]
00577d48ldr x30, [sp], 128
00577d4cret x30
00577d50
00577d50loc_577d50:
00577d50ldr x2, [sp+160]
00577d54ldr x0, [sp+144]
00577d58subs xzr, x2, 8
00577d5cb.hs 0x577d64
00577d60b 0x577fb0
00577d64
00577d64loc_577d64:
00577d64b 0x577d68
00577d68
00577d68loc_577d68:
00577d68str x0, [sp+80]
00577d6corr x1, xzr, 8
00577d70str x1, [sp+88]
00577d74str x2, [sp+96]
00577d78bl crypto/internal/fips140deps/byteorder.LEUint64
00577d7cstr x0, [sp+40]
00577d80ldr x3, [sp+136]
00577d84ldrsb x27, [x3]
00577d88str x0, [x3]
00577d8cldr x3, [sp+136]
00577d90ldrsb x27, [x3]
00577d94ldr x4, [sp+136]
00577d98ldrsb x27, [x4]
00577d9cldr x4, [x4]
00577da0and x4, x4, 0x7ffffffffffff
00577da4str x4, [x3]
00577da8ldr x2, [sp+160]
00577dacldr x3, [sp+144]
00577db0subs xzr, x2, 14
00577db4b.hs 0x577dbc
00577db8b 0x577fa8
00577dbc
00577dbcloc_577dbc:
00577dbcb 0x577dc0
00577dc0
00577dc0loc_577dc0:
00577dc0sub x2, x2, 6
00577dc4sub x4, xzr, x2
00577dc8sbfm x4, x4, 63, 63
00577dccand x4, x4, 6
00577dd0add x0, x3, x4
00577dd4str x0, [sp+80]
00577dd8orr x1, xzr, 8
00577ddcstr x1, [sp+88]
00577de0str x2, [sp+96]
00577de4bl crypto/internal/fips140deps/byteorder.LEUint64
00577de8str x0, [sp+40]
00577decldr x3, [sp+136]
00577df0ldrsb x27, [x3]
00577df4ubfm x4, x0, 3, 63
00577df8str x4, [x3+8]
00577dfcldr x3, [sp+136]
00577e00ldrsb x27, [x3]
00577e04ldr x4, [sp+136]
00577e08ldrsb x27, [x4]
00577e0cldr x4, [x4+8]
00577e10and x4, x4, 0x7ffffffffffff
00577e14str x4, [x3+8]
00577e18ldr x2, [sp+160]
00577e1cldr x3, [sp+144]
00577e20subs xzr, x2, 20
00577e24b.hs 0x577e2c
00577e28b 0x577fa0
00577e2c
00577e2cloc_577e2c:
00577e2cb 0x577e30
00577e30
00577e30loc_577e30:
00577e30sub x2, x2, 12
00577e34sub x4, xzr, x2
00577e38sbfm x4, x4, 63, 63
00577e3cand x4, x4, 12
00577e40add x0, x3, x4
00577e44str x0, [sp+80]
00577e48orr x1, xzr, 8
00577e4cstr x1, [sp+88]
00577e50str x2, [sp+96]
00577e54bl crypto/internal/fips140deps/byteorder.LEUint64
00577e58str x0, [sp+40]
00577e5cldr x3, [sp+136]
00577e60ldrsb x27, [x3]
00577e64ubfm x4, x0, 6, 63
00577e68str x4, [x3+16]
00577e6cldr x3, [sp+136]
00577e70ldrsb x27, [x3]
00577e74ldr x4, [sp+136]
00577e78ldrsb x27, [x4]
00577e7cldr x4, [x4+16]
00577e80and x4, x4, 0x7ffffffffffff
00577e84str x4, [x3+16]
00577e88ldr x2, [sp+160]
00577e8cldr x3, [sp+144]
00577e90subs xzr, x2, 27
00577e94b.hs 0x577e9c
00577e98b 0x577f98
00577e9c
00577e9cloc_577e9c:
00577e9cb 0x577ea0
00577ea0
00577ea0loc_577ea0:
00577ea0sub x2, x2, 19
00577ea4sub x4, xzr, x2
00577ea8sbfm x4, x4, 63, 63
00577eacmovz x5, 19
00577eb0and x4, x4, x5
00577eb4add x0, x3, x4
00577eb8str x0, [sp+80]
00577ebcorr x1, xzr, 8
00577ec0str x1, [sp+88]
00577ec4str x2, [sp+96]
00577ec8bl crypto/internal/fips140deps/byteorder.LEUint64
00577eccstr x0, [sp+40]
00577ed0ldr x3, [sp+136]
00577ed4ldrsb x27, [x3]
00577ed8ubfm x4, x0, 1, 63
00577edcstr x4, [x3+24]
00577ee0ldr x3, [sp+136]
00577ee4ldrsb x27, [x3]
00577ee8ldr x4, [sp+136]
00577eecldrsb x27, [x4]
00577ef0ldr x4, [x4+24]
00577ef4and x4, x4, 0x7ffffffffffff
00577ef8str x4, [x3+24]
00577efcldr x2, [sp+160]
00577f00ldr x3, [sp+144]
00577f04subs xzr, x2, 32
00577f08b.hs 0x577f10
00577f0cb 0x577f90
00577f10
00577f10loc_577f10:
00577f10b 0x577f14
00577f14
00577f14loc_577f14:
00577f14sub x2, x2, 24
00577f18sub x4, xzr, x2
00577f1csbfm x4, x4, 63, 63
00577f20and x4, x4, 24
00577f24add x0, x3, x4
00577f28str x0, [sp+80]
00577f2corr x1, xzr, 8
00577f30str x1, [sp+88]
00577f34str x2, [sp+96]
00577f38bl crypto/internal/fips140deps/byteorder.LEUint64
00577f3cstr x0, [sp+40]
00577f40ldr x3, [sp+136]
00577f44ldrsb x27, [x3]
00577f48ubfm x4, x0, 12, 63
00577f4cstr x4, [x3+32]
00577f50ldr x3, [sp+136]
00577f54ldrsb x27, [x3]
00577f58ldr x4, [sp+136]
00577f5cldrsb x27, [x4]
00577f60ldr x4, [x4+32]
00577f64and x4, x4, 0x7ffffffffffff
00577f68str x4, [x3+32]
00577f6cldr x3, [sp+136]
00577f70str x3, [sp+72]
00577f74stp xzr, xzr, [sp+56]
00577f78ldr x0, [sp+72]
00577f7cmov x1, xzr
00577f80mov x2, xzr
00577f84ldur x29, [sp-8]
00577f88ldr x30, [sp], 128
00577f8cret x30
00577f90
00577f90loc_577f90:
00577f90orr x1, xzr, 32
00577f94bl runtime.panicSliceAcap
00577f98
00577f98loc_577f98:
00577f98movz x1, 27
00577f9cbl runtime.panicSliceAcap
00577fa0
00577fa0loc_577fa0:
00577fa0movz x1, 20
00577fa4bl runtime.panicSliceAcap
00577fa8
00577fa8loc_577fa8:
00577fa8orr x1, xzr, 14
00577facbl runtime.panicSliceAcap
00577fb0
00577fb0loc_577fb0:
00577fb0orr x1, xzr, 8
00577fb4bl runtime.panicSliceAcap
00577fb8hint
00577fbc
00577fbcloc_577fbc:
00577fbcstp x0, x1, [sp+8]
00577fc0stp x2, x3, [sp+24]
00577fc4mov x3, x30
00577fc8bl runtime.morestack_noctxt.abi0
00577fccldp x0, x1, [sp+8]
00577fd0ldp x2, x3, [sp+24]
00577fd4b 0x577cd0
00577fd8udf 0
00577fdcudf 0
00577cd0
00577fe0
00577fe0crypto/internal/fips140/edwards25519/field.(*Element).Bytes: ; void crypto/internal/fips140/edwards25519/field.(*Element).Bytes(crypto/internal/fips140/edwards25519/field.Element * v)
00577fe0ldr x16, [x28+16]
00577fe4subs xzr, sp, x16
00577fe8b.ls 0x57804c
00577fecstr x30, [sp-96]!
00577ff0stur x29, [sp-8]
00577ff4sub x29, sp, 8
00577ff8str x0, [sp+104]
00577ffcstr xzr, [sp+32]
00578000stp xzr, xzr, [sp+40]
00578004adrp x0, 0x85000
00578008add x0, x0, 2240
0057800cbl runtime.newobject
00578010str x0, [sp+80]
00578014stp xzr, xzr, [x0]
00578018stp xzr, xzr, [x0+16]
0057801cldr x0, [sp+104]
00578020ldr x1, [sp+80]
00578024bl crypto/internal/fips140/edwards25519/field.(*Element).bytes
00578028str x0, [sp+56]
0057802cstr x1, [sp+64]
00578030str x2, [sp+72]
00578034str x0, [sp+32]
00578038str x1, [sp+40]
0057803cstr x2, [sp+48]
00578040ldur x29, [sp-8]
00578044ldr x30, [sp], 96
00578048ret x30
0057804c
0057804cloc_57804c:
0057804cstr x0, [sp+8]
00578050mov x3, x30
00578054bl runtime.morestack_noctxt.abi0
00578058ldr x0, [sp+8]
0057805cb 0x577fe0
00577fe0
00577fe0crypto/internal/fips140/edwards25519/field.(*Element).Bytes: ; void crypto/internal/fips140/edwards25519/field.(*Element).Bytes(crypto/internal/fips140/edwards25519/field.Element * v)
00577fe0ldr x16, [x28+16]
00577fe4subs xzr, sp, x16
00577fe8b.ls 0x57804c
00577fecstr x30, [sp-96]!
00577ff0stur x29, [sp-8]
00577ff4sub x29, sp, 8
00577ff8str x0, [sp+104]
00577ffcstr xzr, [sp+32]
00578000stp xzr, xzr, [sp+40]
00578004adrp x0, 0x85000
00578008add x0, x0, 2240
0057800cbl runtime.newobject
00578010str x0, [sp+80]
00578014stp xzr, xzr, [x0]
00578018stp xzr, xzr, [x0+16]
0057801cldr x0, [sp+104]
00578020ldr x1, [sp+80]
00578024bl crypto/internal/fips140/edwards25519/field.(*Element).bytes
00578028str x0, [sp+56]
0057802cstr x1, [sp+64]
00578030str x2, [sp+72]
00578034str x0, [sp+32]
00578038str x1, [sp+40]
0057803cstr x2, [sp+48]
00578040ldur x29, [sp-8]
00578044ldr x30, [sp], 96
00578048ret x30
0057804c
0057804cloc_57804c:
0057804cstr x0, [sp+8]
00578050mov x3, x30
00578054bl runtime.morestack_noctxt.abi0
00578058ldr x0, [sp+8]
0057805cb 0x577fe0
00577fe0
00578060
00578060crypto/internal/fips140/edwards25519/field.(*Element).bytes: ; void crypto/internal/fips140/edwards25519/field.(*Element).bytes(crypto/internal/fips140/edwards25519/field.Element * v, uint8[32] * out)
00578060ldr x16, [x28+16]
00578064sub x17, sp, 160
00578068subs xzr, x17, x16
0057806cb.ls 0x5782c8
00578070sub x20, sp, 288
00578074stp x29, x30, [x20-8]
00578078add sp, x20, 0
0057807csub x29, sp, 8
00578080str x0, [sp+296]
00578084str x1, [sp+304]
00578088str xzr, [sp+232]
0057808cstp xzr, xzr, [sp+240]
00578090ldr x1, [sp+296]
00578094ldrsb x27, [x1]
00578098ldp x2, x3, [x1]
0057809cldp x4, x5, [x1+16]
005780a0stp x2, x3, [sp+72]
005780a4stp x4, x5, [sp+88]
005780a8ldr x1, [x1+32]
005780acstr x1, [sp+104]
005780b0add x0, sp, 72
005780b4bl crypto/internal/fips140/edwards25519/field.(*Element).reduce
005780b8stur xzr, [sp+55]
005780bcadrp x27, 0x19e000
005780c0add x27, x27, 3712
005780c4ldp x1, x2, [x27]
005780c8adrp x27, 0x19e000
005780ccadd x27, x27, 3728
005780d0ldp x3, x4, [x27]
005780d4stp x1, x2, [sp+192]
005780d8stp x3, x4, [sp+208]
005780dcadrp x27, 0x19e000
005780e0ldr x1, [x27+3744]
005780e4str x1, [sp+224]
005780e8ldr x1, [sp+72]
005780ecstr x1, [sp+192]
005780f0ldr x1, [sp+80]
005780f4str x1, [sp+200]
005780f8ldr x1, [sp+88]
005780fcstr x1, [sp+208]
00578100ldr x1, [sp+96]
00578104str x1, [sp+216]
00578108ldr x1, [sp+104]
0057810cstr x1, [sp+224]
00578110str xzr, [sp+184]
00578114movz x1, 5
00578118str x1, [sp+176]
0057811cb 0x578120
00578120
00578120loc_578120:
00578120ldr x4, [sp+176]
00578124ldr x5, [sp+184]
00578128subs xzr, x4, x5
0057812cb.gt 0x578134
00578130b 0x5781c0
00578134
00578134loc_578134:
00578134ldr x4, [sp+184]
00578138str x4, [sp+136]
0057813cldr x5, [sp+184]
00578140add x6, sp, 192
00578144ldr x5, [x6+3*x5]
00578148str x5, [sp+120]
0057814cmovz x5, 51
00578150madd x4, x4, x5, xzr
00578154str x4, [sp+144]
00578158add x4, sp, 55
0057815cldrsb x27, [x4]
00578160b 0x578164
00578164
00578164loc_578164:
00578164str x4, [sp+256]
00578168orr x2, xzr, 8
0057816cstr x2, [sp+264]
00578170str x2, [sp+272]
00578174ldr x4, [sp+120]
00578178ldr x5, [sp+144]
0057817csbfm x6, x5, 63, 63
00578180add x6, x5, x6, lsr #61
00578184and x6, x6, -8
00578188sub x5, x5, x6
0057818clslv x4, x4, x5
00578190subs xzr, x5, 64
00578194csel x3, x4, xzr, lo
00578198str x3, [sp+168]
0057819cldr x0, [sp+256]
005781a0mov x1, x2
005781a4bl crypto/internal/fips140deps/byteorder.LEPutUint64
005781a8ldur x4, [sp+55]
005781acstr x4, [sp+64]
005781b0str xzr, [sp+160]
005781b4orr x2, xzr, 8
005781b8str x2, [sp+152]
005781bcb 0x5781fc
005781c0
005781c0loc_5781c0:
005781c0ldr x3, [sp+304]
005781c4ldrsb x27, [x3]
005781c8b 0x5781cc
005781cc
005781ccloc_5781cc:
005781ccstr x3, [sp+256]
005781d0orr x2, xzr, 32
005781d4str x2, [sp+264]
005781d8str x2, [sp+272]
005781dcstr x3, [sp+232]
005781e0str x2, [sp+240]
005781e4str x2, [sp+248]
005781e8ldr x0, [sp+232]
005781ecmov x1, x2
005781f0ldp x29, x30, [sp-8]
005781f4add sp, sp, 288
005781f8ret x30
005781fc
005781fcloc_5781fc:
005781fcldr x4, [sp+152]
00578200ldr x5, [sp+160]
00578204subs xzr, x4, x5
00578208b.gt 0x578210
0057820cb 0x57829c
00578210
00578210loc_578210:
00578210ldr x4, [sp+160]
00578214str x4, [sp+128]
00578218ldr x4, [sp+160]
0057821cadd x5, sp, 64
00578220ldrb w4, [x5+x4]
00578224strb w4, [sp+63]
00578228ldr x4, [sp+144]
0057822csbfm x5, x4, 63, 63
00578230add x4, x4, x5, lsr #61
00578234ldr x5, [sp+128]
00578238add x0, x5, x4, asr #3
0057823cstr x0, [sp+112]
00578240subs xzr, x0, 32
00578244b.ge 0x57824c
00578248b 0x578250
0057824c
0057824cloc_57824c:
0057824cb 0x5782a0
00578250
00578250loc_578250:
00578250ldr x4, [sp+304]
00578254ldrsb x27, [x4]
00578258subs xzr, x0, 32
0057825cb.lo 0x578264
00578260b 0x5782bc
00578264
00578264loc_578264:
00578264ldrb w4, [x4+x0]
00578268ldr x5, [sp+304]
0057826cldrsb x27, [x5]
00578270ldrb w6, [sp+63]
00578274orr x4, x4, x6
00578278subs xzr, x0, 32
0057827cb.lo 0x578284
00578280b 0x5782b4
00578284
00578284loc_578284:
00578284strb w4, [x5+x0]
00578288b 0x57828c
0057828c
0057828cloc_57828c:
0057828cldr x4, [sp+160]
00578290add x4, x4, 1
00578294str x4, [sp+160]
00578298b 0x5781fc
0057829c
0057829cloc_57829c:
0057829cb 0x5782a0
005782a0
005782a0loc_5782a0:
005782a0b 0x5782a4
005782a4
005782a4loc_5782a4:
005782a4ldr x4, [sp+184]
005782a8add x4, x4, 1
005782acstr x4, [sp+184]
005782b0b 0x578120
005782b4
005782b4loc_5782b4:
005782b4orr x1, xzr, 32
005782b8bl runtime.panicIndex
005782bc
005782bcloc_5782bc:
005782bcorr x1, xzr, 32
005782c0bl runtime.panicIndex
005782c4hint
005782c8
005782c8loc_5782c8:
005782c8stp x0, x1, [sp+8]
005782ccmov x3, x30
005782d0bl runtime.morestack_noctxt.abi0
005782d4ldp x0, x1, [sp+8]
005782d8b 0x578060
005782dcudf 0
00578060
00578060crypto/internal/fips140/edwards25519/field.(*Element).bytes: ; void crypto/internal/fips140/edwards25519/field.(*Element).bytes(crypto/internal/fips140/edwards25519/field.Element * v, uint8[32] * out)
00578060ldr x16, [x28+16]
00578064sub x17, sp, 160
00578068subs xzr, x17, x16
0057806cb.ls 0x5782c8
00578070sub x20, sp, 288
00578074stp x29, x30, [x20-8]
00578078add sp, x20, 0
0057807csub x29, sp, 8
00578080str x0, [sp+296]
00578084str x1, [sp+304]
00578088str xzr, [sp+232]
0057808cstp xzr, xzr, [sp+240]
00578090ldr x1, [sp+296]
00578094ldrsb x27, [x1]
00578098ldp x2, x3, [x1]
0057809cldp x4, x5, [x1+16]
005780a0stp x2, x3, [sp+72]
005780a4stp x4, x5, [sp+88]
005780a8ldr x1, [x1+32]
005780acstr x1, [sp+104]
005780b0add x0, sp, 72
005780b4bl crypto/internal/fips140/edwards25519/field.(*Element).reduce
005780b8stur xzr, [sp+55]
005780bcadrp x27, 0x19e000
005780c0add x27, x27, 3712
005780c4ldp x1, x2, [x27]
005780c8adrp x27, 0x19e000
005780ccadd x27, x27, 3728
005780d0ldp x3, x4, [x27]
005780d4stp x1, x2, [sp+192]
005780d8stp x3, x4, [sp+208]
005780dcadrp x27, 0x19e000
005780e0ldr x1, [x27+3744]
005780e4str x1, [sp+224]
005780e8ldr x1, [sp+72]
005780ecstr x1, [sp+192]
005780f0ldr x1, [sp+80]
005780f4str x1, [sp+200]
005780f8ldr x1, [sp+88]
005780fcstr x1, [sp+208]
00578100ldr x1, [sp+96]
00578104str x1, [sp+216]
00578108ldr x1, [sp+104]
0057810cstr x1, [sp+224]
00578110str xzr, [sp+184]
00578114movz x1, 5
00578118str x1, [sp+176]
0057811cb 0x578120
00578120
00578120loc_578120:
00578120ldr x4, [sp+176]
00578124ldr x5, [sp+184]
00578128subs xzr, x4, x5
0057812cb.gt 0x578134
00578130b 0x5781c0
00578134
00578134loc_578134:
00578134ldr x4, [sp+184]
00578138str x4, [sp+136]
0057813cldr x5, [sp+184]
00578140add x6, sp, 192
00578144ldr x5, [x6+3*x5]
00578148str x5, [sp+120]
0057814cmovz x5, 51
00578150madd x4, x4, x5, xzr
00578154str x4, [sp+144]
00578158add x4, sp, 55
0057815cldrsb x27, [x4]
00578160b 0x578164
00578164
00578164loc_578164:
00578164str x4, [sp+256]
00578168orr x2, xzr, 8
0057816cstr x2, [sp+264]
00578170str x2, [sp+272]
00578174ldr x4, [sp+120]
00578178ldr x5, [sp+144]
0057817csbfm x6, x5, 63, 63
00578180add x6, x5, x6, lsr #61
00578184and x6, x6, -8
00578188sub x5, x5, x6
0057818clslv x4, x4, x5
00578190subs xzr, x5, 64
00578194csel x3, x4, xzr, lo
00578198str x3, [sp+168]
0057819cldr x0, [sp+256]
005781a0mov x1, x2
005781a4bl crypto/internal/fips140deps/byteorder.LEPutUint64
005781a8ldur x4, [sp+55]
005781acstr x4, [sp+64]
005781b0str xzr, [sp+160]
005781b4orr x2, xzr, 8
005781b8str x2, [sp+152]
005781bcb 0x5781fc
005781c0
005781c0loc_5781c0:
005781c0ldr x3, [sp+304]
005781c4ldrsb x27, [x3]
005781c8b 0x5781cc
005781cc
005781ccloc_5781cc:
005781ccstr x3, [sp+256]
005781d0orr x2, xzr, 32
005781d4str x2, [sp+264]
005781d8str x2, [sp+272]
005781dcstr x3, [sp+232]
005781e0str x2, [sp+240]
005781e4str x2, [sp+248]
005781e8ldr x0, [sp+232]
005781ecmov x1, x2
005781f0ldp x29, x30, [sp-8]
005781f4add sp, sp, 288
005781f8ret x30
005781fc
005781fcloc_5781fc:
005781fcldr x4, [sp+152]
00578200ldr x5, [sp+160]
00578204subs xzr, x4, x5
00578208b.gt 0x578210
0057820cb 0x57829c
00578210
00578210loc_578210:
00578210ldr x4, [sp+160]
00578214str x4, [sp+128]
00578218ldr x4, [sp+160]
0057821cadd x5, sp, 64
00578220ldrb w4, [x5+x4]
00578224strb w4, [sp+63]
00578228ldr x4, [sp+144]
0057822csbfm x5, x4, 63, 63
00578230add x4, x4, x5, lsr #61
00578234ldr x5, [sp+128]
00578238add x0, x5, x4, asr #3
0057823cstr x0, [sp+112]
00578240subs xzr, x0, 32
00578244b.ge 0x57824c
00578248b 0x578250
0057824c
0057824cloc_57824c:
0057824cb 0x5782a0
00578250
00578250loc_578250:
00578250ldr x4, [sp+304]
00578254ldrsb x27, [x4]
00578258subs xzr, x0, 32
0057825cb.lo 0x578264
00578260b 0x5782bc
00578264
00578264loc_578264:
00578264ldrb w4, [x4+x0]
00578268ldr x5, [sp+304]
0057826cldrsb x27, [x5]
00578270ldrb w6, [sp+63]
00578274orr x4, x4, x6
00578278subs xzr, x0, 32
0057827cb.lo 0x578284
00578280b 0x5782b4
00578284
00578284loc_578284:
00578284strb w4, [x5+x0]
00578288b 0x57828c
0057828c
0057828cloc_57828c:
0057828cldr x4, [sp+160]
00578290add x4, x4, 1
00578294str x4, [sp+160]
00578298b 0x5781fc
0057829c
0057829cloc_57829c:
0057829cb 0x5782a0
005782a0
005782a0loc_5782a0:
005782a0b 0x5782a4
005782a4
005782a4loc_5782a4:
005782a4ldr x4, [sp+184]
005782a8add x4, x4, 1
005782acstr x4, [sp+184]
005782b0b 0x578120
005782b4
005782b4loc_5782b4:
005782b4orr x1, xzr, 32
005782b8bl runtime.panicIndex
005782bc
005782bcloc_5782bc:
005782bcorr x1, xzr, 32
005782c0bl runtime.panicIndex
005782c4hint
005782c8
005782c8loc_5782c8:
005782c8stp x0, x1, [sp+8]
005782ccmov x3, x30
005782d0bl runtime.morestack_noctxt.abi0
005782d4ldp x0, x1, [sp+8]
005782d8b 0x578060
005782dcudf 0
00578060
005782e0
005782e0crypto/internal/fips140/edwards25519/field.(*Element).Equal: ; void crypto/internal/fips140/edwards25519/field.(*Element).Equal(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * u)
005782e0ldr x16, [x28+16]
005782e4sub x17, sp, 48
005782e8subs xzr, x17, x16
005782ecb.ls 0x578384
005782f0str x30, [sp-176]!
005782f4stur x29, [sp-8]
005782f8sub x29, sp, 8
005782fcstr x0, [sp+184]
00578300str x1, [sp+192]
00578304str xzr, [sp+56]
00578308mov x0, x1
0057830cbl crypto/internal/fips140/edwards25519/field.(*Element).Bytes
00578310str x0, [sp+144]
00578314str x1, [sp+152]
00578318str x2, [sp+160]
0057831cldr x0, [sp+184]
00578320bl crypto/internal/fips140/edwards25519/field.(*Element).Bytes
00578324str x0, [sp+120]
00578328str x1, [sp+128]
0057832cstr x2, [sp+136]
00578330ldr x1, [sp+144]
00578334ldr x2, [sp+152]
00578338ldr x3, [sp+160]
0057833cstr x1, [sp+96]
00578340str x2, [sp+104]
00578344str x3, [sp+112]
00578348ldr x3, [sp+120]
0057834cldr x4, [sp+128]
00578350ldr x5, [sp+136]
00578354str x3, [sp+72]
00578358str x4, [sp+80]
0057835cstr x5, [sp+88]
00578360ldr x0, [sp+96]
00578364ldr x1, [sp+104]
00578368ldr x2, [sp+112]
0057836cbl crypto/internal/fips140/subtle.ConstantTimeCompare
00578370str x0, [sp+64]
00578374str x0, [sp+56]
00578378ldur x29, [sp-8]
0057837cldr x30, [sp], 176
00578380ret x30
00578384
00578384loc_578384:
00578384stp x0, x1, [sp+8]
00578388mov x3, x30
0057838cbl runtime.morestack_noctxt.abi0
00578390ldp x0, x1, [sp+8]
00578394b 0x5782e0
00578398udf 0
0057839cudf 0
005782e0
005782e0crypto/internal/fips140/edwards25519/field.(*Element).Equal: ; void crypto/internal/fips140/edwards25519/field.(*Element).Equal(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * u)
005782e0ldr x16, [x28+16]
005782e4sub x17, sp, 48
005782e8subs xzr, x17, x16
005782ecb.ls 0x578384
005782f0str x30, [sp-176]!
005782f4stur x29, [sp-8]
005782f8sub x29, sp, 8
005782fcstr x0, [sp+184]
00578300str x1, [sp+192]
00578304str xzr, [sp+56]
00578308mov x0, x1
0057830cbl crypto/internal/fips140/edwards25519/field.(*Element).Bytes
00578310str x0, [sp+144]
00578314str x1, [sp+152]
00578318str x2, [sp+160]
0057831cldr x0, [sp+184]
00578320bl crypto/internal/fips140/edwards25519/field.(*Element).Bytes
00578324str x0, [sp+120]
00578328str x1, [sp+128]
0057832cstr x2, [sp+136]
00578330ldr x1, [sp+144]
00578334ldr x2, [sp+152]
00578338ldr x3, [sp+160]
0057833cstr x1, [sp+96]
00578340str x2, [sp+104]
00578344str x3, [sp+112]
00578348ldr x3, [sp+120]
0057834cldr x4, [sp+128]
00578350ldr x5, [sp+136]
00578354str x3, [sp+72]
00578358str x4, [sp+80]
0057835cstr x5, [sp+88]
00578360ldr x0, [sp+96]
00578364ldr x1, [sp+104]
00578368ldr x2, [sp+112]
0057836cbl crypto/internal/fips140/subtle.ConstantTimeCompare
00578370str x0, [sp+64]
00578374str x0, [sp+56]
00578378ldur x29, [sp-8]
0057837cldr x30, [sp], 176
00578380ret x30
00578384
00578384loc_578384:
00578384stp x0, x1, [sp+8]
00578388mov x3, x30
0057838cbl runtime.morestack_noctxt.abi0
00578390ldp x0, x1, [sp+8]
00578394b 0x5782e0
00578398udf 0
0057839cudf 0
005782e0
005783a0
005783a0crypto/internal/fips140/edwards25519/field.mask64Bits: ; void crypto/internal/fips140/edwards25519/field.mask64Bits(int cond)
005783a0str x30, [sp-32]!
005783a4stur x29, [sp-8]
005783a8sub x29, sp, 8
005783acstr x0, [sp+40]
005783b0str xzr, [sp+16]
005783b4sub x0, xzr, x0
005783b8str x0, [sp+16]
005783bcadd x29, sp, 24
005783c0add sp, sp, 32
005783c4ret x30
005783c8udf 0
005783ccudf 0
005783a0
005783a0crypto/internal/fips140/edwards25519/field.mask64Bits: ; void crypto/internal/fips140/edwards25519/field.mask64Bits(int cond)
005783a0str x30, [sp-32]!
005783a4stur x29, [sp-8]
005783a8sub x29, sp, 8
005783acstr x0, [sp+40]
005783b0str xzr, [sp+16]
005783b4sub x0, xzr, x0
005783b8str x0, [sp+16]
005783bcadd x29, sp, 24
005783c0add sp, sp, 32
005783c4ret x30
005783c8udf 0
005783ccudf 0
005783a0
005783d0
005783d0crypto/internal/fips140/edwards25519/field.(*Element).Select: ; void crypto/internal/fips140/edwards25519/field.(*Element).Select(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * a, crypto/internal/fips140/edwards25519/field.Element * b, int cond)
005783d0ldr x16, [x28+16]
005783d4subs xzr, sp, x16
005783d8b.ls 0x57852c
005783dcstr x30, [sp-48]!
005783e0stur x29, [sp-8]
005783e4sub x29, sp, 8
005783e8str x0, [sp+56]
005783ecstr x1, [sp+64]
005783f0str x2, [sp+72]
005783f4str x3, [sp+80]
005783f8str xzr, [sp+32]
005783fcldr x0, [sp+80]
00578400bl crypto/internal/fips140/edwards25519/field.mask64Bits
00578404str x0, [sp+24]
00578408ldr x1, [sp+56]
0057840cldrsb x27, [x1]
00578410ldr x2, [sp+64]
00578414ldrsb x27, [x2]
00578418ldr x2, [x2]
0057841cand x2, x0, x2
00578420ldr x3, [sp+72]
00578424ldrsb x27, [x3]
00578428ldr x3, [x3]
0057842cbic x3, x3, x0
00578430orr x2, x2, x3
00578434str x2, [x1]
00578438ldr x1, [sp+56]
0057843cldrsb x27, [x1]
00578440ldr x2, [sp+24]
00578444ldr x3, [sp+64]
00578448ldrsb x27, [x3]
0057844cldr x3, [x3+8]
00578450and x2, x2, x3
00578454ldr x3, [sp+24]
00578458ldr x4, [sp+72]
0057845cldrsb x27, [x4]
00578460ldr x4, [x4+8]
00578464bic x3, x4, x3
00578468orr x2, x2, x3
0057846cstr x2, [x1+8]
00578470ldr x1, [sp+56]
00578474ldrsb x27, [x1]
00578478ldr x2, [sp+24]
0057847cldr x3, [sp+64]
00578480ldrsb x27, [x3]
00578484ldr x3, [x3+16]
00578488and x2, x2, x3
0057848cldr x3, [sp+24]
00578490ldr x4, [sp+72]
00578494ldrsb x27, [x4]
00578498ldr x4, [x4+16]
0057849cbic x3, x4, x3
005784a0orr x2, x2, x3
005784a4str x2, [x1+16]
005784a8ldr x1, [sp+56]
005784acldrsb x27, [x1]
005784b0ldr x2, [sp+24]
005784b4ldr x3, [sp+64]
005784b8ldrsb x27, [x3]
005784bcldr x3, [x3+24]
005784c0and x2, x2, x3
005784c4ldr x3, [sp+24]
005784c8ldr x4, [sp+72]
005784ccldrsb x27, [x4]
005784d0ldr x4, [x4+24]
005784d4bic x3, x4, x3
005784d8orr x2, x2, x3
005784dcstr x2, [x1+24]
005784e0ldr x1, [sp+56]
005784e4ldrsb x27, [x1]
005784e8ldr x2, [sp+24]
005784ecldr x3, [sp+64]
005784f0ldrsb x27, [x3]
005784f4ldr x3, [x3+32]
005784f8and x2, x2, x3
005784fcldr x3, [sp+24]
00578500ldr x4, [sp+72]
00578504ldrsb x27, [x4]
00578508ldr x4, [x4+32]
0057850cbic x3, x4, x3
00578510orr x2, x2, x3
00578514str x2, [x1+32]
00578518ldr x0, [sp+56]
0057851cstr x0, [sp+32]
00578520ldur x29, [sp-8]
00578524ldr x30, [sp], 48
00578528ret x30
0057852c
0057852cloc_57852c:
0057852cstp x0, x1, [sp+8]
00578530stp x2, x3, [sp+24]
00578534mov x3, x30
00578538bl runtime.morestack_noctxt.abi0
0057853cldp x0, x1, [sp+8]
00578540ldp x2, x3, [sp+24]
00578544b 0x5783d0
00578548udf 0
0057854cudf 0
005783d0
005783d0crypto/internal/fips140/edwards25519/field.(*Element).Select: ; void crypto/internal/fips140/edwards25519/field.(*Element).Select(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * a, crypto/internal/fips140/edwards25519/field.Element * b, int cond)
005783d0ldr x16, [x28+16]
005783d4subs xzr, sp, x16
005783d8b.ls 0x57852c
005783dcstr x30, [sp-48]!
005783e0stur x29, [sp-8]
005783e4sub x29, sp, 8
005783e8str x0, [sp+56]
005783ecstr x1, [sp+64]
005783f0str x2, [sp+72]
005783f4str x3, [sp+80]
005783f8str xzr, [sp+32]
005783fcldr x0, [sp+80]
00578400bl crypto/internal/fips140/edwards25519/field.mask64Bits
00578404str x0, [sp+24]
00578408ldr x1, [sp+56]
0057840cldrsb x27, [x1]
00578410ldr x2, [sp+64]
00578414ldrsb x27, [x2]
00578418ldr x2, [x2]
0057841cand x2, x0, x2
00578420ldr x3, [sp+72]
00578424ldrsb x27, [x3]
00578428ldr x3, [x3]
0057842cbic x3, x3, x0
00578430orr x2, x2, x3
00578434str x2, [x1]
00578438ldr x1, [sp+56]
0057843cldrsb x27, [x1]
00578440ldr x2, [sp+24]
00578444ldr x3, [sp+64]
00578448ldrsb x27, [x3]
0057844cldr x3, [x3+8]
00578450and x2, x2, x3
00578454ldr x3, [sp+24]
00578458ldr x4, [sp+72]
0057845cldrsb x27, [x4]
00578460ldr x4, [x4+8]
00578464bic x3, x4, x3
00578468orr x2, x2, x3
0057846cstr x2, [x1+8]
00578470ldr x1, [sp+56]
00578474ldrsb x27, [x1]
00578478ldr x2, [sp+24]
0057847cldr x3, [sp+64]
00578480ldrsb x27, [x3]
00578484ldr x3, [x3+16]
00578488and x2, x2, x3
0057848cldr x3, [sp+24]
00578490ldr x4, [sp+72]
00578494ldrsb x27, [x4]
00578498ldr x4, [x4+16]
0057849cbic x3, x4, x3
005784a0orr x2, x2, x3
005784a4str x2, [x1+16]
005784a8ldr x1, [sp+56]
005784acldrsb x27, [x1]
005784b0ldr x2, [sp+24]
005784b4ldr x3, [sp+64]
005784b8ldrsb x27, [x3]
005784bcldr x3, [x3+24]
005784c0and x2, x2, x3
005784c4ldr x3, [sp+24]
005784c8ldr x4, [sp+72]
005784ccldrsb x27, [x4]
005784d0ldr x4, [x4+24]
005784d4bic x3, x4, x3
005784d8orr x2, x2, x3
005784dcstr x2, [x1+24]
005784e0ldr x1, [sp+56]
005784e4ldrsb x27, [x1]
005784e8ldr x2, [sp+24]
005784ecldr x3, [sp+64]
005784f0ldrsb x27, [x3]
005784f4ldr x3, [x3+32]
005784f8and x2, x2, x3
005784fcldr x3, [sp+24]
00578500ldr x4, [sp+72]
00578504ldrsb x27, [x4]
00578508ldr x4, [x4+32]
0057850cbic x3, x4, x3
00578510orr x2, x2, x3
00578514str x2, [x1+32]
00578518ldr x0, [sp+56]
0057851cstr x0, [sp+32]
00578520ldur x29, [sp-8]
00578524ldr x30, [sp], 48
00578528ret x30
0057852c
0057852cloc_57852c:
0057852cstp x0, x1, [sp+8]
00578530stp x2, x3, [sp+24]
00578534mov x3, x30
00578538bl runtime.morestack_noctxt.abi0
0057853cldp x0, x1, [sp+8]
00578540ldp x2, x3, [sp+24]
00578544b 0x5783d0
00578548udf 0
0057854cudf 0
005783d0
00578550
00578550crypto/internal/fips140/edwards25519/field.(*Element).Swap: ; void crypto/internal/fips140/edwards25519/field.(*Element).Swap(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * u, int cond)
00578550ldr x16, [x28+16]
00578554subs xzr, sp, x16
00578558b.ls 0x57877c
0057855cstr x30, [sp-48]!
00578560stur x29, [sp-8]
00578564sub x29, sp, 8
00578568str x0, [sp+56]
0057856cstr x1, [sp+64]
00578570str x2, [sp+72]
00578574mov x0, x2
00578578bl crypto/internal/fips140/edwards25519/field.mask64Bits
0057857cstr x0, [sp+32]
00578580ldr x1, [sp+56]
00578584ldrsb x27, [x1]
00578588ldr x1, [x1]
0057858cldr x2, [sp+64]
00578590ldrsb x27, [x2]
00578594ldr x2, [x2]
00578598eor x1, x1, x2
0057859cand x1, x0, x1
005785a0str x1, [sp+24]
005785a4ldr x2, [sp+56]
005785a8ldrsb x27, [x2]
005785acldr x3, [sp+56]
005785b0ldrsb x27, [x3]
005785b4ldr x3, [x3]
005785b8eor x1, x3, x1
005785bcstr x1, [x2]
005785c0ldr x1, [sp+64]
005785c4ldrsb x27, [x1]
005785c8ldr x2, [sp+64]
005785ccldrsb x27, [x2]
005785d0ldr x2, [x2]
005785d4ldr x3, [sp+24]
005785d8eor x2, x2, x3
005785dcstr x2, [x1]
005785e0ldr x1, [sp+32]
005785e4ldr x2, [sp+56]
005785e8ldrsb x27, [x2]
005785ecldr x2, [x2+8]
005785f0ldr x3, [sp+64]
005785f4ldrsb x27, [x3]
005785f8ldr x3, [x3+8]
005785fceor x2, x2, x3
00578600and x1, x1, x2
00578604str x1, [sp+24]
00578608ldr x2, [sp+56]
0057860cldrsb x27, [x2]
00578610ldr x3, [sp+56]
00578614ldrsb x27, [x3]
00578618ldr x3, [x3+8]
0057861ceor x1, x3, x1
00578620str x1, [x2+8]
00578624ldr x1, [sp+64]
00578628ldrsb x27, [x1]
0057862cldr x2, [sp+64]
00578630ldrsb x27, [x2]
00578634ldr x2, [x2+8]
00578638ldr x3, [sp+24]
0057863ceor x2, x2, x3
00578640str x2, [x1+8]
00578644ldr x1, [sp+32]
00578648ldr x2, [sp+56]
0057864cldrsb x27, [x2]
00578650ldr x2, [x2+16]
00578654ldr x3, [sp+64]
00578658ldrsb x27, [x3]
0057865cldr x3, [x3+16]
00578660eor x2, x2, x3
00578664and x1, x1, x2
00578668str x1, [sp+24]
0057866cldr x2, [sp+56]
00578670ldrsb x27, [x2]
00578674ldr x3, [sp+56]
00578678ldrsb x27, [x3]
0057867cldr x3, [x3+16]
00578680eor x1, x3, x1
00578684str x1, [x2+16]
00578688ldr x1, [sp+64]
0057868cldrsb x27, [x1]
00578690ldr x2, [sp+64]
00578694ldrsb x27, [x2]
00578698ldr x2, [x2+16]
0057869cldr x3, [sp+24]
005786a0eor x2, x2, x3
005786a4str x2, [x1+16]
005786a8ldr x1, [sp+32]
005786acldr x2, [sp+56]
005786b0ldrsb x27, [x2]
005786b4ldr x2, [x2+24]
005786b8ldr x3, [sp+64]
005786bcldrsb x27, [x3]
005786c0ldr x3, [x3+24]
005786c4eor x2, x2, x3
005786c8and x1, x1, x2
005786ccstr x1, [sp+24]
005786d0ldr x2, [sp+56]
005786d4ldrsb x27, [x2]
005786d8ldr x3, [sp+56]
005786dcldrsb x27, [x3]
005786e0ldr x3, [x3+24]
005786e4eor x1, x3, x1
005786e8str x1, [x2+24]
005786ecldr x1, [sp+64]
005786f0ldrsb x27, [x1]
005786f4ldr x2, [sp+64]
005786f8ldrsb x27, [x2]
005786fcldr x2, [x2+24]
00578700ldr x3, [sp+24]
00578704eor x2, x2, x3
00578708str x2, [x1+24]
0057870cldr x1, [sp+32]
00578710ldr x2, [sp+56]
00578714ldrsb x27, [x2]
00578718ldr x2, [x2+32]
0057871cldr x3, [sp+64]
00578720ldrsb x27, [x3]
00578724ldr x3, [x3+32]
00578728eor x2, x2, x3
0057872cand x1, x1, x2
00578730str x1, [sp+24]
00578734ldr x2, [sp+56]
00578738ldrsb x27, [x2]
0057873cldr x3, [sp+56]
00578740ldrsb x27, [x3]
00578744ldr x3, [x3+32]
00578748eor x1, x3, x1
0057874cstr x1, [x2+32]
00578750ldr x1, [sp+64]
00578754ldrsb x27, [x1]
00578758ldr x2, [sp+64]
0057875cldrsb x27, [x2]
00578760ldr x2, [x2+32]
00578764ldr x3, [sp+24]
00578768eor x2, x2, x3
0057876cstr x2, [x1+32]
00578770ldur x29, [sp-8]
00578774ldr x30, [sp], 48
00578778ret x30
0057877c
0057877cloc_57877c:
0057877cstp x0, x1, [sp+8]
00578780str x2, [sp+24]
00578784mov x3, x30
00578788bl runtime.morestack_noctxt.abi0
0057878cldp x0, x1, [sp+8]
00578790ldr x2, [sp+24]
00578794b 0x578550
00578798udf 0
0057879cudf 0
00578550
00578550crypto/internal/fips140/edwards25519/field.(*Element).Swap: ; void crypto/internal/fips140/edwards25519/field.(*Element).Swap(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * u, int cond)
00578550ldr x16, [x28+16]
00578554subs xzr, sp, x16
00578558b.ls 0x57877c
0057855cstr x30, [sp-48]!
00578560stur x29, [sp-8]
00578564sub x29, sp, 8
00578568str x0, [sp+56]
0057856cstr x1, [sp+64]
00578570str x2, [sp+72]
00578574mov x0, x2
00578578bl crypto/internal/fips140/edwards25519/field.mask64Bits
0057857cstr x0, [sp+32]
00578580ldr x1, [sp+56]
00578584ldrsb x27, [x1]
00578588ldr x1, [x1]
0057858cldr x2, [sp+64]
00578590ldrsb x27, [x2]
00578594ldr x2, [x2]
00578598eor x1, x1, x2
0057859cand x1, x0, x1
005785a0str x1, [sp+24]
005785a4ldr x2, [sp+56]
005785a8ldrsb x27, [x2]
005785acldr x3, [sp+56]
005785b0ldrsb x27, [x3]
005785b4ldr x3, [x3]
005785b8eor x1, x3, x1
005785bcstr x1, [x2]
005785c0ldr x1, [sp+64]
005785c4ldrsb x27, [x1]
005785c8ldr x2, [sp+64]
005785ccldrsb x27, [x2]
005785d0ldr x2, [x2]
005785d4ldr x3, [sp+24]
005785d8eor x2, x2, x3
005785dcstr x2, [x1]
005785e0ldr x1, [sp+32]
005785e4ldr x2, [sp+56]
005785e8ldrsb x27, [x2]
005785ecldr x2, [x2+8]
005785f0ldr x3, [sp+64]
005785f4ldrsb x27, [x3]
005785f8ldr x3, [x3+8]
005785fceor x2, x2, x3
00578600and x1, x1, x2
00578604str x1, [sp+24]
00578608ldr x2, [sp+56]
0057860cldrsb x27, [x2]
00578610ldr x3, [sp+56]
00578614ldrsb x27, [x3]
00578618ldr x3, [x3+8]
0057861ceor x1, x3, x1
00578620str x1, [x2+8]
00578624ldr x1, [sp+64]
00578628ldrsb x27, [x1]
0057862cldr x2, [sp+64]
00578630ldrsb x27, [x2]
00578634ldr x2, [x2+8]
00578638ldr x3, [sp+24]
0057863ceor x2, x2, x3
00578640str x2, [x1+8]
00578644ldr x1, [sp+32]
00578648ldr x2, [sp+56]
0057864cldrsb x27, [x2]
00578650ldr x2, [x2+16]
00578654ldr x3, [sp+64]
00578658ldrsb x27, [x3]
0057865cldr x3, [x3+16]
00578660eor x2, x2, x3
00578664and x1, x1, x2
00578668str x1, [sp+24]
0057866cldr x2, [sp+56]
00578670ldrsb x27, [x2]
00578674ldr x3, [sp+56]
00578678ldrsb x27, [x3]
0057867cldr x3, [x3+16]
00578680eor x1, x3, x1
00578684str x1, [x2+16]
00578688ldr x1, [sp+64]
0057868cldrsb x27, [x1]
00578690ldr x2, [sp+64]
00578694ldrsb x27, [x2]
00578698ldr x2, [x2+16]
0057869cldr x3, [sp+24]
005786a0eor x2, x2, x3
005786a4str x2, [x1+16]
005786a8ldr x1, [sp+32]
005786acldr x2, [sp+56]
005786b0ldrsb x27, [x2]
005786b4ldr x2, [x2+24]
005786b8ldr x3, [sp+64]
005786bcldrsb x27, [x3]
005786c0ldr x3, [x3+24]
005786c4eor x2, x2, x3
005786c8and x1, x1, x2
005786ccstr x1, [sp+24]
005786d0ldr x2, [sp+56]
005786d4ldrsb x27, [x2]
005786d8ldr x3, [sp+56]
005786dcldrsb x27, [x3]
005786e0ldr x3, [x3+24]
005786e4eor x1, x3, x1
005786e8str x1, [x2+24]
005786ecldr x1, [sp+64]
005786f0ldrsb x27, [x1]
005786f4ldr x2, [sp+64]
005786f8ldrsb x27, [x2]
005786fcldr x2, [x2+24]
00578700ldr x3, [sp+24]
00578704eor x2, x2, x3
00578708str x2, [x1+24]
0057870cldr x1, [sp+32]
00578710ldr x2, [sp+56]
00578714ldrsb x27, [x2]
00578718ldr x2, [x2+32]
0057871cldr x3, [sp+64]
00578720ldrsb x27, [x3]
00578724ldr x3, [x3+32]
00578728eor x2, x2, x3
0057872cand x1, x1, x2
00578730str x1, [sp+24]
00578734ldr x2, [sp+56]
00578738ldrsb x27, [x2]
0057873cldr x3, [sp+56]
00578740ldrsb x27, [x3]
00578744ldr x3, [x3+32]
00578748eor x1, x3, x1
0057874cstr x1, [x2+32]
00578750ldr x1, [sp+64]
00578754ldrsb x27, [x1]
00578758ldr x2, [sp+64]
0057875cldrsb x27, [x2]
00578760ldr x2, [x2+32]
00578764ldr x3, [sp+24]
00578768eor x2, x2, x3
0057876cstr x2, [x1+32]
00578770ldur x29, [sp-8]
00578774ldr x30, [sp], 48
00578778ret x30
0057877c
0057877cloc_57877c:
0057877cstp x0, x1, [sp+8]
00578780str x2, [sp+24]
00578784mov x3, x30
00578788bl runtime.morestack_noctxt.abi0
0057878cldp x0, x1, [sp+8]
00578790ldr x2, [sp+24]
00578794b 0x578550
00578798udf 0
0057879cudf 0
00578550
005787a0
005787a0crypto/internal/fips140/edwards25519/field.(*Element).IsNegative: ; void crypto/internal/fips140/edwards25519/field.(*Element).IsNegative(crypto/internal/fips140/edwards25519/field.Element * v)
005787a0ldr x16, [x28+16]
005787a4subs xzr, sp, x16
005787a8b.ls 0x578800
005787acstr x30, [sp-64]!
005787b0stur x29, [sp-8]
005787b4sub x29, sp, 8
005787b8str x0, [sp+72]
005787bcstr xzr, [sp+24]
005787c0bl crypto/internal/fips140/edwards25519/field.(*Element).Bytes
005787c4str x0, [sp+32]
005787c8str x1, [sp+40]
005787ccstr x2, [sp+48]
005787d0subs xzr, x1, 0
005787d4b.hi 0x5787dc
005787d8b 0x5787f4
005787dc
005787dcloc_5787dc:
005787dcldrb w1, [x0]
005787e0and x0, x1, 1
005787e4str x0, [sp+24]
005787e8ldur x29, [sp-8]
005787ecldr x30, [sp], 64
005787f0ret x30
005787f4
005787f4loc_5787f4:
005787f4mov x0, xzr
005787f8bl runtime.panicIndex
005787fchint
00578800
00578800loc_578800:
00578800str x0, [sp+8]
00578804mov x3, x30
00578808bl runtime.morestack_noctxt.abi0
0057880cldr x0, [sp+8]
00578810b 0x5787a0
00578814udf 0
00578818udf 0
0057881cudf 0
005787a0
005787a0crypto/internal/fips140/edwards25519/field.(*Element).IsNegative: ; void crypto/internal/fips140/edwards25519/field.(*Element).IsNegative(crypto/internal/fips140/edwards25519/field.Element * v)
005787a0ldr x16, [x28+16]
005787a4subs xzr, sp, x16
005787a8b.ls 0x578800
005787acstr x30, [sp-64]!
005787b0stur x29, [sp-8]
005787b4sub x29, sp, 8
005787b8str x0, [sp+72]
005787bcstr xzr, [sp+24]
005787c0bl crypto/internal/fips140/edwards25519/field.(*Element).Bytes
005787c4str x0, [sp+32]
005787c8str x1, [sp+40]
005787ccstr x2, [sp+48]
005787d0subs xzr, x1, 0
005787d4b.hi 0x5787dc
005787d8b 0x5787f4
005787dc
005787dcloc_5787dc:
005787dcldrb w1, [x0]
005787e0and x0, x1, 1
005787e4str x0, [sp+24]
005787e8ldur x29, [sp-8]
005787ecldr x30, [sp], 64
005787f0ret x30
005787f4
005787f4loc_5787f4:
005787f4mov x0, xzr
005787f8bl runtime.panicIndex
005787fchint
00578800
00578800loc_578800:
00578800str x0, [sp+8]
00578804mov x3, x30
00578808bl runtime.morestack_noctxt.abi0
0057880cldr x0, [sp+8]
00578810b 0x5787a0
00578814udf 0
00578818udf 0
0057881cudf 0
005787a0
00578820
00578820crypto/internal/fips140/edwards25519/field.(*Element).Absolute: ; void crypto/internal/fips140/edwards25519/field.(*Element).Absolute(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * u)
00578820ldr x16, [x28+16]
00578824subs xzr, sp, x16
00578828b.ls 0x5788a4
0057882cstr x30, [sp-128]!
00578830stur x29, [sp-8]
00578834sub x29, sp, 8
00578838str x0, [sp+136]
0057883cstr x1, [sp+144]
00578840str xzr, [sp+88]
00578844stp xzr, xzr, [sp+40]
00578848stp xzr, xzr, [sp+56]
0057884cstr xzr, [sp+72]
00578850add x0, sp, 40
00578854str x0, [sp+112]
00578858ldr x1, [sp+144]
0057885cbl crypto/internal/fips140/edwards25519/field.(*Element).Negate
00578860str x0, [sp+104]
00578864ldr x0, [sp+144]
00578868bl crypto/internal/fips140/edwards25519/field.(*Element).IsNegative
0057886cstr x0, [sp+80]
00578870ldr x2, [sp+136]
00578874ldr x3, [sp+144]
00578878ldr x1, [sp+104]
0057887cmov x4, x0
00578880mov x0, x2
00578884mov x2, x3
00578888mov x3, x4
0057888cbl crypto/internal/fips140/edwards25519/field.(*Element).Select
00578890str x0, [sp+96]
00578894str x0, [sp+88]
00578898ldur x29, [sp-8]
0057889cldr x30, [sp], 128
005788a0ret x30
005788a4
005788a4loc_5788a4:
005788a4stp x0, x1, [sp+8]
005788a8mov x3, x30
005788acbl runtime.morestack_noctxt.abi0
005788b0ldp x0, x1, [sp+8]
005788b4b 0x578820
005788b8udf 0
005788bcudf 0
00578820
00578820crypto/internal/fips140/edwards25519/field.(*Element).Absolute: ; void crypto/internal/fips140/edwards25519/field.(*Element).Absolute(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * u)
00578820ldr x16, [x28+16]
00578824subs xzr, sp, x16
00578828b.ls 0x5788a4
0057882cstr x30, [sp-128]!
00578830stur x29, [sp-8]
00578834sub x29, sp, 8
00578838str x0, [sp+136]
0057883cstr x1, [sp+144]
00578840str xzr, [sp+88]
00578844stp xzr, xzr, [sp+40]
00578848stp xzr, xzr, [sp+56]
0057884cstr xzr, [sp+72]
00578850add x0, sp, 40
00578854str x0, [sp+112]
00578858ldr x1, [sp+144]
0057885cbl crypto/internal/fips140/edwards25519/field.(*Element).Negate
00578860str x0, [sp+104]
00578864ldr x0, [sp+144]
00578868bl crypto/internal/fips140/edwards25519/field.(*Element).IsNegative
0057886cstr x0, [sp+80]
00578870ldr x2, [sp+136]
00578874ldr x3, [sp+144]
00578878ldr x1, [sp+104]
0057887cmov x4, x0
00578880mov x0, x2
00578884mov x2, x3
00578888mov x3, x4
0057888cbl crypto/internal/fips140/edwards25519/field.(*Element).Select
00578890str x0, [sp+96]
00578894str x0, [sp+88]
00578898ldur x29, [sp-8]
0057889cldr x30, [sp], 128
005788a0ret x30
005788a4
005788a4loc_5788a4:
005788a4stp x0, x1, [sp+8]
005788a8mov x3, x30
005788acbl runtime.morestack_noctxt.abi0
005788b0ldp x0, x1, [sp+8]
005788b4b 0x578820
005788b8udf 0
005788bcudf 0
00578820
005788c0
005788c0crypto/internal/fips140/edwards25519/field.(*Element).Multiply: ; void crypto/internal/fips140/edwards25519/field.(*Element).Multiply(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x, crypto/internal/fips140/edwards25519/field.Element * y)
005788c0ldr x16, [x28+16]
005788c4subs xzr, sp, x16
005788c8b.ls 0x57890c
005788ccstr x30, [sp-48]!
005788d0stur x29, [sp-8]
005788d4sub x29, sp, 8
005788d8str x0, [sp+56]
005788dcstr x1, [sp+64]
005788e0str x2, [sp+72]
005788e4str xzr, [sp+32]
005788e8ldr x1, [sp+64]
005788ecldr x2, [sp+72]
005788f0ldr x0, [sp+56]
005788f4bl crypto/internal/fips140/edwards25519/field.feMul
005788f8ldr x0, [sp+56]
005788fcstr x0, [sp+32]
00578900ldur x29, [sp-8]
00578904ldr x30, [sp], 48
00578908ret x30
0057890c
0057890cloc_57890c:
0057890cstp x0, x1, [sp+8]
00578910str x2, [sp+24]
00578914mov x3, x30
00578918bl runtime.morestack_noctxt.abi0
0057891cldp x0, x1, [sp+8]
00578920ldr x2, [sp+24]
00578924b 0x5788c0
00578928udf 0
0057892cudf 0
005788c0
005788c0crypto/internal/fips140/edwards25519/field.(*Element).Multiply: ; void crypto/internal/fips140/edwards25519/field.(*Element).Multiply(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x, crypto/internal/fips140/edwards25519/field.Element * y)
005788c0ldr x16, [x28+16]
005788c4subs xzr, sp, x16
005788c8b.ls 0x57890c
005788ccstr x30, [sp-48]!
005788d0stur x29, [sp-8]
005788d4sub x29, sp, 8
005788d8str x0, [sp+56]
005788dcstr x1, [sp+64]
005788e0str x2, [sp+72]
005788e4str xzr, [sp+32]
005788e8ldr x1, [sp+64]
005788ecldr x2, [sp+72]
005788f0ldr x0, [sp+56]
005788f4bl crypto/internal/fips140/edwards25519/field.feMul
005788f8ldr x0, [sp+56]
005788fcstr x0, [sp+32]
00578900ldur x29, [sp-8]
00578904ldr x30, [sp], 48
00578908ret x30
0057890c
0057890cloc_57890c:
0057890cstp x0, x1, [sp+8]
00578910str x2, [sp+24]
00578914mov x3, x30
00578918bl runtime.morestack_noctxt.abi0
0057891cldp x0, x1, [sp+8]
00578920ldr x2, [sp+24]
00578924b 0x5788c0
00578928udf 0
0057892cudf 0
005788c0
00578930
00578930crypto/internal/fips140/edwards25519/field.(*Element).Square: ; void crypto/internal/fips140/edwards25519/field.(*Element).Square(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x)
00578930ldr x16, [x28+16]
00578934subs xzr, sp, x16
00578938b.ls 0x578974
0057893cstr x30, [sp-48]!
00578940stur x29, [sp-8]
00578944sub x29, sp, 8
00578948str x0, [sp+56]
0057894cstr x1, [sp+64]
00578950str xzr, [sp+32]
00578954ldr x1, [sp+64]
00578958ldr x0, [sp+56]
0057895cbl crypto/internal/fips140/edwards25519/field.feSquare
00578960ldr x0, [sp+56]
00578964str x0, [sp+32]
00578968ldur x29, [sp-8]
0057896cldr x30, [sp], 48
00578970ret x30
00578974
00578974loc_578974:
00578974stp x0, x1, [sp+8]
00578978mov x3, x30
0057897cbl runtime.morestack_noctxt.abi0
00578980ldp x0, x1, [sp+8]
00578984b 0x578930
00578988udf 0
0057898cudf 0
00578930
00578930crypto/internal/fips140/edwards25519/field.(*Element).Square: ; void crypto/internal/fips140/edwards25519/field.(*Element).Square(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x)
00578930ldr x16, [x28+16]
00578934subs xzr, sp, x16
00578938b.ls 0x578974
0057893cstr x30, [sp-48]!
00578940stur x29, [sp-8]
00578944sub x29, sp, 8
00578948str x0, [sp+56]
0057894cstr x1, [sp+64]
00578950str xzr, [sp+32]
00578954ldr x1, [sp+64]
00578958ldr x0, [sp+56]
0057895cbl crypto/internal/fips140/edwards25519/field.feSquare
00578960ldr x0, [sp+56]
00578964str x0, [sp+32]
00578968ldur x29, [sp-8]
0057896cldr x30, [sp], 48
00578970ret x30
00578974
00578974loc_578974:
00578974stp x0, x1, [sp+8]
00578978mov x3, x30
0057897cbl runtime.morestack_noctxt.abi0
00578980ldp x0, x1, [sp+8]
00578984b 0x578930
00578988udf 0
0057898cudf 0
00578930
00578990
00578990crypto/internal/fips140/edwards25519/field.(*Element).Mult32: ; void crypto/internal/fips140/edwards25519/field.(*Element).Mult32(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x, uint32 y)
00578990ldr x16, [x28+16]
00578994sub x17, sp, 128
00578998subs xzr, x17, x16
0057899cb.ls 0x578b3c
005789a0sub x20, sp, 256
005789a4stp x29, x30, [x20-8]
005789a8add sp, x20, 0
005789acsub x29, sp, 8
005789b0str x0, [sp+264]
005789b4str x1, [sp+272]
005789b8str w2, [sp+280]
005789bcstr xzr, [sp+240]
005789c0ldr x2, [sp+272]
005789c4ldrsb x27, [x2]
005789c8ldr x0, [x2]
005789ccstr x0, [sp+152]
005789d0ldr w1, [sp+280]
005789d4bl crypto/internal/fips140/edwards25519/field.mul51
005789d8str x0, [sp+168]
005789dcstr x1, [sp+160]
005789e0str x0, [sp+112]
005789e4str x1, [sp+104]
005789e8str x0, [sp+88]
005789ecstr x1, [sp+96]
005789f0ldr x2, [sp+272]
005789f4ldrsb x27, [x2]
005789f8ldr x0, [x2+8]
005789fcstr x0, [sp+144]
00578a00ldr w1, [sp+280]
00578a04bl crypto/internal/fips140/edwards25519/field.mul51
00578a08str x0, [sp+160]
00578a0cstr x1, [sp+168]
00578a10str x0, [sp+232]
00578a14str x1, [sp+224]
00578a18str x0, [sp+72]
00578a1cstr x1, [sp+80]
00578a20ldr x2, [sp+272]
00578a24ldrsb x27, [x2]
00578a28ldr x0, [x2+16]
00578a2cstr x0, [sp+136]
00578a30ldr w1, [sp+280]
00578a34bl crypto/internal/fips140/edwards25519/field.mul51
00578a38str x0, [sp+168]
00578a3cstr x1, [sp+160]
00578a40str x0, [sp+216]
00578a44str x1, [sp+208]
00578a48str x0, [sp+56]
00578a4cstr x1, [sp+64]
00578a50ldr x2, [sp+272]
00578a54ldrsb x27, [x2]
00578a58ldr x0, [x2+24]
00578a5cstr x0, [sp+128]
00578a60ldr w1, [sp+280]
00578a64bl crypto/internal/fips140/edwards25519/field.mul51
00578a68str x0, [sp+160]
00578a6cstr x1, [sp+168]
00578a70str x0, [sp+200]
00578a74str x1, [sp+192]
00578a78str x0, [sp+40]
00578a7cstr x1, [sp+48]
00578a80ldr x2, [sp+272]
00578a84ldrsb x27, [x2]
00578a88ldr x0, [x2+32]
00578a8cstr x0, [sp+120]
00578a90ldr w1, [sp+280]
00578a94bl crypto/internal/fips140/edwards25519/field.mul51
00578a98str x0, [sp+168]
00578a9cstr x1, [sp+160]
00578aa0str x0, [sp+184]
00578aa4str x1, [sp+176]
00578aa8str x0, [sp+24]
00578aacstr x1, [sp+32]
00578ab0ldr x2, [sp+264]
00578ab4ldrsb x27, [x2]
00578ab8ldr x3, [sp+88]
00578abcmovz x4, 19
00578ac0madd x3, x1, x4, x3
00578ac4str x3, [x2]
00578ac8ldr x2, [sp+264]
00578accldrsb x27, [x2]
00578ad0ldr x3, [sp+96]
00578ad4ldr x4, [sp+72]
00578ad8add x3, x4, x3
00578adcstr x3, [x2+8]
00578ae0ldr x2, [sp+264]
00578ae4ldrsb x27, [x2]
00578ae8ldr x3, [sp+80]
00578aecldr x4, [sp+56]
00578af0add x3, x4, x3
00578af4str x3, [x2+16]
00578af8ldr x2, [sp+264]
00578afcldrsb x27, [x2]
00578b00ldr x3, [sp+64]
00578b04ldr x4, [sp+40]
00578b08add x3, x4, x3
00578b0cstr x3, [x2+24]
00578b10ldr x2, [sp+264]
00578b14ldrsb x27, [x2]
00578b18ldr x3, [sp+48]
00578b1cldr x4, [sp+24]
00578b20add x3, x4, x3
00578b24str x3, [x2+32]
00578b28ldr x0, [sp+264]
00578b2cstr x0, [sp+240]
00578b30ldp x29, x30, [sp-8]
00578b34add sp, sp, 256
00578b38ret x30
00578b3c
00578b3cloc_578b3c:
00578b3cstp x0, x1, [sp+8]
00578b40str w2, [sp+24]
00578b44mov x3, x30
00578b48bl runtime.morestack_noctxt.abi0
00578b4cldp x0, x1, [sp+8]
00578b50ldr w2, [sp+24]
00578b54b 0x578990
00578b58udf 0
00578b5cudf 0
00578990
00578990crypto/internal/fips140/edwards25519/field.(*Element).Mult32: ; void crypto/internal/fips140/edwards25519/field.(*Element).Mult32(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x, uint32 y)
00578990ldr x16, [x28+16]
00578994sub x17, sp, 128
00578998subs xzr, x17, x16
0057899cb.ls 0x578b3c
005789a0sub x20, sp, 256
005789a4stp x29, x30, [x20-8]
005789a8add sp, x20, 0
005789acsub x29, sp, 8
005789b0str x0, [sp+264]
005789b4str x1, [sp+272]
005789b8str w2, [sp+280]
005789bcstr xzr, [sp+240]
005789c0ldr x2, [sp+272]
005789c4ldrsb x27, [x2]
005789c8ldr x0, [x2]
005789ccstr x0, [sp+152]
005789d0ldr w1, [sp+280]
005789d4bl crypto/internal/fips140/edwards25519/field.mul51
005789d8str x0, [sp+168]
005789dcstr x1, [sp+160]
005789e0str x0, [sp+112]
005789e4str x1, [sp+104]
005789e8str x0, [sp+88]
005789ecstr x1, [sp+96]
005789f0ldr x2, [sp+272]
005789f4ldrsb x27, [x2]
005789f8ldr x0, [x2+8]
005789fcstr x0, [sp+144]
00578a00ldr w1, [sp+280]
00578a04bl crypto/internal/fips140/edwards25519/field.mul51
00578a08str x0, [sp+160]
00578a0cstr x1, [sp+168]
00578a10str x0, [sp+232]
00578a14str x1, [sp+224]
00578a18str x0, [sp+72]
00578a1cstr x1, [sp+80]
00578a20ldr x2, [sp+272]
00578a24ldrsb x27, [x2]
00578a28ldr x0, [x2+16]
00578a2cstr x0, [sp+136]
00578a30ldr w1, [sp+280]
00578a34bl crypto/internal/fips140/edwards25519/field.mul51
00578a38str x0, [sp+168]
00578a3cstr x1, [sp+160]
00578a40str x0, [sp+216]
00578a44str x1, [sp+208]
00578a48str x0, [sp+56]
00578a4cstr x1, [sp+64]
00578a50ldr x2, [sp+272]
00578a54ldrsb x27, [x2]
00578a58ldr x0, [x2+24]
00578a5cstr x0, [sp+128]
00578a60ldr w1, [sp+280]
00578a64bl crypto/internal/fips140/edwards25519/field.mul51
00578a68str x0, [sp+160]
00578a6cstr x1, [sp+168]
00578a70str x0, [sp+200]
00578a74str x1, [sp+192]
00578a78str x0, [sp+40]
00578a7cstr x1, [sp+48]
00578a80ldr x2, [sp+272]
00578a84ldrsb x27, [x2]
00578a88ldr x0, [x2+32]
00578a8cstr x0, [sp+120]
00578a90ldr w1, [sp+280]
00578a94bl crypto/internal/fips140/edwards25519/field.mul51
00578a98str x0, [sp+168]
00578a9cstr x1, [sp+160]
00578aa0str x0, [sp+184]
00578aa4str x1, [sp+176]
00578aa8str x0, [sp+24]
00578aacstr x1, [sp+32]
00578ab0ldr x2, [sp+264]
00578ab4ldrsb x27, [x2]
00578ab8ldr x3, [sp+88]
00578abcmovz x4, 19
00578ac0madd x3, x1, x4, x3
00578ac4str x3, [x2]
00578ac8ldr x2, [sp+264]
00578accldrsb x27, [x2]
00578ad0ldr x3, [sp+96]
00578ad4ldr x4, [sp+72]
00578ad8add x3, x4, x3
00578adcstr x3, [x2+8]
00578ae0ldr x2, [sp+264]
00578ae4ldrsb x27, [x2]
00578ae8ldr x3, [sp+80]
00578aecldr x4, [sp+56]
00578af0add x3, x4, x3
00578af4str x3, [x2+16]
00578af8ldr x2, [sp+264]
00578afcldrsb x27, [x2]
00578b00ldr x3, [sp+64]
00578b04ldr x4, [sp+40]
00578b08add x3, x4, x3
00578b0cstr x3, [x2+24]
00578b10ldr x2, [sp+264]
00578b14ldrsb x27, [x2]
00578b18ldr x3, [sp+48]
00578b1cldr x4, [sp+24]
00578b20add x3, x4, x3
00578b24str x3, [x2+32]
00578b28ldr x0, [sp+264]
00578b2cstr x0, [sp+240]
00578b30ldp x29, x30, [sp-8]
00578b34add sp, sp, 256
00578b38ret x30
00578b3c
00578b3cloc_578b3c:
00578b3cstp x0, x1, [sp+8]
00578b40str w2, [sp+24]
00578b44mov x3, x30
00578b48bl runtime.morestack_noctxt.abi0
00578b4cldp x0, x1, [sp+8]
00578b50ldr w2, [sp+24]
00578b54b 0x578990
00578b58udf 0
00578b5cudf 0
00578990
00578b60
00578b60crypto/internal/fips140/edwards25519/field.mul51: ; void crypto/internal/fips140/edwards25519/field.mul51(uint64 a, uint32 b)
00578b60str x30, [sp-80]!
00578b64stur x29, [sp-8]
00578b68sub x29, sp, 8
00578b6cstr x0, [sp+88]
00578b70str w1, [sp+96]
00578b74str xzr, [sp+24]
00578b78str xzr, [sp+32]
00578b7cldr w2, [sp+96]
00578b80madd x3, x0, x2, xzr
00578b84umulh x2, x0, x2
00578b88str x2, [sp+48]
00578b8cstr x3, [sp+40]
00578b90str x2, [sp+64]
00578b94str x3, [sp+56]
00578b98str x2, [sp+16]
00578b9cstr x3, [sp+8]
00578ba0and x0, x3, 0x7ffffffffffff
00578ba4str x0, [sp+24]
00578ba8extr x1, x2, x3, 51
00578bacstr x1, [sp+32]
00578bb0add x29, sp, 72
00578bb4add sp, sp, 80
00578bb8ret x30
00578bbcudf 0
00578b60
00578b60crypto/internal/fips140/edwards25519/field.mul51: ; void crypto/internal/fips140/edwards25519/field.mul51(uint64 a, uint32 b)
00578b60str x30, [sp-80]!
00578b64stur x29, [sp-8]
00578b68sub x29, sp, 8
00578b6cstr x0, [sp+88]
00578b70str w1, [sp+96]
00578b74str xzr, [sp+24]
00578b78str xzr, [sp+32]
00578b7cldr w2, [sp+96]
00578b80madd x3, x0, x2, xzr
00578b84umulh x2, x0, x2
00578b88str x2, [sp+48]
00578b8cstr x3, [sp+40]
00578b90str x2, [sp+64]
00578b94str x3, [sp+56]
00578b98str x2, [sp+16]
00578b9cstr x3, [sp+8]
00578ba0and x0, x3, 0x7ffffffffffff
00578ba4str x0, [sp+24]
00578ba8extr x1, x2, x3, 51
00578bacstr x1, [sp+32]
00578bb0add x29, sp, 72
00578bb4add sp, sp, 80
00578bb8ret x30
00578bbcudf 0
00578b60
00578bc0
00578bc0crypto/internal/fips140/edwards25519/field.(*Element).Pow22523: ; void crypto/internal/fips140/edwards25519/field.(*Element).Pow22523(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x)
00578bc0ldr x16, [x28+16]
00578bc4sub x17, sp, 112
00578bc8subs xzr, x17, x16
00578bccb.ls 0x578f28
00578bd0str x30, [sp-240]!
00578bd4stur x29, [sp-8]
00578bd8sub x29, sp, 8
00578bdcstr x0, [sp+248]
00578be0str x1, [sp+256]
00578be4str xzr, [sp+216]
00578be8stp xzr, xzr, [sp+120]
00578becstp xzr, xzr, [sp+136]
00578bf0str xzr, [sp+152]
00578bf4stp xzr, xzr, [sp+80]
00578bf8stp xzr, xzr, [sp+96]
00578bfcstr xzr, [sp+112]
00578c00stp xzr, xzr, [sp+40]
00578c04stp xzr, xzr, [sp+56]
00578c08str xzr, [sp+72]
00578c0cldr x1, [sp+256]
00578c10add x0, sp, 120
00578c14bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578c18add x0, sp, 80
00578c1cadd x1, sp, 120
00578c20bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578c24add x0, sp, 80
00578c28add x1, sp, 80
00578c2cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578c30ldr x1, [sp+256]
00578c34add x0, sp, 80
00578c38add x2, sp, 80
00578c3cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578c40add x0, sp, 120
00578c44add x1, sp, 120
00578c48add x2, sp, 80
00578c4cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578c50add x0, sp, 120
00578c54add x1, sp, 120
00578c58bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578c5cadd x0, sp, 120
00578c60add x1, sp, 80
00578c64add x2, sp, 120
00578c68bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578c6cadd x0, sp, 80
00578c70add x1, sp, 120
00578c74bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578c78orr x2, xzr, 1
00578c7cstr x2, [sp+208]
00578c80b 0x578c84
00578c84
00578c84loc_578c84:
00578c84ldr x3, [sp+208]
00578c88subs xzr, x3, 5
00578c8cb.lt 0x578c94
00578c90b 0x578cb8
00578c94
00578c94loc_578c94:
00578c94add x0, sp, 80
00578c98add x1, sp, 80
00578c9cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578ca0b 0x578ca4
00578ca4
00578ca4loc_578ca4:
00578ca4ldr x3, [sp+208]
00578ca8add x3, x3, 1
00578cacstr x3, [sp+208]
00578cb0orr x2, xzr, 1
00578cb4b 0x578c84
00578cb8
00578cb8loc_578cb8:
00578cb8add x0, sp, 120
00578cbcadd x1, sp, 80
00578cc0add x2, sp, 120
00578cc4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578cc8add x0, sp, 80
00578cccadd x1, sp, 120
00578cd0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578cd4orr x3, xzr, 1
00578cd8str x3, [sp+200]
00578cdcb 0x578ce0
00578ce0
00578ce0loc_578ce0:
00578ce0ldr x4, [sp+200]
00578ce4subs xzr, x4, 10
00578ce8b.lt 0x578cf0
00578cecb 0x578d14
00578cf0
00578cf0loc_578cf0:
00578cf0add x0, sp, 80
00578cf4add x1, sp, 80
00578cf8bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578cfcb 0x578d00
00578d00
00578d00loc_578d00:
00578d00ldr x4, [sp+200]
00578d04add x4, x4, 1
00578d08str x4, [sp+200]
00578d0corr x3, xzr, 1
00578d10b 0x578ce0
00578d14
00578d14loc_578d14:
00578d14add x0, sp, 80
00578d18add x1, sp, 80
00578d1cadd x2, sp, 120
00578d20bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578d24add x0, sp, 40
00578d28add x1, sp, 80
00578d2cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578d30orr x3, xzr, 1
00578d34str x3, [sp+192]
00578d38b 0x578d3c
00578d3c
00578d3cloc_578d3c:
00578d3cldr x4, [sp+192]
00578d40subs xzr, x4, 20
00578d44b.lt 0x578d4c
00578d48b 0x578d70
00578d4c
00578d4cloc_578d4c:
00578d4cadd x0, sp, 40
00578d50add x1, sp, 40
00578d54bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578d58b 0x578d5c
00578d5c
00578d5cloc_578d5c:
00578d5cldr x4, [sp+192]
00578d60add x4, x4, 1
00578d64str x4, [sp+192]
00578d68orr x3, xzr, 1
00578d6cb 0x578d3c
00578d70
00578d70loc_578d70:
00578d70add x0, sp, 80
00578d74add x1, sp, 40
00578d78add x2, sp, 80
00578d7cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578d80add x0, sp, 80
00578d84add x1, sp, 80
00578d88bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578d8corr x3, xzr, 1
00578d90str x3, [sp+184]
00578d94b 0x578d98
00578d98
00578d98loc_578d98:
00578d98ldr x4, [sp+184]
00578d9csubs xzr, x4, 10
00578da0b.lt 0x578da8
00578da4b 0x578dcc
00578da8
00578da8loc_578da8:
00578da8add x0, sp, 80
00578dacadd x1, sp, 80
00578db0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578db4b 0x578db8
00578db8
00578db8loc_578db8:
00578db8ldr x4, [sp+184]
00578dbcadd x4, x4, 1
00578dc0str x4, [sp+184]
00578dc4orr x3, xzr, 1
00578dc8b 0x578d98
00578dcc
00578dccloc_578dcc:
00578dccadd x0, sp, 120
00578dd0add x1, sp, 80
00578dd4add x2, sp, 120
00578dd8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578ddcadd x0, sp, 80
00578de0add x1, sp, 120
00578de4bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578de8orr x3, xzr, 1
00578decstr x3, [sp+176]
00578df0b 0x578df4
00578df4
00578df4loc_578df4:
00578df4ldr x4, [sp+176]
00578df8subs xzr, x4, 50
00578dfcb.lt 0x578e04
00578e00b 0x578e28
00578e04
00578e04loc_578e04:
00578e04add x0, sp, 80
00578e08add x1, sp, 80
00578e0cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578e10b 0x578e14
00578e14
00578e14loc_578e14:
00578e14ldr x4, [sp+176]
00578e18add x4, x4, 1
00578e1cstr x4, [sp+176]
00578e20orr x3, xzr, 1
00578e24b 0x578df4
00578e28
00578e28loc_578e28:
00578e28add x0, sp, 80
00578e2cadd x1, sp, 80
00578e30add x2, sp, 120
00578e34bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578e38add x0, sp, 40
00578e3cadd x1, sp, 80
00578e40bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578e44orr x3, xzr, 1
00578e48str x3, [sp+168]
00578e4cb 0x578e50
00578e50
00578e50loc_578e50:
00578e50ldr x4, [sp+168]
00578e54subs xzr, x4, 100
00578e58b.lt 0x578e60
00578e5cb 0x578e84
00578e60
00578e60loc_578e60:
00578e60add x0, sp, 40
00578e64add x1, sp, 40
00578e68bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578e6cb 0x578e70
00578e70
00578e70loc_578e70:
00578e70ldr x4, [sp+168]
00578e74add x4, x4, 1
00578e78str x4, [sp+168]
00578e7corr x3, xzr, 1
00578e80b 0x578e50
00578e84
00578e84loc_578e84:
00578e84add x0, sp, 80
00578e88add x1, sp, 40
00578e8cadd x2, sp, 80
00578e90bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578e94add x0, sp, 80
00578e98add x1, sp, 80
00578e9cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578ea0orr x3, xzr, 1
00578ea4str x3, [sp+160]
00578ea8b 0x578eac
00578eac
00578eacloc_578eac:
00578eacldr x3, [sp+160]
00578eb0subs xzr, x3, 50
00578eb4b.lt 0x578ebc
00578eb8b 0x578edc
00578ebc
00578ebcloc_578ebc:
00578ebcadd x0, sp, 80
00578ec0add x1, sp, 80
00578ec4bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578ec8b 0x578ecc
00578ecc
00578eccloc_578ecc:
00578eccldr x3, [sp+160]
00578ed0add x3, x3, 1
00578ed4str x3, [sp+160]
00578ed8b 0x578eac
00578edc
00578edcloc_578edc:
00578edcadd x0, sp, 120
00578ee0add x1, sp, 80
00578ee4add x2, sp, 120
00578ee8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578eecadd x0, sp, 120
00578ef0add x1, sp, 120
00578ef4bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578ef8add x0, sp, 120
00578efcadd x1, sp, 120
00578f00bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578f04ldr x2, [sp+256]
00578f08ldr x0, [sp+248]
00578f0cadd x1, sp, 120
00578f10bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578f14str x0, [sp+224]
00578f18str x0, [sp+216]
00578f1cldur x29, [sp-8]
00578f20ldr x30, [sp], 240
00578f24ret x30
00578f28
00578f28loc_578f28:
00578f28stp x0, x1, [sp+8]
00578f2cmov x3, x30
00578f30bl runtime.morestack_noctxt.abi0
00578f34ldp x0, x1, [sp+8]
00578f38b 0x578bc0
00578f3cudf 0
00578bc0
00578bc0crypto/internal/fips140/edwards25519/field.(*Element).Pow22523: ; void crypto/internal/fips140/edwards25519/field.(*Element).Pow22523(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x)
00578bc0ldr x16, [x28+16]
00578bc4sub x17, sp, 112
00578bc8subs xzr, x17, x16
00578bccb.ls 0x578f28
00578bd0str x30, [sp-240]!
00578bd4stur x29, [sp-8]
00578bd8sub x29, sp, 8
00578bdcstr x0, [sp+248]
00578be0str x1, [sp+256]
00578be4str xzr, [sp+216]
00578be8stp xzr, xzr, [sp+120]
00578becstp xzr, xzr, [sp+136]
00578bf0str xzr, [sp+152]
00578bf4stp xzr, xzr, [sp+80]
00578bf8stp xzr, xzr, [sp+96]
00578bfcstr xzr, [sp+112]
00578c00stp xzr, xzr, [sp+40]
00578c04stp xzr, xzr, [sp+56]
00578c08str xzr, [sp+72]
00578c0cldr x1, [sp+256]
00578c10add x0, sp, 120
00578c14bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578c18add x0, sp, 80
00578c1cadd x1, sp, 120
00578c20bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578c24add x0, sp, 80
00578c28add x1, sp, 80
00578c2cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578c30ldr x1, [sp+256]
00578c34add x0, sp, 80
00578c38add x2, sp, 80
00578c3cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578c40add x0, sp, 120
00578c44add x1, sp, 120
00578c48add x2, sp, 80
00578c4cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578c50add x0, sp, 120
00578c54add x1, sp, 120
00578c58bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578c5cadd x0, sp, 120
00578c60add x1, sp, 80
00578c64add x2, sp, 120
00578c68bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578c6cadd x0, sp, 80
00578c70add x1, sp, 120
00578c74bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578c78orr x2, xzr, 1
00578c7cstr x2, [sp+208]
00578c80b 0x578c84
00578c84
00578c84loc_578c84:
00578c84ldr x3, [sp+208]
00578c88subs xzr, x3, 5
00578c8cb.lt 0x578c94
00578c90b 0x578cb8
00578c94
00578c94loc_578c94:
00578c94add x0, sp, 80
00578c98add x1, sp, 80
00578c9cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578ca0b 0x578ca4
00578ca4
00578ca4loc_578ca4:
00578ca4ldr x3, [sp+208]
00578ca8add x3, x3, 1
00578cacstr x3, [sp+208]
00578cb0orr x2, xzr, 1
00578cb4b 0x578c84
00578cb8
00578cb8loc_578cb8:
00578cb8add x0, sp, 120
00578cbcadd x1, sp, 80
00578cc0add x2, sp, 120
00578cc4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578cc8add x0, sp, 80
00578cccadd x1, sp, 120
00578cd0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578cd4orr x3, xzr, 1
00578cd8str x3, [sp+200]
00578cdcb 0x578ce0
00578ce0
00578ce0loc_578ce0:
00578ce0ldr x4, [sp+200]
00578ce4subs xzr, x4, 10
00578ce8b.lt 0x578cf0
00578cecb 0x578d14
00578cf0
00578cf0loc_578cf0:
00578cf0add x0, sp, 80
00578cf4add x1, sp, 80
00578cf8bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578cfcb 0x578d00
00578d00
00578d00loc_578d00:
00578d00ldr x4, [sp+200]
00578d04add x4, x4, 1
00578d08str x4, [sp+200]
00578d0corr x3, xzr, 1
00578d10b 0x578ce0
00578d14
00578d14loc_578d14:
00578d14add x0, sp, 80
00578d18add x1, sp, 80
00578d1cadd x2, sp, 120
00578d20bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578d24add x0, sp, 40
00578d28add x1, sp, 80
00578d2cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578d30orr x3, xzr, 1
00578d34str x3, [sp+192]
00578d38b 0x578d3c
00578d3c
00578d3cloc_578d3c:
00578d3cldr x4, [sp+192]
00578d40subs xzr, x4, 20
00578d44b.lt 0x578d4c
00578d48b 0x578d70
00578d4c
00578d4cloc_578d4c:
00578d4cadd x0, sp, 40
00578d50add x1, sp, 40
00578d54bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578d58b 0x578d5c
00578d5c
00578d5cloc_578d5c:
00578d5cldr x4, [sp+192]
00578d60add x4, x4, 1
00578d64str x4, [sp+192]
00578d68orr x3, xzr, 1
00578d6cb 0x578d3c
00578d70
00578d70loc_578d70:
00578d70add x0, sp, 80
00578d74add x1, sp, 40
00578d78add x2, sp, 80
00578d7cbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578d80add x0, sp, 80
00578d84add x1, sp, 80
00578d88bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578d8corr x3, xzr, 1
00578d90str x3, [sp+184]
00578d94b 0x578d98
00578d98
00578d98loc_578d98:
00578d98ldr x4, [sp+184]
00578d9csubs xzr, x4, 10
00578da0b.lt 0x578da8
00578da4b 0x578dcc
00578da8
00578da8loc_578da8:
00578da8add x0, sp, 80
00578dacadd x1, sp, 80
00578db0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578db4b 0x578db8
00578db8
00578db8loc_578db8:
00578db8ldr x4, [sp+184]
00578dbcadd x4, x4, 1
00578dc0str x4, [sp+184]
00578dc4orr x3, xzr, 1
00578dc8b 0x578d98
00578dcc
00578dccloc_578dcc:
00578dccadd x0, sp, 120
00578dd0add x1, sp, 80
00578dd4add x2, sp, 120
00578dd8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578ddcadd x0, sp, 80
00578de0add x1, sp, 120
00578de4bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578de8orr x3, xzr, 1
00578decstr x3, [sp+176]
00578df0b 0x578df4
00578df4
00578df4loc_578df4:
00578df4ldr x4, [sp+176]
00578df8subs xzr, x4, 50
00578dfcb.lt 0x578e04
00578e00b 0x578e28
00578e04
00578e04loc_578e04:
00578e04add x0, sp, 80
00578e08add x1, sp, 80
00578e0cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578e10b 0x578e14
00578e14
00578e14loc_578e14:
00578e14ldr x4, [sp+176]
00578e18add x4, x4, 1
00578e1cstr x4, [sp+176]
00578e20orr x3, xzr, 1
00578e24b 0x578df4
00578e28
00578e28loc_578e28:
00578e28add x0, sp, 80
00578e2cadd x1, sp, 80
00578e30add x2, sp, 120
00578e34bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578e38add x0, sp, 40
00578e3cadd x1, sp, 80
00578e40bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578e44orr x3, xzr, 1
00578e48str x3, [sp+168]
00578e4cb 0x578e50
00578e50
00578e50loc_578e50:
00578e50ldr x4, [sp+168]
00578e54subs xzr, x4, 100
00578e58b.lt 0x578e60
00578e5cb 0x578e84
00578e60
00578e60loc_578e60:
00578e60add x0, sp, 40
00578e64add x1, sp, 40
00578e68bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578e6cb 0x578e70
00578e70
00578e70loc_578e70:
00578e70ldr x4, [sp+168]
00578e74add x4, x4, 1
00578e78str x4, [sp+168]
00578e7corr x3, xzr, 1
00578e80b 0x578e50
00578e84
00578e84loc_578e84:
00578e84add x0, sp, 80
00578e88add x1, sp, 40
00578e8cadd x2, sp, 80
00578e90bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578e94add x0, sp, 80
00578e98add x1, sp, 80
00578e9cbl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578ea0orr x3, xzr, 1
00578ea4str x3, [sp+160]
00578ea8b 0x578eac
00578eac
00578eacloc_578eac:
00578eacldr x3, [sp+160]
00578eb0subs xzr, x3, 50
00578eb4b.lt 0x578ebc
00578eb8b 0x578edc
00578ebc
00578ebcloc_578ebc:
00578ebcadd x0, sp, 80
00578ec0add x1, sp, 80
00578ec4bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578ec8b 0x578ecc
00578ecc
00578eccloc_578ecc:
00578eccldr x3, [sp+160]
00578ed0add x3, x3, 1
00578ed4str x3, [sp+160]
00578ed8b 0x578eac
00578edc
00578edcloc_578edc:
00578edcadd x0, sp, 120
00578ee0add x1, sp, 80
00578ee4add x2, sp, 120
00578ee8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578eecadd x0, sp, 120
00578ef0add x1, sp, 120
00578ef4bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578ef8add x0, sp, 120
00578efcadd x1, sp, 120
00578f00bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578f04ldr x2, [sp+256]
00578f08ldr x0, [sp+248]
00578f0cadd x1, sp, 120
00578f10bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578f14str x0, [sp+224]
00578f18str x0, [sp+216]
00578f1cldur x29, [sp-8]
00578f20ldr x30, [sp], 240
00578f24ret x30
00578f28
00578f28loc_578f28:
00578f28stp x0, x1, [sp+8]
00578f2cmov x3, x30
00578f30bl runtime.morestack_noctxt.abi0
00578f34ldp x0, x1, [sp+8]
00578f38b 0x578bc0
00578f3cudf 0
00578bc0
00578f40
00578f40crypto/internal/fips140/edwards25519/field.(*Element).SqrtRatio: ; void crypto/internal/fips140/edwards25519/field.(*Element).SqrtRatio(crypto/internal/fips140/edwards25519/field.Element * r, crypto/internal/fips140/edwards25519/field.Element * u, crypto/internal/fips140/edwards25519/field.Element * v)
00578f40ldr x16, [x28+16]
00578f44sub x17, sp, 368
00578f48subs xzr, x17, x16
00578f4cb.ls 0x579194
00578f50sub x20, sp, 496
00578f54stp x29, x30, [x20-8]
00578f58add sp, x20, 0
00578f5csub x29, sp, 8
00578f60str x0, [sp+504]
00578f64str x1, [sp+512]
00578f68str x2, [sp+520]
00578f6cstr xzr, [sp+464]
00578f70str xzr, [sp+48]
00578f74stp xzr, xzr, [sp+360]
00578f78stp xzr, xzr, [sp+376]
00578f7cstr xzr, [sp+392]
00578f80add x2, sp, 360
00578f84str x2, [sp+432]
00578f88stp xzr, xzr, [sp+320]
00578f8cstp xzr, xzr, [sp+336]
00578f90str xzr, [sp+352]
00578f94add x0, sp, 320
00578f98str x0, [sp+480]
00578f9cldr x1, [sp+520]
00578fa0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578fa4str x0, [sp+400]
00578fa8stp xzr, xzr, [sp+280]
00578facstp xzr, xzr, [sp+296]
00578fb0str xzr, [sp+312]
00578fb4add x2, sp, 280
00578fb8str x2, [sp+480]
00578fbcldr x0, [sp+432]
00578fc0ldr x1, [sp+400]
00578fc4ldr x2, [sp+520]
00578fc8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578fccstr x0, [sp+472]
00578fd0ldr x1, [sp+512]
00578fd4ldr x2, [sp+480]
00578fd8mov x3, x0
00578fdcmov x0, x2
00578fe0mov x2, x3
00578fe4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578fe8str x0, [sp+416]
00578fecstp xzr, xzr, [sp+240]
00578ff0stp xzr, xzr, [sp+256]
00578ff4str xzr, [sp+272]
00578ff8add x2, sp, 240
00578ffcstr x2, [sp+472]
00579000ldr x0, [sp+432]
00579004ldr x1, [sp+400]
00579008bl crypto/internal/fips140/edwards25519/field.(*Element).Square
0057900cstr x0, [sp+480]
00579010ldr x1, [sp+416]
00579014ldr x2, [sp+472]
00579018mov x3, x0
0057901cmov x0, x2
00579020mov x2, x3
00579024bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00579028str x0, [sp+408]
0057902cstp xzr, xzr, [sp+200]
00579030stp xzr, xzr, [sp+216]
00579034str xzr, [sp+232]
00579038add x2, sp, 200
0057903cstr x2, [sp+480]
00579040ldr x0, [sp+432]
00579044ldr x1, [sp+408]
00579048bl crypto/internal/fips140/edwards25519/field.(*Element).Pow22523
0057904cstr x0, [sp+472]
00579050ldr x1, [sp+416]
00579054ldr x2, [sp+480]
00579058mov x3, x0
0057905cmov x0, x2
00579060mov x2, x3
00579064bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00579068str x0, [sp+440]
0057906cstp xzr, xzr, [sp+160]
00579070stp xzr, xzr, [sp+176]
00579074str xzr, [sp+192]
00579078add x2, sp, 160
0057907cstr x2, [sp+472]
00579080ldr x0, [sp+432]
00579084ldr x1, [sp+440]
00579088bl crypto/internal/fips140/edwards25519/field.(*Element).Square
0057908cstr x0, [sp+480]
00579090ldr x1, [sp+520]
00579094ldr x2, [sp+472]
00579098mov x3, x0
0057909cmov x0, x2
005790a0mov x2, x3
005790a4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
005790a8str x0, [sp+456]
005790acstp xzr, xzr, [sp+120]
005790b0stp xzr, xzr, [sp+136]
005790b4str xzr, [sp+152]
005790b8add x0, sp, 120
005790bcstr x0, [sp+480]
005790c0ldr x1, [sp+512]
005790c4bl crypto/internal/fips140/edwards25519/field.(*Element).Negate
005790c8str x0, [sp+424]
005790ccldr x1, [sp+512]
005790d0ldr x0, [sp+456]
005790d4bl crypto/internal/fips140/edwards25519/field.(*Element).Equal
005790d8str x0, [sp+72]
005790dcldr x1, [sp+424]
005790e0ldr x0, [sp+456]
005790e4bl crypto/internal/fips140/edwards25519/field.(*Element).Equal
005790e8str x0, [sp+64]
005790ecldr x1, [sp+424]
005790f0adrp x27, 0x4a8000
005790f4ldr x2, [x27+496]
005790f8ldr x0, [sp+432]
005790fcbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00579100str x0, [sp+480]
00579104ldr x2, [sp+456]
00579108mov x1, x0
0057910cmov x0, x2
00579110bl crypto/internal/fips140/edwards25519/field.(*Element).Equal
00579114str x0, [sp+56]
00579118stp xzr, xzr, [sp+80]
0057911cstp xzr, xzr, [sp+96]
00579120str xzr, [sp+112]
00579124add x0, sp, 80
00579128str x0, [sp+480]
0057912cldr x1, [sp+440]
00579130adrp x27, 0x4a8000
00579134ldr x2, [x27+496]
00579138bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
0057913cstr x0, [sp+448]
00579140ldr x2, [sp+440]
00579144ldr x3, [sp+440]
00579148ldr x4, [sp+64]
0057914cldr x5, [sp+56]
00579150orr x4, x4, x5
00579154mov x1, x0
00579158mov x0, x3
0057915cmov x3, x4
00579160bl crypto/internal/fips140/edwards25519/field.(*Element).Select
00579164ldr x1, [sp+440]
00579168ldr x0, [sp+504]
0057916cbl crypto/internal/fips140/edwards25519/field.(*Element).Absolute
00579170ldr x0, [sp+504]
00579174str x0, [sp+464]
00579178ldr x2, [sp+72]
0057917cldr x3, [sp+64]
00579180orr x1, x2, x3
00579184str x1, [sp+48]
00579188ldp x29, x30, [sp-8]
0057918cadd sp, sp, 496
00579190ret x30
00579194
00579194loc_579194:
00579194stp x0, x1, [sp+8]
00579198str x2, [sp+24]
0057919cmov x3, x30
005791a0bl runtime.morestack_noctxt.abi0
005791a4ldp x0, x1, [sp+8]
005791a8ldr x2, [sp+24]
005791acb 0x578f40
00578f40
00578f40crypto/internal/fips140/edwards25519/field.(*Element).SqrtRatio: ; void crypto/internal/fips140/edwards25519/field.(*Element).SqrtRatio(crypto/internal/fips140/edwards25519/field.Element * r, crypto/internal/fips140/edwards25519/field.Element * u, crypto/internal/fips140/edwards25519/field.Element * v)
00578f40ldr x16, [x28+16]
00578f44sub x17, sp, 368
00578f48subs xzr, x17, x16
00578f4cb.ls 0x579194
00578f50sub x20, sp, 496
00578f54stp x29, x30, [x20-8]
00578f58add sp, x20, 0
00578f5csub x29, sp, 8
00578f60str x0, [sp+504]
00578f64str x1, [sp+512]
00578f68str x2, [sp+520]
00578f6cstr xzr, [sp+464]
00578f70str xzr, [sp+48]
00578f74stp xzr, xzr, [sp+360]
00578f78stp xzr, xzr, [sp+376]
00578f7cstr xzr, [sp+392]
00578f80add x2, sp, 360
00578f84str x2, [sp+432]
00578f88stp xzr, xzr, [sp+320]
00578f8cstp xzr, xzr, [sp+336]
00578f90str xzr, [sp+352]
00578f94add x0, sp, 320
00578f98str x0, [sp+480]
00578f9cldr x1, [sp+520]
00578fa0bl crypto/internal/fips140/edwards25519/field.(*Element).Square
00578fa4str x0, [sp+400]
00578fa8stp xzr, xzr, [sp+280]
00578facstp xzr, xzr, [sp+296]
00578fb0str xzr, [sp+312]
00578fb4add x2, sp, 280
00578fb8str x2, [sp+480]
00578fbcldr x0, [sp+432]
00578fc0ldr x1, [sp+400]
00578fc4ldr x2, [sp+520]
00578fc8bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578fccstr x0, [sp+472]
00578fd0ldr x1, [sp+512]
00578fd4ldr x2, [sp+480]
00578fd8mov x3, x0
00578fdcmov x0, x2
00578fe0mov x2, x3
00578fe4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00578fe8str x0, [sp+416]
00578fecstp xzr, xzr, [sp+240]
00578ff0stp xzr, xzr, [sp+256]
00578ff4str xzr, [sp+272]
00578ff8add x2, sp, 240
00578ffcstr x2, [sp+472]
00579000ldr x0, [sp+432]
00579004ldr x1, [sp+400]
00579008bl crypto/internal/fips140/edwards25519/field.(*Element).Square
0057900cstr x0, [sp+480]
00579010ldr x1, [sp+416]
00579014ldr x2, [sp+472]
00579018mov x3, x0
0057901cmov x0, x2
00579020mov x2, x3
00579024bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00579028str x0, [sp+408]
0057902cstp xzr, xzr, [sp+200]
00579030stp xzr, xzr, [sp+216]
00579034str xzr, [sp+232]
00579038add x2, sp, 200
0057903cstr x2, [sp+480]
00579040ldr x0, [sp+432]
00579044ldr x1, [sp+408]
00579048bl crypto/internal/fips140/edwards25519/field.(*Element).Pow22523
0057904cstr x0, [sp+472]
00579050ldr x1, [sp+416]
00579054ldr x2, [sp+480]
00579058mov x3, x0
0057905cmov x0, x2
00579060mov x2, x3
00579064bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00579068str x0, [sp+440]
0057906cstp xzr, xzr, [sp+160]
00579070stp xzr, xzr, [sp+176]
00579074str xzr, [sp+192]
00579078add x2, sp, 160
0057907cstr x2, [sp+472]
00579080ldr x0, [sp+432]
00579084ldr x1, [sp+440]
00579088bl crypto/internal/fips140/edwards25519/field.(*Element).Square
0057908cstr x0, [sp+480]
00579090ldr x1, [sp+520]
00579094ldr x2, [sp+472]
00579098mov x3, x0
0057909cmov x0, x2
005790a0mov x2, x3
005790a4bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
005790a8str x0, [sp+456]
005790acstp xzr, xzr, [sp+120]
005790b0stp xzr, xzr, [sp+136]
005790b4str xzr, [sp+152]
005790b8add x0, sp, 120
005790bcstr x0, [sp+480]
005790c0ldr x1, [sp+512]
005790c4bl crypto/internal/fips140/edwards25519/field.(*Element).Negate
005790c8str x0, [sp+424]
005790ccldr x1, [sp+512]
005790d0ldr x0, [sp+456]
005790d4bl crypto/internal/fips140/edwards25519/field.(*Element).Equal
005790d8str x0, [sp+72]
005790dcldr x1, [sp+424]
005790e0ldr x0, [sp+456]
005790e4bl crypto/internal/fips140/edwards25519/field.(*Element).Equal
005790e8str x0, [sp+64]
005790ecldr x1, [sp+424]
005790f0adrp x27, 0x4a8000
005790f4ldr x2, [x27+496]
005790f8ldr x0, [sp+432]
005790fcbl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
00579100str x0, [sp+480]
00579104ldr x2, [sp+456]
00579108mov x1, x0
0057910cmov x0, x2
00579110bl crypto/internal/fips140/edwards25519/field.(*Element).Equal
00579114str x0, [sp+56]
00579118stp xzr, xzr, [sp+80]
0057911cstp xzr, xzr, [sp+96]
00579120str xzr, [sp+112]
00579124add x0, sp, 80
00579128str x0, [sp+480]
0057912cldr x1, [sp+440]
00579130adrp x27, 0x4a8000
00579134ldr x2, [x27+496]
00579138bl crypto/internal/fips140/edwards25519/field.(*Element).Multiply
0057913cstr x0, [sp+448]
00579140ldr x2, [sp+440]
00579144ldr x3, [sp+440]
00579148ldr x4, [sp+64]
0057914cldr x5, [sp+56]
00579150orr x4, x4, x5
00579154mov x1, x0
00579158mov x0, x3
0057915cmov x3, x4
00579160bl crypto/internal/fips140/edwards25519/field.(*Element).Select
00579164ldr x1, [sp+440]
00579168ldr x0, [sp+504]
0057916cbl crypto/internal/fips140/edwards25519/field.(*Element).Absolute
00579170ldr x0, [sp+504]
00579174str x0, [sp+464]
00579178ldr x2, [sp+72]
0057917cldr x3, [sp+64]
00579180orr x1, x2, x3
00579184str x1, [sp+48]
00579188ldp x29, x30, [sp-8]
0057918cadd sp, sp, 496
00579190ret x30
00579194
00579194loc_579194:
00579194stp x0, x1, [sp+8]
00579198str x2, [sp+24]
0057919cmov x3, x30
005791a0bl runtime.morestack_noctxt.abi0
005791a4ldp x0, x1, [sp+8]
005791a8ldr x2, [sp+24]
005791acb 0x578f40
00578f40
005791b0
005791b0crypto/internal/fips140/edwards25519/field.feMul: ; void crypto/internal/fips140/edwards25519/field.feMul(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x, crypto/internal/fips140/edwards25519/field.Element * y)
005791b0ldr x16, [x28+16]
005791b4subs xzr, sp, x16
005791b8b.ls 0x5791e4
005791bcstr x30, [sp-48]!
005791c0stur x29, [sp-8]
005791c4sub x29, sp, 8
005791c8str x0, [sp+56]
005791ccstr x1, [sp+64]
005791d0str x2, [sp+72]
005791d4bl crypto/internal/fips140/edwards25519/field.feMulGeneric
005791d8ldur x29, [sp-8]
005791dcldr x30, [sp], 48
005791e0ret x30
005791e4
005791e4loc_5791e4:
005791e4stp x0, x1, [sp+8]
005791e8str x2, [sp+24]
005791ecmov x3, x30
005791f0bl runtime.morestack_noctxt.abi0
005791f4ldp x0, x1, [sp+8]
005791f8ldr x2, [sp+24]
005791fcb 0x5791b0
005791b0
005791b0crypto/internal/fips140/edwards25519/field.feMul: ; void crypto/internal/fips140/edwards25519/field.feMul(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x, crypto/internal/fips140/edwards25519/field.Element * y)
005791b0ldr x16, [x28+16]
005791b4subs xzr, sp, x16
005791b8b.ls 0x5791e4
005791bcstr x30, [sp-48]!
005791c0stur x29, [sp-8]
005791c4sub x29, sp, 8
005791c8str x0, [sp+56]
005791ccstr x1, [sp+64]
005791d0str x2, [sp+72]
005791d4bl crypto/internal/fips140/edwards25519/field.feMulGeneric
005791d8ldur x29, [sp-8]
005791dcldr x30, [sp], 48
005791e0ret x30
005791e4
005791e4loc_5791e4:
005791e4stp x0, x1, [sp+8]
005791e8str x2, [sp+24]
005791ecmov x3, x30
005791f0bl runtime.morestack_noctxt.abi0
005791f4ldp x0, x1, [sp+8]
005791f8ldr x2, [sp+24]
005791fcb 0x5791b0
005791b0
00579200
00579200crypto/internal/fips140/edwards25519/field.feSquare: ; void crypto/internal/fips140/edwards25519/field.feSquare(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x)
00579200ldr x16, [x28+16]
00579204subs xzr, sp, x16
00579208b.ls 0x579230
0057920cstr x30, [sp-32]!
00579210stur x29, [sp-8]
00579214sub x29, sp, 8
00579218str x0, [sp+40]
0057921cstr x1, [sp+48]
00579220bl crypto/internal/fips140/edwards25519/field.feSquareGeneric
00579224ldur x29, [sp-8]
00579228ldr x30, [sp], 32
0057922cret x30
00579230
00579230loc_579230:
00579230stp x0, x1, [sp+8]
00579234mov x3, x30
00579238bl runtime.morestack_noctxt.abi0
0057923cldp x0, x1, [sp+8]
00579240b 0x579200
00579244udf 0
00579248udf 0
0057924cudf 0
00579200
00579200crypto/internal/fips140/edwards25519/field.feSquare: ; void crypto/internal/fips140/edwards25519/field.feSquare(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * x)
00579200ldr x16, [x28+16]
00579204subs xzr, sp, x16
00579208b.ls 0x579230
0057920cstr x30, [sp-32]!
00579210stur x29, [sp-8]
00579214sub x29, sp, 8
00579218str x0, [sp+40]
0057921cstr x1, [sp+48]
00579220bl crypto/internal/fips140/edwards25519/field.feSquareGeneric
00579224ldur x29, [sp-8]
00579228ldr x30, [sp], 32
0057922cret x30
00579230
00579230loc_579230:
00579230stp x0, x1, [sp+8]
00579234mov x3, x30
00579238bl runtime.morestack_noctxt.abi0
0057923cldp x0, x1, [sp+8]
00579240b 0x579200
00579244udf 0
00579248udf 0
0057924cudf 0
00579200
00579250
00579250crypto/internal/fips140/edwards25519/field.(*Element).carryPropagate: ; void crypto/internal/fips140/edwards25519/field.(*Element).carryPropagate(crypto/internal/fips140/edwards25519/field.Element * v)
00579250ldr x16, [x28+16]
00579254subs xzr, sp, x16
00579258b.ls 0x579290
0057925cstr x30, [sp-32]!
00579260stur x29, [sp-8]
00579264sub x29, sp, 8
00579268str x0, [sp+40]
0057926cstr xzr, [sp+16]
00579270ldr x0, [sp+40]
00579274str x0, [sp+8]
00579278bl crypto/internal/fips140/edwards25519/field.carryPropagate.abi0
0057927cldr x0, [sp+40]
00579280str x0, [sp+16]
00579284ldur x29, [sp-8]
00579288ldr x30, [sp], 32
0057928cret x30
00579290
00579290loc_579290:
00579290str x0, [sp+8]
00579294mov x3, x30
00579298bl runtime.morestack_noctxt.abi0
0057929cldr x0, [sp+8]
005792a0b 0x579250
005792a4udf 0
005792a8udf 0
005792acudf 0
00579250
00579250crypto/internal/fips140/edwards25519/field.(*Element).carryPropagate: ; void crypto/internal/fips140/edwards25519/field.(*Element).carryPropagate(crypto/internal/fips140/edwards25519/field.Element * v)
00579250ldr x16, [x28+16]
00579254subs xzr, sp, x16
00579258b.ls 0x579290
0057925cstr x30, [sp-32]!
00579260stur x29, [sp-8]
00579264sub x29, sp, 8
00579268str x0, [sp+40]
0057926cstr xzr, [sp+16]
00579270ldr x0, [sp+40]
00579274str x0, [sp+8]
00579278bl crypto/internal/fips140/edwards25519/field.carryPropagate.abi0
0057927cldr x0, [sp+40]
00579280str x0, [sp+16]
00579284ldur x29, [sp-8]
00579288ldr x30, [sp], 32
0057928cret x30
00579290
00579290loc_579290:
00579290str x0, [sp+8]
00579294mov x3, x30
00579298bl runtime.morestack_noctxt.abi0
0057929cldr x0, [sp+8]
005792a0b 0x579250
005792a4udf 0
005792a8udf 0
005792acudf 0
00579250
005792b0
005792b0crypto/internal/fips140/edwards25519/field.mul64: ; void crypto/internal/fips140/edwards25519/field.mul64(uint64 a, uint64 b)
005792b0str x30, [sp-80]!
005792b4stur x29, [sp-8]
005792b8sub x29, sp, 8
005792bcstr x0, [sp+88]
005792c0str x1, [sp+96]
005792c4stp xzr, xzr, [sp+8]
005792c8madd x2, x0, x1, xzr
005792ccumulh x3, x0, x1
005792d0str x3, [sp+48]
005792d4str x2, [sp+40]
005792d8str x3, [sp+64]
005792dcstr x2, [sp+56]
005792e0str x3, [sp+32]
005792e4str x2, [sp+24]
005792e8stp xzr, xzr, [sp+8]
005792ecstr x2, [sp+8]
005792f0ldr x1, [sp+32]
005792f4str x1, [sp+16]
005792f8mov x0, x2
005792fcadd x29, sp, 72
00579300add sp, sp, 80
00579304ret x30
00579308udf 0
0057930cudf 0
005792b0
005792b0crypto/internal/fips140/edwards25519/field.mul64: ; void crypto/internal/fips140/edwards25519/field.mul64(uint64 a, uint64 b)
005792b0str x30, [sp-80]!
005792b4stur x29, [sp-8]
005792b8sub x29, sp, 8
005792bcstr x0, [sp+88]
005792c0str x1, [sp+96]
005792c4stp xzr, xzr, [sp+8]
005792c8madd x2, x0, x1, xzr
005792ccumulh x3, x0, x1
005792d0str x3, [sp+48]
005792d4str x2, [sp+40]
005792d8str x3, [sp+64]
005792dcstr x2, [sp+56]
005792e0str x3, [sp+32]
005792e4str x2, [sp+24]
005792e8stp xzr, xzr, [sp+8]
005792ecstr x2, [sp+8]
005792f0ldr x1, [sp+32]
005792f4str x1, [sp+16]
005792f8mov x0, x2
005792fcadd x29, sp, 72
00579300add sp, sp, 80
00579304ret x30
00579308udf 0
0057930cudf 0
005792b0
00579310
00579310crypto/internal/fips140/edwards25519/field.addMul64: ; void crypto/internal/fips140/edwards25519/field.addMul64(crypto/internal/fips140/edwards25519/field.uint128 v, uint64 a, uint64 b)
00579310ldr x16, [x28+16]
00579314subs xzr, sp, x16
00579318b.ls 0x5793d4
0057931cstr x30, [sp-128]!
00579320stur x29, [sp-8]
00579324sub x29, sp, 8
00579328str x0, [sp+136]
0057932cstr x1, [sp+144]
00579330str x2, [sp+152]
00579334str x3, [sp+160]
00579338stp xzr, xzr, [sp+16]
0057933cmadd x4, x2, x3, xzr
00579340umulh x2, x2, x3
00579344str x2, [sp+88]
00579348str x4, [sp+80]
0057934cstr x2, [sp+72]
00579350str x4, [sp+64]
00579354str x2, [sp+40]
00579358str x4, [sp+32]
0057935cldr x2, [sp+136]
00579360adds x3, x4, x2
00579364str x3, [sp+80]
00579368adds x5, x4, x2
0057936cadc x5, xzr, xzr
00579370str x5, [sp+88]
00579374str x3, [sp+56]
00579378str x5, [sp+112]
0057937cstr x3, [sp+32]
00579380str x5, [sp+48]
00579384ldr x3, [sp+40]
00579388ldr x5, [sp+144]
0057938cadcs x6, x3, x5
00579390adds x6, x4, x2
00579394adcs x1, x3, x5
00579398str x1, [sp+88]
0057939cadds x2, x4, x2
005793a0adcs x2, x3, x5
005793a4adc x2, xzr, xzr
005793a8str x2, [sp+80]
005793acstr x1, [sp+104]
005793b0str x2, [sp+96]
005793b4str x1, [sp+40]
005793b8stp xzr, xzr, [sp+16]
005793bcldr x0, [sp+32]
005793c0str x0, [sp+16]
005793c4str x1, [sp+24]
005793c8add x29, sp, 120
005793ccadd sp, sp, 128
005793d0ret x30
005793d4
005793d4loc_5793d4:
005793d4stp x0, x1, [sp+8]
005793d8stp x2, x3, [sp+24]
005793dcmov x3, x30
005793e0bl runtime.morestack_noctxt.abi0
005793e4ldp x0, x1, [sp+8]
005793e8ldp x2, x3, [sp+24]
005793ecb 0x579310
00579310
00579310crypto/internal/fips140/edwards25519/field.addMul64: ; void crypto/internal/fips140/edwards25519/field.addMul64(crypto/internal/fips140/edwards25519/field.uint128 v, uint64 a, uint64 b)
00579310ldr x16, [x28+16]
00579314subs xzr, sp, x16
00579318b.ls 0x5793d4
0057931cstr x30, [sp-128]!
00579320stur x29, [sp-8]
00579324sub x29, sp, 8
00579328str x0, [sp+136]
0057932cstr x1, [sp+144]
00579330str x2, [sp+152]
00579334str x3, [sp+160]
00579338stp xzr, xzr, [sp+16]
0057933cmadd x4, x2, x3, xzr
00579340umulh x2, x2, x3
00579344str x2, [sp+88]
00579348str x4, [sp+80]
0057934cstr x2, [sp+72]
00579350str x4, [sp+64]
00579354str x2, [sp+40]
00579358str x4, [sp+32]
0057935cldr x2, [sp+136]
00579360adds x3, x4, x2
00579364str x3, [sp+80]
00579368adds x5, x4, x2
0057936cadc x5, xzr, xzr
00579370str x5, [sp+88]
00579374str x3, [sp+56]
00579378str x5, [sp+112]
0057937cstr x3, [sp+32]
00579380str x5, [sp+48]
00579384ldr x3, [sp+40]
00579388ldr x5, [sp+144]
0057938cadcs x6, x3, x5
00579390adds x6, x4, x2
00579394adcs x1, x3, x5
00579398str x1, [sp+88]
0057939cadds x2, x4, x2
005793a0adcs x2, x3, x5
005793a4adc x2, xzr, xzr
005793a8str x2, [sp+80]
005793acstr x1, [sp+104]
005793b0str x2, [sp+96]
005793b4str x1, [sp+40]
005793b8stp xzr, xzr, [sp+16]
005793bcldr x0, [sp+32]
005793c0str x0, [sp+16]
005793c4str x1, [sp+24]
005793c8add x29, sp, 120
005793ccadd sp, sp, 128
005793d0ret x30
005793d4
005793d4loc_5793d4:
005793d4stp x0, x1, [sp+8]
005793d8stp x2, x3, [sp+24]
005793dcmov x3, x30
005793e0bl runtime.morestack_noctxt.abi0
005793e4ldp x0, x1, [sp+8]
005793e8ldp x2, x3, [sp+24]
005793ecb 0x579310
00579310
005793f0
005793f0crypto/internal/fips140/edwards25519/field.shiftRightBy51: ; void crypto/internal/fips140/edwards25519/field.shiftRightBy51(crypto/internal/fips140/edwards25519/field.uint128 a)
005793f0str x30, [sp-32]!
005793f4stur x29, [sp-8]
005793f8sub x29, sp, 8
005793fcstr x0, [sp+40]
00579400str x1, [sp+48]
00579404str xzr, [sp+16]
00579408extr x0, x1, x0, 51
0057940cstr x0, [sp+16]
00579410add x29, sp, 24
00579414add sp, sp, 32
00579418ret x30
0057941cudf 0
005793f0
005793f0crypto/internal/fips140/edwards25519/field.shiftRightBy51: ; void crypto/internal/fips140/edwards25519/field.shiftRightBy51(crypto/internal/fips140/edwards25519/field.uint128 a)
005793f0str x30, [sp-32]!
005793f4stur x29, [sp-8]
005793f8sub x29, sp, 8
005793fcstr x0, [sp+40]
00579400str x1, [sp+48]
00579404str xzr, [sp+16]
00579408extr x0, x1, x0, 51
0057940cstr x0, [sp+16]
00579410add x29, sp, 24
00579414add sp, sp, 32
00579418ret x30
0057941cudf 0
005793f0
00579420
00579420crypto/internal/fips140/edwards25519/field.feMulGeneric: ; void crypto/internal/fips140/edwards25519/field.feMulGeneric(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * a, crypto/internal/fips140/edwards25519/field.Element * b)
00579420ldr x16, [x28+16]
00579424sub x17, sp, 240
00579428subs xzr, x17, x16
0057942cb.ls 0x579844
00579430sub x20, sp, 368
00579434stp x29, x30, [x20-8]
00579438add sp, x20, 0
0057943csub x29, sp, 8
00579440str x0, [sp+376]
00579444str x1, [sp+384]
00579448str x2, [sp+392]
0057944cldrsb x27, [x1]
00579450ldr x2, [x1]
00579454str x2, [sp+312]
00579458ldrsb x27, [x1]
0057945cldr x2, [x1+8]
00579460str x2, [sp+304]
00579464ldrsb x27, [x1]
00579468ldr x2, [x1+16]
0057946cstr x2, [sp+288]
00579470ldr x2, [sp+384]
00579474ldrsb x27, [x2]
00579478ldr x2, [x2+24]
0057947cstr x2, [sp+272]
00579480ldr x2, [sp+384]
00579484ldrsb x27, [x2]
00579488ldr x2, [x2+32]
0057948cstr x2, [sp+256]
00579490ldr x2, [sp+392]
00579494ldrsb x27, [x2]
00579498ldr x2, [x2]
0057949cstr x2, [sp+240]
005794a0ldr x2, [sp+392]
005794a4ldrsb x27, [x2]
005794a8ldr x2, [x2+8]
005794acstr x2, [sp+232]
005794b0ldr x2, [sp+392]
005794b4ldrsb x27, [x2]
005794b8ldr x2, [x2+16]
005794bcstr x2, [sp+224]
005794c0ldr x2, [sp+392]
005794c4ldrsb x27, [x2]
005794c8ldr x2, [x2+24]
005794ccstr x2, [sp+216]
005794d0ldr x2, [sp+392]
005794d4ldrsb x27, [x2]
005794d8ldr x2, [x2+32]
005794dcstr x2, [sp+208]
005794e0ldr x2, [sp+304]
005794e4movz x3, 19
005794e8madd x2, x2, x3, xzr
005794ecstr x2, [sp+296]
005794f0ldr x2, [sp+288]
005794f4madd x2, x2, x3, xzr
005794f8str x2, [sp+280]
005794fcldr x2, [sp+272]
00579500madd x2, x2, x3, xzr
00579504str x2, [sp+264]
00579508ldr x2, [sp+256]
0057950cmadd x2, x2, x3, xzr
00579510str x2, [sp+248]
00579514ldr x1, [sp+240]
00579518ldr x0, [sp+312]
0057951cbl crypto/internal/fips140/edwards25519/field.mul64
00579520str x0, [sp+152]
00579524str x1, [sp+160]
00579528ldr x2, [sp+296]
0057952cldr x3, [sp+208]
00579530bl crypto/internal/fips140/edwards25519/field.addMul64
00579534str x0, [sp+152]
00579538str x1, [sp+160]
0057953cldr x2, [sp+280]
00579540ldr x3, [sp+216]
00579544bl crypto/internal/fips140/edwards25519/field.addMul64
00579548str x0, [sp+152]
0057954cstr x1, [sp+160]
00579550ldr x2, [sp+264]
00579554ldr x3, [sp+224]
00579558bl crypto/internal/fips140/edwards25519/field.addMul64
0057955cstr x0, [sp+152]
00579560str x1, [sp+160]
00579564ldr x2, [sp+248]
00579568ldr x3, [sp+232]
0057956cbl crypto/internal/fips140/edwards25519/field.addMul64
00579570str x0, [sp+152]
00579574str x1, [sp+160]
00579578ldr x1, [sp+232]
0057957cldr x0, [sp+312]
00579580bl crypto/internal/fips140/edwards25519/field.mul64
00579584str x0, [sp+136]
00579588str x1, [sp+144]
0057958cldr x2, [sp+304]
00579590ldr x3, [sp+240]
00579594bl crypto/internal/fips140/edwards25519/field.addMul64
00579598str x0, [sp+136]
0057959cstr x1, [sp+144]
005795a0ldr x2, [sp+280]
005795a4ldr x3, [sp+208]
005795a8bl crypto/internal/fips140/edwards25519/field.addMul64
005795acstr x0, [sp+136]
005795b0str x1, [sp+144]
005795b4ldr x2, [sp+264]
005795b8ldr x3, [sp+216]
005795bcbl crypto/internal/fips140/edwards25519/field.addMul64
005795c0str x0, [sp+136]
005795c4str x1, [sp+144]
005795c8ldr x2, [sp+248]
005795ccldr x3, [sp+224]
005795d0bl crypto/internal/fips140/edwards25519/field.addMul64
005795d4str x0, [sp+136]
005795d8str x1, [sp+144]
005795dcldr x1, [sp+224]
005795e0ldr x0, [sp+312]
005795e4bl crypto/internal/fips140/edwards25519/field.mul64
005795e8str x0, [sp+120]
005795ecstr x1, [sp+128]
005795f0ldr x2, [sp+304]
005795f4ldr x3, [sp+232]
005795f8bl crypto/internal/fips140/edwards25519/field.addMul64
005795fcstr x0, [sp+120]
00579600str x1, [sp+128]
00579604ldr x2, [sp+288]
00579608ldr x3, [sp+240]
0057960cbl crypto/internal/fips140/edwards25519/field.addMul64
00579610str x0, [sp+120]
00579614str x1, [sp+128]
00579618ldr x2, [sp+264]
0057961cldr x3, [sp+208]
00579620bl crypto/internal/fips140/edwards25519/field.addMul64
00579624str x0, [sp+120]
00579628str x1, [sp+128]
0057962cldr x2, [sp+248]
00579630ldr x3, [sp+216]
00579634bl crypto/internal/fips140/edwards25519/field.addMul64
00579638str x0, [sp+120]
0057963cstr x1, [sp+128]
00579640ldr x1, [sp+216]
00579644ldr x0, [sp+312]
00579648bl crypto/internal/fips140/edwards25519/field.mul64
0057964cstr x0, [sp+104]
00579650str x1, [sp+112]
00579654ldr x2, [sp+304]
00579658ldr x3, [sp+224]
0057965cbl crypto/internal/fips140/edwards25519/field.addMul64
00579660str x0, [sp+104]
00579664str x1, [sp+112]
00579668ldr x2, [sp+288]
0057966cldr x3, [sp+232]
00579670bl crypto/internal/fips140/edwards25519/field.addMul64
00579674str x0, [sp+104]
00579678str x1, [sp+112]
0057967cldr x2, [sp+272]
00579680ldr x3, [sp+240]
00579684bl crypto/internal/fips140/edwards25519/field.addMul64
00579688str x0, [sp+104]
0057968cstr x1, [sp+112]
00579690ldr x2, [sp+248]
00579694ldr x3, [sp+208]
00579698bl crypto/internal/fips140/edwards25519/field.addMul64
0057969cstr x0, [sp+104]
005796a0str x1, [sp+112]
005796a4ldr x1, [sp+208]
005796a8ldr x0, [sp+312]
005796acbl crypto/internal/fips140/edwards25519/field.mul64
005796b0str x0, [sp+88]
005796b4str x1, [sp+96]
005796b8ldr x2, [sp+304]
005796bcldr x3, [sp+216]
005796c0bl crypto/internal/fips140/edwards25519/field.addMul64
005796c4str x0, [sp+88]
005796c8str x1, [sp+96]
005796ccldr x2, [sp+288]
005796d0ldr x3, [sp+224]
005796d4bl crypto/internal/fips140/edwards25519/field.addMul64
005796d8str x0, [sp+88]
005796dcstr x1, [sp+96]
005796e0ldr x2, [sp+272]
005796e4ldr x3, [sp+232]
005796e8bl crypto/internal/fips140/edwards25519/field.addMul64
005796ecstr x0, [sp+88]
005796f0str x1, [sp+96]
005796f4ldr x2, [sp+256]
005796f8ldr x3, [sp+240]
005796fcbl crypto/internal/fips140/edwards25519/field.addMul64
00579700str x0, [sp+88]
00579704str x1, [sp+96]
00579708ldr x0, [sp+152]
0057970cldr x1, [sp+160]
00579710bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579714str x0, [sp+200]
00579718ldr x0, [sp+136]
0057971cldr x1, [sp+144]
00579720bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579724str x0, [sp+192]
00579728ldr x0, [sp+120]
0057972cldr x1, [sp+128]
00579730bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579734str x0, [sp+184]
00579738ldr x0, [sp+104]
0057973cldr x1, [sp+112]
00579740bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579744str x0, [sp+176]
00579748ldr x0, [sp+88]
0057974cldr x1, [sp+96]
00579750bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579754str x0, [sp+168]
00579758ldr x2, [sp+152]
0057975cand x2, x2, 0x7ffffffffffff
00579760movz x3, 19
00579764madd x2, x3, x0, x2
00579768str x2, [sp+80]
0057976cldr x2, [sp+136]
00579770and x2, x2, 0x7ffffffffffff
00579774ldr x3, [sp+200]
00579778add x2, x2, x3
0057977cstr x2, [sp+72]
00579780ldr x2, [sp+120]
00579784and x2, x2, 0x7ffffffffffff
00579788ldr x3, [sp+192]
0057978cadd x2, x2, x3
00579790str x2, [sp+64]
00579794ldr x2, [sp+104]
00579798and x2, x2, 0x7ffffffffffff
0057979cldr x3, [sp+184]
005797a0add x2, x2, x3
005797a4str x2, [sp+56]
005797a8ldr x2, [sp+88]
005797acand x2, x2, 0x7ffffffffffff
005797b0ldr x3, [sp+176]
005797b4add x2, x2, x3
005797b8str x2, [sp+48]
005797bcadrp x27, 0x19d000
005797c0add x27, x27, 3712
005797c4ldp x2, x3, [x27]
005797c8adrp x27, 0x19d000
005797ccadd x27, x27, 3728
005797d0ldp x4, x5, [x27]
005797d4stp x2, x3, [sp+320]
005797d8stp x4, x5, [sp+336]
005797dcadrp x27, 0x19d000
005797e0ldr x2, [x27+3744]
005797e4str x2, [sp+352]
005797e8ldr x2, [sp+80]
005797ecstr x2, [sp+320]
005797f0ldr x2, [sp+72]
005797f4str x2, [sp+328]
005797f8ldr x2, [sp+64]
005797fcstr x2, [sp+336]
00579800ldr x2, [sp+56]
00579804str x2, [sp+344]
00579808ldr x2, [sp+48]
0057980cstr x2, [sp+352]
00579810ldr x2, [sp+376]
00579814ldrsb x27, [x2]
00579818ldp x3, x4, [sp+320]
0057981cldp x5, x6, [sp+336]
00579820stp x3, x4, [x2]
00579824stp x5, x6, [x2+16]
00579828ldr x3, [sp+352]
0057982cstr x3, [x2+32]
00579830ldr x0, [sp+376]
00579834bl crypto/internal/fips140/edwards25519/field.(*Element).carryPropagate
00579838ldp x29, x30, [sp-8]
0057983cadd sp, sp, 368
00579840ret x30
00579844
00579844loc_579844:
00579844stp x0, x1, [sp+8]
00579848str x2, [sp+24]
0057984cmov x3, x30
00579850bl runtime.morestack_noctxt.abi0
00579854ldp x0, x1, [sp+8]
00579858ldr x2, [sp+24]
0057985cb 0x579420
00579420
00579420crypto/internal/fips140/edwards25519/field.feMulGeneric: ; void crypto/internal/fips140/edwards25519/field.feMulGeneric(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * a, crypto/internal/fips140/edwards25519/field.Element * b)
00579420ldr x16, [x28+16]
00579424sub x17, sp, 240
00579428subs xzr, x17, x16
0057942cb.ls 0x579844
00579430sub x20, sp, 368
00579434stp x29, x30, [x20-8]
00579438add sp, x20, 0
0057943csub x29, sp, 8
00579440str x0, [sp+376]
00579444str x1, [sp+384]
00579448str x2, [sp+392]
0057944cldrsb x27, [x1]
00579450ldr x2, [x1]
00579454str x2, [sp+312]
00579458ldrsb x27, [x1]
0057945cldr x2, [x1+8]
00579460str x2, [sp+304]
00579464ldrsb x27, [x1]
00579468ldr x2, [x1+16]
0057946cstr x2, [sp+288]
00579470ldr x2, [sp+384]
00579474ldrsb x27, [x2]
00579478ldr x2, [x2+24]
0057947cstr x2, [sp+272]
00579480ldr x2, [sp+384]
00579484ldrsb x27, [x2]
00579488ldr x2, [x2+32]
0057948cstr x2, [sp+256]
00579490ldr x2, [sp+392]
00579494ldrsb x27, [x2]
00579498ldr x2, [x2]
0057949cstr x2, [sp+240]
005794a0ldr x2, [sp+392]
005794a4ldrsb x27, [x2]
005794a8ldr x2, [x2+8]
005794acstr x2, [sp+232]
005794b0ldr x2, [sp+392]
005794b4ldrsb x27, [x2]
005794b8ldr x2, [x2+16]
005794bcstr x2, [sp+224]
005794c0ldr x2, [sp+392]
005794c4ldrsb x27, [x2]
005794c8ldr x2, [x2+24]
005794ccstr x2, [sp+216]
005794d0ldr x2, [sp+392]
005794d4ldrsb x27, [x2]
005794d8ldr x2, [x2+32]
005794dcstr x2, [sp+208]
005794e0ldr x2, [sp+304]
005794e4movz x3, 19
005794e8madd x2, x2, x3, xzr
005794ecstr x2, [sp+296]
005794f0ldr x2, [sp+288]
005794f4madd x2, x2, x3, xzr
005794f8str x2, [sp+280]
005794fcldr x2, [sp+272]
00579500madd x2, x2, x3, xzr
00579504str x2, [sp+264]
00579508ldr x2, [sp+256]
0057950cmadd x2, x2, x3, xzr
00579510str x2, [sp+248]
00579514ldr x1, [sp+240]
00579518ldr x0, [sp+312]
0057951cbl crypto/internal/fips140/edwards25519/field.mul64
00579520str x0, [sp+152]
00579524str x1, [sp+160]
00579528ldr x2, [sp+296]
0057952cldr x3, [sp+208]
00579530bl crypto/internal/fips140/edwards25519/field.addMul64
00579534str x0, [sp+152]
00579538str x1, [sp+160]
0057953cldr x2, [sp+280]
00579540ldr x3, [sp+216]
00579544bl crypto/internal/fips140/edwards25519/field.addMul64
00579548str x0, [sp+152]
0057954cstr x1, [sp+160]
00579550ldr x2, [sp+264]
00579554ldr x3, [sp+224]
00579558bl crypto/internal/fips140/edwards25519/field.addMul64
0057955cstr x0, [sp+152]
00579560str x1, [sp+160]
00579564ldr x2, [sp+248]
00579568ldr x3, [sp+232]
0057956cbl crypto/internal/fips140/edwards25519/field.addMul64
00579570str x0, [sp+152]
00579574str x1, [sp+160]
00579578ldr x1, [sp+232]
0057957cldr x0, [sp+312]
00579580bl crypto/internal/fips140/edwards25519/field.mul64
00579584str x0, [sp+136]
00579588str x1, [sp+144]
0057958cldr x2, [sp+304]
00579590ldr x3, [sp+240]
00579594bl crypto/internal/fips140/edwards25519/field.addMul64
00579598str x0, [sp+136]
0057959cstr x1, [sp+144]
005795a0ldr x2, [sp+280]
005795a4ldr x3, [sp+208]
005795a8bl crypto/internal/fips140/edwards25519/field.addMul64
005795acstr x0, [sp+136]
005795b0str x1, [sp+144]
005795b4ldr x2, [sp+264]
005795b8ldr x3, [sp+216]
005795bcbl crypto/internal/fips140/edwards25519/field.addMul64
005795c0str x0, [sp+136]
005795c4str x1, [sp+144]
005795c8ldr x2, [sp+248]
005795ccldr x3, [sp+224]
005795d0bl crypto/internal/fips140/edwards25519/field.addMul64
005795d4str x0, [sp+136]
005795d8str x1, [sp+144]
005795dcldr x1, [sp+224]
005795e0ldr x0, [sp+312]
005795e4bl crypto/internal/fips140/edwards25519/field.mul64
005795e8str x0, [sp+120]
005795ecstr x1, [sp+128]
005795f0ldr x2, [sp+304]
005795f4ldr x3, [sp+232]
005795f8bl crypto/internal/fips140/edwards25519/field.addMul64
005795fcstr x0, [sp+120]
00579600str x1, [sp+128]
00579604ldr x2, [sp+288]
00579608ldr x3, [sp+240]
0057960cbl crypto/internal/fips140/edwards25519/field.addMul64
00579610str x0, [sp+120]
00579614str x1, [sp+128]
00579618ldr x2, [sp+264]
0057961cldr x3, [sp+208]
00579620bl crypto/internal/fips140/edwards25519/field.addMul64
00579624str x0, [sp+120]
00579628str x1, [sp+128]
0057962cldr x2, [sp+248]
00579630ldr x3, [sp+216]
00579634bl crypto/internal/fips140/edwards25519/field.addMul64
00579638str x0, [sp+120]
0057963cstr x1, [sp+128]
00579640ldr x1, [sp+216]
00579644ldr x0, [sp+312]
00579648bl crypto/internal/fips140/edwards25519/field.mul64
0057964cstr x0, [sp+104]
00579650str x1, [sp+112]
00579654ldr x2, [sp+304]
00579658ldr x3, [sp+224]
0057965cbl crypto/internal/fips140/edwards25519/field.addMul64
00579660str x0, [sp+104]
00579664str x1, [sp+112]
00579668ldr x2, [sp+288]
0057966cldr x3, [sp+232]
00579670bl crypto/internal/fips140/edwards25519/field.addMul64
00579674str x0, [sp+104]
00579678str x1, [sp+112]
0057967cldr x2, [sp+272]
00579680ldr x3, [sp+240]
00579684bl crypto/internal/fips140/edwards25519/field.addMul64
00579688str x0, [sp+104]
0057968cstr x1, [sp+112]
00579690ldr x2, [sp+248]
00579694ldr x3, [sp+208]
00579698bl crypto/internal/fips140/edwards25519/field.addMul64
0057969cstr x0, [sp+104]
005796a0str x1, [sp+112]
005796a4ldr x1, [sp+208]
005796a8ldr x0, [sp+312]
005796acbl crypto/internal/fips140/edwards25519/field.mul64
005796b0str x0, [sp+88]
005796b4str x1, [sp+96]
005796b8ldr x2, [sp+304]
005796bcldr x3, [sp+216]
005796c0bl crypto/internal/fips140/edwards25519/field.addMul64
005796c4str x0, [sp+88]
005796c8str x1, [sp+96]
005796ccldr x2, [sp+288]
005796d0ldr x3, [sp+224]
005796d4bl crypto/internal/fips140/edwards25519/field.addMul64
005796d8str x0, [sp+88]
005796dcstr x1, [sp+96]
005796e0ldr x2, [sp+272]
005796e4ldr x3, [sp+232]
005796e8bl crypto/internal/fips140/edwards25519/field.addMul64
005796ecstr x0, [sp+88]
005796f0str x1, [sp+96]
005796f4ldr x2, [sp+256]
005796f8ldr x3, [sp+240]
005796fcbl crypto/internal/fips140/edwards25519/field.addMul64
00579700str x0, [sp+88]
00579704str x1, [sp+96]
00579708ldr x0, [sp+152]
0057970cldr x1, [sp+160]
00579710bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579714str x0, [sp+200]
00579718ldr x0, [sp+136]
0057971cldr x1, [sp+144]
00579720bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579724str x0, [sp+192]
00579728ldr x0, [sp+120]
0057972cldr x1, [sp+128]
00579730bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579734str x0, [sp+184]
00579738ldr x0, [sp+104]
0057973cldr x1, [sp+112]
00579740bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579744str x0, [sp+176]
00579748ldr x0, [sp+88]
0057974cldr x1, [sp+96]
00579750bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579754str x0, [sp+168]
00579758ldr x2, [sp+152]
0057975cand x2, x2, 0x7ffffffffffff
00579760movz x3, 19
00579764madd x2, x3, x0, x2
00579768str x2, [sp+80]
0057976cldr x2, [sp+136]
00579770and x2, x2, 0x7ffffffffffff
00579774ldr x3, [sp+200]
00579778add x2, x2, x3
0057977cstr x2, [sp+72]
00579780ldr x2, [sp+120]
00579784and x2, x2, 0x7ffffffffffff
00579788ldr x3, [sp+192]
0057978cadd x2, x2, x3
00579790str x2, [sp+64]
00579794ldr x2, [sp+104]
00579798and x2, x2, 0x7ffffffffffff
0057979cldr x3, [sp+184]
005797a0add x2, x2, x3
005797a4str x2, [sp+56]
005797a8ldr x2, [sp+88]
005797acand x2, x2, 0x7ffffffffffff
005797b0ldr x3, [sp+176]
005797b4add x2, x2, x3
005797b8str x2, [sp+48]
005797bcadrp x27, 0x19d000
005797c0add x27, x27, 3712
005797c4ldp x2, x3, [x27]
005797c8adrp x27, 0x19d000
005797ccadd x27, x27, 3728
005797d0ldp x4, x5, [x27]
005797d4stp x2, x3, [sp+320]
005797d8stp x4, x5, [sp+336]
005797dcadrp x27, 0x19d000
005797e0ldr x2, [x27+3744]
005797e4str x2, [sp+352]
005797e8ldr x2, [sp+80]
005797ecstr x2, [sp+320]
005797f0ldr x2, [sp+72]
005797f4str x2, [sp+328]
005797f8ldr x2, [sp+64]
005797fcstr x2, [sp+336]
00579800ldr x2, [sp+56]
00579804str x2, [sp+344]
00579808ldr x2, [sp+48]
0057980cstr x2, [sp+352]
00579810ldr x2, [sp+376]
00579814ldrsb x27, [x2]
00579818ldp x3, x4, [sp+320]
0057981cldp x5, x6, [sp+336]
00579820stp x3, x4, [x2]
00579824stp x5, x6, [x2+16]
00579828ldr x3, [sp+352]
0057982cstr x3, [x2+32]
00579830ldr x0, [sp+376]
00579834bl crypto/internal/fips140/edwards25519/field.(*Element).carryPropagate
00579838ldp x29, x30, [sp-8]
0057983cadd sp, sp, 368
00579840ret x30
00579844
00579844loc_579844:
00579844stp x0, x1, [sp+8]
00579848str x2, [sp+24]
0057984cmov x3, x30
00579850bl runtime.morestack_noctxt.abi0
00579854ldp x0, x1, [sp+8]
00579858ldr x2, [sp+24]
0057985cb 0x579420
00579420
00579860
00579860crypto/internal/fips140/edwards25519/field.feSquareGeneric: ; void crypto/internal/fips140/edwards25519/field.feSquareGeneric(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * a)
00579860ldr x16, [x28+16]
00579864sub x17, sp, 224
00579868subs xzr, x17, x16
0057986cb.ls 0x579b8c
00579870sub x20, sp, 352
00579874stp x29, x30, [x20-8]
00579878add sp, x20, 0
0057987csub x29, sp, 8
00579880str x0, [sp+360]
00579884str x1, [sp+368]
00579888ldrsb x27, [x1]
0057988cldr x2, [x1]
00579890str x2, [sp+256]
00579894ldrsb x27, [x1]
00579898ldr x2, [x1+8]
0057989cstr x2, [sp+240]
005798a0ldrsb x27, [x1]
005798a4ldr x2, [x1+16]
005798a8str x2, [sp+216]
005798acldrsb x27, [x1]
005798b0ldr x2, [x1+24]
005798b4str x2, [sp+200]
005798b8ldr x2, [sp+368]
005798bcldrsb x27, [x2]
005798c0ldr x2, [x2+32]
005798c4str x2, [sp+176]
005798c8ldr x2, [sp+256]
005798ccubfm x2, x2, 63, 62
005798d0str x2, [sp+248]
005798d4ldr x2, [sp+240]
005798d8ubfm x2, x2, 63, 62
005798dcstr x2, [sp+232]
005798e0ldr x2, [sp+240]
005798e4movz x3, 38
005798e8madd x2, x2, x3, xzr
005798ecstr x2, [sp+224]
005798f0ldr x2, [sp+216]
005798f4madd x2, x2, x3, xzr
005798f8str x2, [sp+208]
005798fcldr x2, [sp+200]
00579900madd x2, x2, x3, xzr
00579904str x2, [sp+184]
00579908ldr x2, [sp+200]
0057990cmovz x3, 19
00579910madd x2, x2, x3, xzr
00579914str x2, [sp+192]
00579918ldr x2, [sp+176]
0057991cmadd x2, x2, x3, xzr
00579920str x2, [sp+168]
00579924ldr x1, [sp+256]
00579928ldr x0, [sp+256]
0057992cbl crypto/internal/fips140/edwards25519/field.mul64
00579930str x0, [sp+152]
00579934str x1, [sp+160]
00579938ldr x2, [sp+224]
0057993cldr x3, [sp+176]
00579940bl crypto/internal/fips140/edwards25519/field.addMul64
00579944str x0, [sp+152]
00579948str x1, [sp+160]
0057994cldr x2, [sp+208]
00579950ldr x3, [sp+200]
00579954bl crypto/internal/fips140/edwards25519/field.addMul64
00579958str x0, [sp+152]
0057995cstr x1, [sp+160]
00579960ldr x1, [sp+240]
00579964ldr x0, [sp+248]
00579968bl crypto/internal/fips140/edwards25519/field.mul64
0057996cstr x0, [sp+136]
00579970str x1, [sp+144]
00579974ldr x2, [sp+208]
00579978ldr x3, [sp+176]
0057997cbl crypto/internal/fips140/edwards25519/field.addMul64
00579980str x0, [sp+136]
00579984str x1, [sp+144]
00579988ldr x2, [sp+192]
0057998cldr x3, [sp+200]
00579990bl crypto/internal/fips140/edwards25519/field.addMul64
00579994str x0, [sp+136]
00579998str x1, [sp+144]
0057999cldr x1, [sp+216]
005799a0ldr x0, [sp+248]
005799a4bl crypto/internal/fips140/edwards25519/field.mul64
005799a8str x0, [sp+120]
005799acstr x1, [sp+128]
005799b0ldr x2, [sp+240]
005799b4ldr x3, [sp+240]
005799b8bl crypto/internal/fips140/edwards25519/field.addMul64
005799bcstr x0, [sp+120]
005799c0str x1, [sp+128]
005799c4ldr x2, [sp+184]
005799c8ldr x3, [sp+176]
005799ccbl crypto/internal/fips140/edwards25519/field.addMul64
005799d0str x0, [sp+120]
005799d4str x1, [sp+128]
005799d8ldr x1, [sp+200]
005799dcldr x0, [sp+248]
005799e0bl crypto/internal/fips140/edwards25519/field.mul64
005799e4str x0, [sp+104]
005799e8str x1, [sp+112]
005799ecldr x2, [sp+232]
005799f0ldr x3, [sp+216]
005799f4bl crypto/internal/fips140/edwards25519/field.addMul64
005799f8str x0, [sp+104]
005799fcstr x1, [sp+112]
00579a00ldr x2, [sp+168]
00579a04ldr x3, [sp+176]
00579a08bl crypto/internal/fips140/edwards25519/field.addMul64
00579a0cstr x0, [sp+104]
00579a10str x1, [sp+112]
00579a14ldr x1, [sp+176]
00579a18ldr x0, [sp+248]
00579a1cbl crypto/internal/fips140/edwards25519/field.mul64
00579a20str x0, [sp+88]
00579a24str x1, [sp+96]
00579a28ldr x2, [sp+232]
00579a2cldr x3, [sp+200]
00579a30bl crypto/internal/fips140/edwards25519/field.addMul64
00579a34str x0, [sp+88]
00579a38str x1, [sp+96]
00579a3cldr x2, [sp+216]
00579a40ldr x3, [sp+216]
00579a44bl crypto/internal/fips140/edwards25519/field.addMul64
00579a48str x0, [sp+88]
00579a4cstr x1, [sp+96]
00579a50ldr x0, [sp+152]
00579a54ldr x1, [sp+160]
00579a58bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579a5cstr x0, [sp+296]
00579a60ldr x0, [sp+136]
00579a64ldr x1, [sp+144]
00579a68bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579a6cstr x0, [sp+288]
00579a70ldr x0, [sp+120]
00579a74ldr x1, [sp+128]
00579a78bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579a7cstr x0, [sp+280]
00579a80ldr x0, [sp+104]
00579a84ldr x1, [sp+112]
00579a88bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579a8cstr x0, [sp+272]
00579a90ldr x0, [sp+88]
00579a94ldr x1, [sp+96]
00579a98bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579a9cstr x0, [sp+264]
00579aa0ldr x2, [sp+152]
00579aa4and x2, x2, 0x7ffffffffffff
00579aa8movz x3, 19
00579aacmadd x2, x3, x0, x2
00579ab0str x2, [sp+80]
00579ab4ldr x2, [sp+136]
00579ab8and x2, x2, 0x7ffffffffffff
00579abcldr x3, [sp+296]
00579ac0add x2, x2, x3
00579ac4str x2, [sp+72]
00579ac8ldr x2, [sp+120]
00579accand x2, x2, 0x7ffffffffffff
00579ad0ldr x3, [sp+288]
00579ad4add x2, x2, x3
00579ad8str x2, [sp+64]
00579adcldr x2, [sp+104]
00579ae0and x2, x2, 0x7ffffffffffff
00579ae4ldr x3, [sp+280]
00579ae8add x2, x2, x3
00579aecstr x2, [sp+56]
00579af0ldr x2, [sp+88]
00579af4and x2, x2, 0x7ffffffffffff
00579af8ldr x3, [sp+272]
00579afcadd x2, x2, x3
00579b00str x2, [sp+48]
00579b04adrp x27, 0x19d000
00579b08add x27, x27, 3712
00579b0cldp x2, x3, [x27]
00579b10adrp x27, 0x19d000
00579b14add x27, x27, 3728
00579b18ldp x4, x5, [x27]
00579b1cstp x2, x3, [sp+304]
00579b20stp x4, x5, [sp+320]
00579b24adrp x27, 0x19d000
00579b28ldr x2, [x27+3744]
00579b2cstr x2, [sp+336]
00579b30ldr x2, [sp+80]
00579b34str x2, [sp+304]
00579b38ldr x2, [sp+72]
00579b3cstr x2, [sp+312]
00579b40ldr x2, [sp+64]
00579b44str x2, [sp+320]
00579b48ldr x2, [sp+56]
00579b4cstr x2, [sp+328]
00579b50ldr x2, [sp+48]
00579b54str x2, [sp+336]
00579b58ldr x2, [sp+360]
00579b5cldrsb x27, [x2]
00579b60ldp x3, x4, [sp+304]
00579b64ldp x5, x6, [sp+320]
00579b68stp x3, x4, [x2]
00579b6cstp x5, x6, [x2+16]
00579b70ldr x3, [sp+336]
00579b74str x3, [x2+32]
00579b78ldr x0, [sp+360]
00579b7cbl crypto/internal/fips140/edwards25519/field.(*Element).carryPropagate
00579b80ldp x29, x30, [sp-8]
00579b84add sp, sp, 352
00579b88ret x30
00579b8c
00579b8cloc_579b8c:
00579b8cstp x0, x1, [sp+8]
00579b90mov x3, x30
00579b94bl runtime.morestack_noctxt.abi0
00579b98ldp x0, x1, [sp+8]
00579b9cb 0x579860
00579860
00579860crypto/internal/fips140/edwards25519/field.feSquareGeneric: ; void crypto/internal/fips140/edwards25519/field.feSquareGeneric(crypto/internal/fips140/edwards25519/field.Element * v, crypto/internal/fips140/edwards25519/field.Element * a)
00579860ldr x16, [x28+16]
00579864sub x17, sp, 224
00579868subs xzr, x17, x16
0057986cb.ls 0x579b8c
00579870sub x20, sp, 352
00579874stp x29, x30, [x20-8]
00579878add sp, x20, 0
0057987csub x29, sp, 8
00579880str x0, [sp+360]
00579884str x1, [sp+368]
00579888ldrsb x27, [x1]
0057988cldr x2, [x1]
00579890str x2, [sp+256]
00579894ldrsb x27, [x1]
00579898ldr x2, [x1+8]
0057989cstr x2, [sp+240]
005798a0ldrsb x27, [x1]
005798a4ldr x2, [x1+16]
005798a8str x2, [sp+216]
005798acldrsb x27, [x1]
005798b0ldr x2, [x1+24]
005798b4str x2, [sp+200]
005798b8ldr x2, [sp+368]
005798bcldrsb x27, [x2]
005798c0ldr x2, [x2+32]
005798c4str x2, [sp+176]
005798c8ldr x2, [sp+256]
005798ccubfm x2, x2, 63, 62
005798d0str x2, [sp+248]
005798d4ldr x2, [sp+240]
005798d8ubfm x2, x2, 63, 62
005798dcstr x2, [sp+232]
005798e0ldr x2, [sp+240]
005798e4movz x3, 38
005798e8madd x2, x2, x3, xzr
005798ecstr x2, [sp+224]
005798f0ldr x2, [sp+216]
005798f4madd x2, x2, x3, xzr
005798f8str x2, [sp+208]
005798fcldr x2, [sp+200]
00579900madd x2, x2, x3, xzr
00579904str x2, [sp+184]
00579908ldr x2, [sp+200]
0057990cmovz x3, 19
00579910madd x2, x2, x3, xzr
00579914str x2, [sp+192]
00579918ldr x2, [sp+176]
0057991cmadd x2, x2, x3, xzr
00579920str x2, [sp+168]
00579924ldr x1, [sp+256]
00579928ldr x0, [sp+256]
0057992cbl crypto/internal/fips140/edwards25519/field.mul64
00579930str x0, [sp+152]
00579934str x1, [sp+160]
00579938ldr x2, [sp+224]
0057993cldr x3, [sp+176]
00579940bl crypto/internal/fips140/edwards25519/field.addMul64
00579944str x0, [sp+152]
00579948str x1, [sp+160]
0057994cldr x2, [sp+208]
00579950ldr x3, [sp+200]
00579954bl crypto/internal/fips140/edwards25519/field.addMul64
00579958str x0, [sp+152]
0057995cstr x1, [sp+160]
00579960ldr x1, [sp+240]
00579964ldr x0, [sp+248]
00579968bl crypto/internal/fips140/edwards25519/field.mul64
0057996cstr x0, [sp+136]
00579970str x1, [sp+144]
00579974ldr x2, [sp+208]
00579978ldr x3, [sp+176]
0057997cbl crypto/internal/fips140/edwards25519/field.addMul64
00579980str x0, [sp+136]
00579984str x1, [sp+144]
00579988ldr x2, [sp+192]
0057998cldr x3, [sp+200]
00579990bl crypto/internal/fips140/edwards25519/field.addMul64
00579994str x0, [sp+136]
00579998str x1, [sp+144]
0057999cldr x1, [sp+216]
005799a0ldr x0, [sp+248]
005799a4bl crypto/internal/fips140/edwards25519/field.mul64
005799a8str x0, [sp+120]
005799acstr x1, [sp+128]
005799b0ldr x2, [sp+240]
005799b4ldr x3, [sp+240]
005799b8bl crypto/internal/fips140/edwards25519/field.addMul64
005799bcstr x0, [sp+120]
005799c0str x1, [sp+128]
005799c4ldr x2, [sp+184]
005799c8ldr x3, [sp+176]
005799ccbl crypto/internal/fips140/edwards25519/field.addMul64
005799d0str x0, [sp+120]
005799d4str x1, [sp+128]
005799d8ldr x1, [sp+200]
005799dcldr x0, [sp+248]
005799e0bl crypto/internal/fips140/edwards25519/field.mul64
005799e4str x0, [sp+104]
005799e8str x1, [sp+112]
005799ecldr x2, [sp+232]
005799f0ldr x3, [sp+216]
005799f4bl crypto/internal/fips140/edwards25519/field.addMul64
005799f8str x0, [sp+104]
005799fcstr x1, [sp+112]
00579a00ldr x2, [sp+168]
00579a04ldr x3, [sp+176]
00579a08bl crypto/internal/fips140/edwards25519/field.addMul64
00579a0cstr x0, [sp+104]
00579a10str x1, [sp+112]
00579a14ldr x1, [sp+176]
00579a18ldr x0, [sp+248]
00579a1cbl crypto/internal/fips140/edwards25519/field.mul64
00579a20str x0, [sp+88]
00579a24str x1, [sp+96]
00579a28ldr x2, [sp+232]
00579a2cldr x3, [sp+200]
00579a30bl crypto/internal/fips140/edwards25519/field.addMul64
00579a34str x0, [sp+88]
00579a38str x1, [sp+96]
00579a3cldr x2, [sp+216]
00579a40ldr x3, [sp+216]
00579a44bl crypto/internal/fips140/edwards25519/field.addMul64
00579a48str x0, [sp+88]
00579a4cstr x1, [sp+96]
00579a50ldr x0, [sp+152]
00579a54ldr x1, [sp+160]
00579a58bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579a5cstr x0, [sp+296]
00579a60ldr x0, [sp+136]
00579a64ldr x1, [sp+144]
00579a68bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579a6cstr x0, [sp+288]
00579a70ldr x0, [sp+120]
00579a74ldr x1, [sp+128]
00579a78bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579a7cstr x0, [sp+280]
00579a80ldr x0, [sp+104]
00579a84ldr x1, [sp+112]
00579a88bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579a8cstr x0, [sp+272]
00579a90ldr x0, [sp+88]
00579a94ldr x1, [sp+96]
00579a98bl crypto/internal/fips140/edwards25519/field.shiftRightBy51
00579a9cstr x0, [sp+264]
00579aa0ldr x2, [sp+152]
00579aa4and x2, x2, 0x7ffffffffffff
00579aa8movz x3, 19
00579aacmadd x2, x3, x0, x2
00579ab0str x2, [sp+80]
00579ab4ldr x2, [sp+136]
00579ab8and x2, x2, 0x7ffffffffffff
00579abcldr x3, [sp+296]
00579ac0add x2, x2, x3
00579ac4str x2, [sp+72]
00579ac8ldr x2, [sp+120]
00579accand x2, x2, 0x7ffffffffffff
00579ad0ldr x3, [sp+288]
00579ad4add x2, x2, x3
00579ad8str x2, [sp+64]
00579adcldr x2, [sp+104]
00579ae0and x2, x2, 0x7ffffffffffff
00579ae4ldr x3, [sp+280]
00579ae8add x2, x2, x3
00579aecstr x2, [sp+56]
00579af0ldr x2, [sp+88]
00579af4and x2, x2, 0x7ffffffffffff
00579af8ldr x3, [sp+272]
00579afcadd x2, x2, x3
00579b00str x2, [sp+48]
00579b04adrp x27, 0x19d000
00579b08add x27, x27, 3712
00579b0cldp x2, x3, [x27]
00579b10adrp x27, 0x19d000
00579b14add x27, x27, 3728
00579b18ldp x4, x5, [x27]
00579b1cstp x2, x3, [sp+304]
00579b20stp x4, x5, [sp+320]
00579b24adrp x27, 0x19d000
00579b28ldr x2, [x27+3744]
00579b2cstr x2, [sp+336]
00579b30ldr x2, [sp+80]
00579b34str x2, [sp+304]
00579b38ldr x2, [sp+72]
00579b3cstr x2, [sp+312]
00579b40ldr x2, [sp+64]
00579b44str x2, [sp+320]
00579b48ldr x2, [sp+56]
00579b4cstr x2, [sp+328]
00579b50ldr x2, [sp+48]
00579b54str x2, [sp+336]
00579b58ldr x2, [sp+360]
00579b5cldrsb x27, [x2]
00579b60ldp x3, x4, [sp+304]
00579b64ldp x5, x6, [sp+320]
00579b68stp x3, x4, [x2]
00579b6cstp x5, x6, [x2+16]
00579b70ldr x3, [sp+336]
00579b74str x3, [x2+32]
00579b78ldr x0, [sp+360]
00579b7cbl crypto/internal/fips140/edwards25519/field.(*Element).carryPropagate
00579b80ldp x29, x30, [sp-8]
00579b84add sp, sp, 352
00579b88ret x30
00579b8c
00579b8cloc_579b8c:
00579b8cstp x0, x1, [sp+8]
00579b90mov x3, x30
00579b94bl runtime.morestack_noctxt.abi0
00579b98ldp x0, x1, [sp+8]
00579b9cb 0x579860
00579860
Loading..