File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    00594d20
    00594d20crypto/internal/fips140/edwards25519.(*Scalar).SetUniformBytes: ; void crypto/internal/fips140/edwards25519.(*Scalar).SetUniformBytes(crypto/internal/fips140/edwards25519.Scalar * s, struct []uint8 x)
    00594d20ldr x16, [x28+16]
    00594d24sub x17, sp, 48
    00594d28subs xzr, x17, x16
    00594d2cb.ls 0x594f18
    00594d30str x30, [sp-176]!
    00594d34stur x29, [sp-8]
    00594d38sub x29, sp, 8
    00594d3cstr x0, [sp+184]
    00594d40str x1, [sp+192]
    00594d44str x2, [sp+200]
    00594d48str x3, [sp+208]
    00594d4cstr xzr, [sp+104]
    00594d50stp xzr, xzr, [sp+88]
    00594d54ldr x4, [sp+200]
    00594d58str x4, [sp+80]
    00594d5csubs xzr, x4, 64
    00594d60b.ne 0x594d68
    00594d64b 0x594da4
    00594d68
    00594d68loc_594d68:
    00594d68adrp x0, 0x135000
    00594d6cadd x0, x0, 2108
    00594d70movz x1, 50
    00594d74bl errors.New
    00594d78str x0, [sp+152]
    00594d7cstr x1, [sp+160]
    00594d80str xzr, [sp+104]
    00594d84ldr x1, [sp+152]
    00594d88ldr x2, [sp+160]
    00594d8cstr x1, [sp+88]
    00594d90str x2, [sp+96]
    00594d94ldr x0, [sp+104]
    00594d98ldur x29, [sp-8]
    00594d9cldr x30, [sp], 176
    00594da0ret x30
    00594da4
    00594da4loc_594da4:
    00594da4ldr x2, [sp+208]
    00594da8ldr x1, [sp+192]
    00594dacsubs xzr, x2, 21
    00594db0b.hs 0x594db8
    00594db4b 0x594f0c
    00594db8
    00594db8loc_594db8:
    00594db8b 0x594dbc
    00594dbc
    00594dbcloc_594dbc:
    00594dbcstr x1, [sp+128]
    00594dc0movz x4, 21
    00594dc4str x4, [sp+136]
    00594dc8str x2, [sp+144]
    00594dccldr x0, [sp+184]
    00594dd0mov x3, x2
    00594dd4mov x2, x4
    00594dd8bl crypto/internal/fips140/edwards25519.(*Scalar).setShortBytes
    00594ddcstp xzr, xzr, [sp+48]
    00594de0stp xzr, xzr, [sp+64]
    00594de4add x4, sp, 48
    00594de8str x4, [sp+120]
    00594decldr x2, [sp+208]
    00594df0ldr x4, [sp+192]
    00594df4subs xzr, x2, 42
    00594df8b.hs 0x594e00
    00594dfcb 0x594f04
    00594e00
    00594e00loc_594e00:
    00594e00b 0x594e04
    00594e04
    00594e04loc_594e04:
    00594e04sub x3, x2, 21
    00594e08sub x5, xzr, x3
    00594e0csbfm x5, x5, 63, 63
    00594e10movz x6, 21
    00594e14and x5, x5, x6
    00594e18add x1, x4, x5
    00594e1cstr x1, [sp+128]
    00594e20movz x2, 21
    00594e24str x2, [sp+136]
    00594e28str x3, [sp+144]
    00594e2cldr x0, [sp+120]
    00594e30bl crypto/internal/fips140/edwards25519.(*Scalar).setShortBytes
    00594e34str x0, [sp+112]
    00594e38adrp x27, 0x48d000
    00594e3cldr x2, [x27+736]
    00594e40mov x1, x0
    00594e44bl crypto/internal/fips140/edwards25519.(*Scalar).Multiply
    00594e48str x0, [sp+120]
    00594e4cldr x4, [sp+184]
    00594e50ldr x1, [sp+184]
    00594e54mov x2, x0
    00594e58mov x0, x4
    00594e5cbl crypto/internal/fips140/edwards25519.(*Scalar).Add
    00594e60ldr x1, [sp+200]
    00594e64ldr x4, [sp+192]
    00594e68ldr x5, [sp+208]
    00594e6cb 0x594e70
    00594e70
    00594e70loc_594e70:
    00594e70subs xzr, x1, 42
    00594e74b.hs 0x594e7c
    00594e78b 0x594efc
    00594e7c
    00594e7cloc_594e7c:
    00594e7csub x3, x5, 42
    00594e80sub x2, x1, 42
    00594e84sub x5, xzr, x3
    00594e88sbfm x5, x5, 63, 63
    00594e8cmovz x6, 42
    00594e90and x5, x5, x6
    00594e94add x1, x4, x5
    00594e98str x1, [sp+128]
    00594e9cstr x2, [sp+136]
    00594ea0str x3, [sp+144]
    00594ea4ldr x0, [sp+112]
    00594ea8bl crypto/internal/fips140/edwards25519.(*Scalar).setShortBytes
    00594eacldr x1, [sp+112]
    00594eb0adrp x27, 0x48d000
    00594eb4ldr x2, [x27+744]
    00594eb8ldr x0, [sp+112]
    00594ebcbl crypto/internal/fips140/edwards25519.(*Scalar).Multiply
    00594ec0str x0, [sp+120]
    00594ec4ldr x4, [sp+184]
    00594ec8ldr x1, [sp+184]
    00594eccmov x2, x0
    00594ed0mov x0, x4
    00594ed4bl crypto/internal/fips140/edwards25519.(*Scalar).Add
    00594ed8ldr x4, [sp+184]
    00594edcstr x4, [sp+104]
    00594ee0stp xzr, xzr, [sp+88]
    00594ee4ldr x0, [sp+104]
    00594ee8mov x1, xzr
    00594eecmov x2, xzr
    00594ef0ldur x29, [sp-8]
    00594ef4ldr x30, [sp], 176
    00594ef8ret x30
    00594efc
    00594efcloc_594efc:
    00594efcmovz x0, 42
    00594f00bl runtime.panicSliceB
    00594f04
    00594f04loc_594f04:
    00594f04movz x1, 42
    00594f08bl runtime.panicSliceAcap
    00594f0c
    00594f0cloc_594f0c:
    00594f0cmovz x1, 21
    00594f10bl runtime.panicSliceAcap
    00594f14hint
    00594f18
    00594f18loc_594f18:
    00594f18stp x0, x1, [sp+8]
    00594f1cstp x2, x3, [sp+24]
    00594f20mov x3, x30
    00594f24bl runtime.morestack_noctxt.abi0
    00594f28ldp x0, x1, [sp+8]
    00594f2cldp x2, x3, [sp+24]
    00594f30b 0x594d20
    00594f34udf 0
    00594f38udf 0
    00594f3cudf 0
    00594d20
    00594f40
    00594f40crypto/internal/fips140/edwards25519.(*Scalar).setShortBytes: ; void crypto/internal/fips140/edwards25519.(*Scalar).setShortBytes(crypto/internal/fips140/edwards25519.Scalar * s, struct []uint8 x)
    00594f40ldr x16, [x28+16]
    00594f44sub x17, sp, 96
    00594f48subs xzr, x17, x16
    00594f4cb.ls 0x5950a0
    00594f50str x30, [sp-224]!
    00594f54stur x29, [sp-8]
    00594f58sub x29, sp, 8
    00594f5cstr x0, [sp+232]
    00594f60str x1, [sp+240]
    00594f64str x2, [sp+248]
    00594f68str x3, [sp+256]
    00594f6cstr xzr, [sp+88]
    00594f70ldr x3, [sp+248]
    00594f74str x3, [sp+64]
    00594f78subs xzr, x3, 32
    00594f7cb.ge 0x595070
    00594f80b 0x594f84
    00594f84
    00594f84loc_594f84:
    00594f84stp xzr, xzr, [sp+32]
    00594f88stp xzr, xzr, [sp+48]
    00594f8cadd x3, sp, 32
    00594f90ldrsb x27, [x3]
    00594f94b 0x594f98
    00594f98
    00594f98loc_594f98:
    00594f98str x3, [sp+152]
    00594f9corr x4, xzr, 32
    00594fa0str x4, [sp+160]
    00594fa4str x4, [sp+168]
    00594fa8str x3, [sp+120]
    00594facstr x4, [sp+128]
    00594fb0str x4, [sp+136]
    00594fb4ldr x3, [sp+248]
    00594fb8ldr x4, [sp+240]
    00594fbcldr x5, [sp+256]
    00594fc0str x4, [sp+96]
    00594fc4str x3, [sp+104]
    00594fc8str x5, [sp+112]
    00594fccldr x4, [sp+128]
    00594fd0str x4, [sp+80]
    00594fd4subs xzr, x4, x3
    00594fd8b.gt 0x594fe0
    00594fdcb 0x594fe8
    00594fe0
    00594fe0loc_594fe0:
    00594fe0str x3, [sp+80]
    00594fe4b 0x594fec
    00594fe8
    00594fe8loc_594fe8:
    00594fe8b 0x594fec
    00594fec
    00594fecloc_594fec:
    00594fecldr x3, [sp+96]
    00594ff0ldr x4, [sp+120]
    00594ff4subs xzr, x3, x4
    00594ff8b.ne 0x595000
    00594ffcb 0x59501c
    00595000
    00595000loc_595000:
    00595000ldr x3, [sp+80]
    00595004str x3, [sp+72]
    00595008ldr x2, [sp+72]
    0059500cldr x1, [sp+96]
    00595010ldr x0, [sp+120]
    00595014bl runtime.memmove
    00595018b 0x595020
    0059501c
    0059501cloc_59501c:
    0059501cb 0x595020
    00595020
    00595020loc_595020:
    00595020ldr x2, [sp+232]
    00595024ldrsb x27, [x2]
    00595028str x2, [sp+208]
    0059502cldr x0, [sp+208]
    00595030add x1, sp, 32
    00595034bl crypto/internal/fips140/edwards25519.fiatScalarFromBytes
    00595038ldr x2, [sp+232]
    0059503cldrsb x27, [x2]
    00595040str x2, [sp+200]
    00595044ldr x2, [sp+232]
    00595048ldrsb x27, [x2]
    0059504cstr x2, [sp+192]
    00595050ldr x1, [sp+192]
    00595054ldr x0, [sp+200]
    00595058bl crypto/internal/fips140/edwards25519.fiatScalarToMontgomery
    0059505cldr x0, [sp+232]
    00595060str x0, [sp+88]
    00595064ldur x29, [sp-8]
    00595068ldr x30, [sp], 224
    0059506cret x30
    00595070
    00595070loc_595070:
    00595070adrp x0, 0x139000
    00595074add x0, x0, 1814
    00595078str x0, [sp+176]
    0059507cmovz x1, 69
    00595080str x1, [sp+184]
    00595084bl runtime.convTstring
    00595088str x0, [sp+144]
    0059508cmov x1, x0
    00595090adrp x0, 0x60000
    00595094add x0, x0, 2944
    00595098bl runtime.gopanic
    0059509chint
    005950a0
    005950a0loc_5950a0:
    005950a0stp x0, x1, [sp+8]
    005950a4stp x2, x3, [sp+24]
    005950a8mov x3, x30
    005950acbl runtime.morestack_noctxt.abi0
    005950b0ldp x0, x1, [sp+8]
    005950b4ldp x2, x3, [sp+24]
    005950b8b 0x594f40
    005950bcudf 0
    00594f40
    005950c0
    005950c0crypto/internal/fips140/edwards25519.(*Scalar).SetCanonicalBytes: ; void crypto/internal/fips140/edwards25519.(*Scalar).SetCanonicalBytes(crypto/internal/fips140/edwards25519.Scalar * s, struct []uint8 x)
    005950c0ldr x16, [x28+16]
    005950c4subs xzr, sp, x16
    005950c8b.ls 0x595218
    005950ccstr x30, [sp-128]!
    005950d0stur x29, [sp-8]
    005950d4sub x29, sp, 8
    005950d8str x0, [sp+136]
    005950dcstr x1, [sp+144]
    005950e0str x2, [sp+152]
    005950e4str x3, [sp+160]
    005950e8str xzr, [sp+64]
    005950ecstp xzr, xzr, [sp+48]
    005950f0ldr x3, [sp+152]
    005950f4str x3, [sp+40]
    005950f8subs xzr, x3, 32
    005950fcb.ne 0x595104
    00595100b 0x595140
    00595104
    00595104loc_595104:
    00595104adrp x0, 0x122000
    00595108add x0, x0, 2076
    0059510cmovz x1, 21
    00595110bl errors.New
    00595114str x0, [sp+96]
    00595118str x1, [sp+104]
    0059511cstr xzr, [sp+64]
    00595120ldr x1, [sp+96]
    00595124ldr x2, [sp+104]
    00595128str x1, [sp+48]
    0059512cstr x2, [sp+56]
    00595130ldr x0, [sp+64]
    00595134ldur x29, [sp-8]
    00595138ldr x30, [sp], 128
    0059513cret x30
    00595140
    00595140loc_595140:
    00595140ldr x0, [sp+144]
    00595144ldr x1, [sp+152]
    00595148ldr x2, [sp+160]
    0059514cbl crypto/internal/fips140/edwards25519.isReduced
    00595150strb w0, [sp+39]
    00595154tbnz w0, 0, 0x59515c
    00595158b 0x5951d0
    0059515c
    0059515cloc_59515c:
    0059515cldr x4, [sp+136]
    00595160ldrsb x27, [x4]
    00595164str x4, [sp+88]
    00595168ldr x1, [sp+144]
    0059516cldr x3, [sp+152]
    00595170subs xzr, x3, 32
    00595174b.hs 0x59517c
    00595178b 0x59520c
    0059517c
    0059517cloc_59517c:
    0059517cstr x1, [sp+80]
    00595180ldr x0, [sp+88]
    00595184bl crypto/internal/fips140/edwards25519.fiatScalarFromBytes
    00595188ldr x2, [sp+136]
    0059518cldrsb x27, [x2]
    00595190str x2, [sp+72]
    00595194ldr x2, [sp+136]
    00595198ldrsb x27, [x2]
    0059519cstr x2, [sp+112]
    005951a0ldr x1, [sp+112]
    005951a4ldr x0, [sp+72]
    005951a8bl crypto/internal/fips140/edwards25519.fiatScalarToMontgomery
    005951acldr x2, [sp+136]
    005951b0str x2, [sp+64]
    005951b4stp xzr, xzr, [sp+48]
    005951b8ldr x0, [sp+64]
    005951bcmov x1, xzr
    005951c0mov x2, xzr
    005951c4ldur x29, [sp-8]
    005951c8ldr x30, [sp], 128
    005951ccret x30
    005951d0
    005951d0loc_5951d0:
    005951d0adrp x0, 0x123000
    005951d4add x0, x0, 3721
    005951d8movz x1, 23
    005951dcbl errors.New
    005951e0str x0, [sp+96]
    005951e4str x1, [sp+104]
    005951e8str xzr, [sp+64]
    005951ecldr x1, [sp+96]
    005951f0ldr x2, [sp+104]
    005951f4str x1, [sp+48]
    005951f8str x2, [sp+56]
    005951fcldr x0, [sp+64]
    00595200ldur x29, [sp-8]
    00595204ldr x30, [sp], 128
    00595208ret x30
    0059520c
    0059520cloc_59520c:
    0059520corr x2, xzr, 32
    00595210bl runtime.panicSliceConvert
    00595214hint
    00595218
    00595218loc_595218:
    00595218stp x0, x1, [sp+8]
    0059521cstp x2, x3, [sp+24]
    00595220mov x3, x30
    00595224bl runtime.morestack_noctxt.abi0
    00595228ldp x0, x1, [sp+8]
    0059522cldp x2, x3, [sp+24]
    00595230b 0x5950c0
    00595234udf 0
    00595238udf 0
    0059523cudf 0
    005950c0
    00595240
    00595240crypto/internal/fips140/edwards25519.isReduced: ; void crypto/internal/fips140/edwards25519.isReduced(struct []uint8 s)
    00595240ldr x16, [x28+16]
    00595244subs xzr, sp, x16
    00595248b.ls 0x5953ac
    0059524cstr x30, [sp-64]!
    00595250stur x29, [sp-8]
    00595254sub x29, sp, 8
    00595258str x0, [sp+72]
    0059525cstr x1, [sp+80]
    00595260str x2, [sp+88]
    00595264strb wzr, [sp+39]
    00595268ldr x2, [sp+80]
    0059526cstr x2, [sp+48]
    00595270subs xzr, x2, 32
    00595274b.ne 0x59527c
    00595278b 0x595290
    0059527c
    0059527cloc_59527c:
    0059527cstrb wzr, [sp+39]
    00595280mov x0, xzr
    00595284ldur x29, [sp-8]
    00595288ldr x30, [sp], 64
    0059528cret x30
    00595290
    00595290loc_595290:
    00595290str x1, [sp+48]
    00595294sub x2, x1, 1
    00595298str x2, [sp+40]
    0059529cb 0x5952a0
    005952a0
    005952a0loc_5952a0:
    005952a0ldr x2, [sp+40]
    005952a4tbz x2, 63, 0x5952ac
    005952a8b 0x59537c
    005952ac
    005952acloc_5952ac:
    005952acldr x0, [sp+40]
    005952b0ldr x1, [sp+80]
    005952b4ldr x2, [sp+72]
    005952b8subs xzr, x0, x1
    005952bcb.lo 0x5952c4
    005952c0b 0x5953a4
    005952c4
    005952c4loc_5952c4:
    005952c4ldrb w2, [x2+x0]
    005952c8ldr x0, [sp+40]
    005952ccsubs xzr, x0, 32
    005952d0b.lo 0x5952d8
    005952d4b 0x59539c
    005952d8
    005952d8loc_5952d8:
    005952d8adrp x3, 0x45f000
    005952dcadd x3, x3, 3904
    005952e0ldrb w3, [x3+x0]
    005952e4subs wzr, w2, w3
    005952e8b.hi 0x5952f0
    005952ecb 0x595308
    005952f0
    005952f0loc_5952f0:
    005952f0b 0x5952f4
    005952f4
    005952f4loc_5952f4:
    005952f4strb wzr, [sp+39]
    005952f8mov x0, xzr
    005952fcldur x29, [sp-8]
    00595300ldr x30, [sp], 64
    00595304ret x30
    00595308
    00595308loc_595308:
    00595308ldr x0, [sp+40]
    0059530cldr x1, [sp+80]
    00595310ldr x2, [sp+72]
    00595314subs xzr, x0, x1
    00595318b.lo 0x595320
    0059531cb 0x595398
    00595320
    00595320loc_595320:
    00595320ldrb w2, [x2+x0]
    00595324ldr x0, [sp+40]
    00595328subs xzr, x0, 32
    0059532cb.lo 0x595334
    00595330b 0x595390
    00595334
    00595334loc_595334:
    00595334adrp x3, 0x45f000
    00595338add x3, x3, 3904
    0059533cldrb w3, [x3+x0]
    00595340subs wzr, w2, w3
    00595344b.lo 0x59534c
    00595348b 0x595364
    0059534c
    0059534cloc_59534c:
    0059534cb 0x595350
    00595350
    00595350loc_595350:
    00595350orr x0, xzr, 1
    00595354strb w0, [sp+39]
    00595358ldur x29, [sp-8]
    0059535cldr x30, [sp], 64
    00595360ret x30
    00595364
    00595364loc_595364:
    00595364b 0x595368
    00595368
    00595368loc_595368:
    00595368b 0x59536c
    0059536c
    0059536cloc_59536c:
    0059536cldr x2, [sp+40]
    00595370sub x2, x2, 1
    00595374str x2, [sp+40]
    00595378b 0x5952a0
    0059537c
    0059537cloc_59537c:
    0059537corr x0, xzr, 1
    00595380strb w0, [sp+39]
    00595384ldur x29, [sp-8]
    00595388ldr x30, [sp], 64
    0059538cret x30
    00595390
    00595390loc_595390:
    00595390orr x1, xzr, 32
    00595394bl runtime.panicIndex
    00595398
    00595398loc_595398:
    00595398bl runtime.panicIndex
    0059539c
    0059539cloc_59539c:
    0059539corr x1, xzr, 32
    005953a0bl runtime.panicIndex
    005953a4
    005953a4loc_5953a4:
    005953a4bl runtime.panicIndex
    005953a8hint
    005953ac
    005953acloc_5953ac:
    005953acstp x0, x1, [sp+8]
    005953b0str x2, [sp+24]
    005953b4mov x3, x30
    005953b8bl runtime.morestack_noctxt.abi0
    005953bcldp x0, x1, [sp+8]
    005953c0ldr x2, [sp+24]
    005953c4b 0x595240
    005953c8udf 0
    005953ccudf 0
    00595240
    005953d0
    005953d0crypto/internal/fips140/edwards25519.(*Scalar).SetBytesWithClamping: ; void crypto/internal/fips140/edwards25519.(*Scalar).SetBytesWithClamping(crypto/internal/fips140/edwards25519.Scalar * s, struct []uint8 x)
    005953d0ldr x16, [x28+16]
    005953d4sub x17, sp, 176
    005953d8subs xzr, x17, x16
    005953dcb.ls 0x5955c4
    005953e0sub x20, sp, 304
    005953e4stp x29, x30, [x20-8]
    005953e8add sp, x20, 0
    005953ecsub x29, sp, 8
    005953f0str x0, [sp+312]
    005953f4str x1, [sp+320]
    005953f8str x2, [sp+328]
    005953fcstr x3, [sp+336]
    00595400str xzr, [sp+144]
    00595404stp xzr, xzr, [sp+128]
    00595408ldr x4, [sp+328]
    0059540cstr x4, [sp+104]
    00595410subs xzr, x4, 32
    00595414b.ne 0x59541c
    00595418b 0x595458
    0059541c
    0059541cloc_59541c:
    0059541cadrp x0, 0x136000
    00595420add x0, x0, 1021
    00595424movz x1, 55
    00595428bl errors.New
    0059542cstr x0, [sp+176]
    00595430str x1, [sp+184]
    00595434str xzr, [sp+144]
    00595438ldr x1, [sp+176]
    0059543cldr x2, [sp+184]
    00595440str x1, [sp+128]
    00595444str x2, [sp+136]
    00595448ldr x0, [sp+144]
    0059544cldp x29, x30, [sp-8]
    00595450add sp, sp, 304
    00595454ret x30
    00595458
    00595458loc_595458:
    00595458stp xzr, xzr, [sp+40]
    0059545cstp xzr, xzr, [sp+56]
    00595460stp xzr, xzr, [sp+72]
    00595464stp xzr, xzr, [sp+88]
    00595468add x4, sp, 40
    0059546cldrsb x27, [x4]
    00595470b 0x595474
    00595474
    00595474loc_595474:
    00595474str x4, [sp+152]
    00595478orr x4, xzr, 64
    0059547cstr x4, [sp+160]
    00595480str x4, [sp+168]
    00595484ldr x5, [sp+320]
    00595488ldr x6, [sp+328]
    0059548cldr x7, [sp+336]
    00595490str x5, [sp+272]
    00595494str x6, [sp+280]
    00595498str x7, [sp+288]
    0059549cldr x5, [sp+152]
    005954a0ldr x6, [sp+160]
    005954a4ldr x7, [sp+168]
    005954a8str x5, [sp+240]
    005954acstr x6, [sp+248]
    005954b0str x7, [sp+256]
    005954b4ldr x5, [sp+280]
    005954b8ldr x6, [sp+272]
    005954bcldr x7, [sp+288]
    005954c0str x6, [sp+216]
    005954c4str x5, [sp+224]
    005954c8str x7, [sp+232]
    005954ccldr x6, [sp+248]
    005954d0str x6, [sp+120]
    005954d4subs xzr, x6, x5
    005954d8b.gt 0x5954e0
    005954dcb 0x5954e8
    005954e0
    005954e0loc_5954e0:
    005954e0str x5, [sp+120]
    005954e4b 0x5954ec
    005954e8
    005954e8loc_5954e8:
    005954e8b 0x5954ec
    005954ec
    005954ecloc_5954ec:
    005954ecldr x5, [sp+216]
    005954f0ldr x6, [sp+240]
    005954f4subs xzr, x5, x6
    005954f8b.ne 0x595500
    005954fcb 0x59551c
    00595500
    00595500loc_595500:
    00595500ldr x3, [sp+120]
    00595504str x3, [sp+112]
    00595508ldr x2, [sp+112]
    0059550cldr x1, [sp+216]
    00595510ldr x0, [sp+240]
    00595514bl runtime.memmove
    00595518b 0x595520
    0059551c
    0059551cloc_59551c:
    0059551cb 0x595520
    00595520
    00595520loc_595520:
    00595520ldrb w4, [sp+40]
    00595524and x4, x4, -8
    00595528strb w4, [sp+40]
    0059552cldrb w4, [sp+71]
    00595530and x4, x4, 63
    00595534strb w4, [sp+71]
    00595538orr x4, x4, 64
    0059553cstrb w4, [sp+71]
    00595540add x4, sp, 40
    00595544ldrsb x27, [x4]
    00595548b 0x59554c
    0059554c
    0059554cloc_59554c:
    0059554cstr x4, [sp+272]
    00595550orr x4, xzr, 64
    00595554str x4, [sp+280]
    00595558str x4, [sp+288]
    0059555cstr xzr, [sp+264]
    00595560stp xzr, xzr, [sp+176]
    00595564ldr x0, [sp+312]
    00595568ldr x1, [sp+272]
    0059556cldr x2, [sp+280]
    00595570ldr x3, [sp+288]
    00595574bl crypto/internal/fips140/edwards25519.(*Scalar).SetUniformBytes
    00595578str x0, [sp+264]
    0059557cstr x1, [sp+176]
    00595580str x2, [sp+184]
    00595584ldr x4, [sp+264]
    00595588str x4, [sp+208]
    0059558cldr x4, [sp+176]
    00595590ldr x5, [sp+184]
    00595594str x4, [sp+192]
    00595598str x5, [sp+200]
    0059559cldr x4, [sp+208]
    005955a0str x4, [sp+144]
    005955a4ldr x1, [sp+192]
    005955a8ldr x2, [sp+200]
    005955acstr x1, [sp+128]
    005955b0str x2, [sp+136]
    005955b4ldr x0, [sp+144]
    005955b8ldp x29, x30, [sp-8]
    005955bcadd sp, sp, 304
    005955c0ret x30
    005955c4
    005955c4loc_5955c4:
    005955c4stp x0, x1, [sp+8]
    005955c8stp x2, x3, [sp+24]
    005955ccmov x3, x30
    005955d0bl runtime.morestack_noctxt.abi0
    005955d4ldp x0, x1, [sp+8]
    005955d8ldp x2, x3, [sp+24]
    005955dcb 0x5953d0
    005953d0
    005955e0
    005955e0crypto/internal/fips140/edwards25519.(*Scalar).Bytes: ; void crypto/internal/fips140/edwards25519.(*Scalar).Bytes(crypto/internal/fips140/edwards25519.Scalar * s)
    005955e0ldr x16, [x28+16]
    005955e4subs xzr, sp, x16
    005955e8b.ls 0x59564c
    005955ecstr x30, [sp-96]!
    005955f0stur x29, [sp-8]
    005955f4sub x29, sp, 8
    005955f8str x0, [sp+104]
    005955fcstr xzr, [sp+32]
    00595600stp xzr, xzr, [sp+40]
    00595604adrp x0, 0x68000
    00595608add x0, x0, 2240
    0059560cbl runtime.newobject
    00595610str x0, [sp+80]
    00595614stp xzr, xzr, [x0]
    00595618stp xzr, xzr, [x0+16]
    0059561cldr x0, [sp+104]
    00595620ldr x1, [sp+80]
    00595624bl crypto/internal/fips140/edwards25519.(*Scalar).bytes
    00595628str x0, [sp+56]
    0059562cstr x1, [sp+64]
    00595630str x2, [sp+72]
    00595634str x0, [sp+32]
    00595638str x1, [sp+40]
    0059563cstr x2, [sp+48]
    00595640ldur x29, [sp-8]
    00595644ldr x30, [sp], 96
    00595648ret x30
    0059564c
    0059564cloc_59564c:
    0059564cstr x0, [sp+8]
    00595650mov x3, x30
    00595654bl runtime.morestack_noctxt.abi0
    00595658ldr x0, [sp+8]
    0059565cb 0x5955e0
    005955e0
    00595660
    00595660crypto/internal/fips140/edwards25519.(*Scalar).bytes: ; void crypto/internal/fips140/edwards25519.(*Scalar).bytes(crypto/internal/fips140/edwards25519.Scalar * s, uint8[32] * out)
    00595660ldr x16, [x28+16]
    00595664subs xzr, sp, x16
    00595668b.ls 0x5956ec
    0059566cstr x30, [sp-128]!
    00595670stur x29, [sp-8]
    00595674sub x29, sp, 8
    00595678str x0, [sp+136]
    0059567cstr x1, [sp+144]
    00595680str xzr, [sp+64]
    00595684stp xzr, xzr, [sp+72]
    00595688stp xzr, xzr, [sp+32]
    0059568cstp xzr, xzr, [sp+48]
    00595690ldr x1, [sp+136]
    00595694ldrsb x27, [x1]
    00595698str x1, [sp+88]
    0059569cadd x0, sp, 32
    005956a0bl crypto/internal/fips140/edwards25519.fiatScalarFromMontgomery
    005956a4ldr x0, [sp+144]
    005956a8add x1, sp, 32
    005956acbl crypto/internal/fips140/edwards25519.fiatScalarToBytes
    005956b0ldr x2, [sp+144]
    005956b4ldrsb x27, [x2]
    005956b8b 0x5956bc
    005956bc
    005956bcloc_5956bc:
    005956bcstr x2, [sp+96]
    005956c0orr x1, xzr, 32
    005956c4str x1, [sp+104]
    005956c8str x1, [sp+112]
    005956ccstr x2, [sp+64]
    005956d0str x1, [sp+72]
    005956d4str x1, [sp+80]
    005956d8ldr x0, [sp+64]
    005956dcmov x2, x1
    005956e0ldur x29, [sp-8]
    005956e4ldr x30, [sp], 128
    005956e8ret x30
    005956ec
    005956ecloc_5956ec:
    005956ecstp x0, x1, [sp+8]
    005956f0mov x3, x30
    005956f4bl runtime.morestack_noctxt.abi0
    005956f8ldp x0, x1, [sp+8]
    005956fcb 0x595660
    00595660
    00595700
    00595700crypto/internal/fips140/edwards25519.(*Scalar).nonAdjacentForm: ; void crypto/internal/fips140/edwards25519.(*Scalar).nonAdjacentForm(crypto/internal/fips140/edwards25519.Scalar * s, uint w)
    00595700ldr x16, [x28+16]
    00595704sub x17, sp, 384
    00595708subs xzr, x17, x16
    0059570cb.ls 0x595ab8
    00595710sub x20, sp, 512
    00595714stp x29, x30, [x20-8]
    00595718add sp, x20, 0
    0059571csub x29, sp, 8
    00595720str x0, [sp+776]
    00595724str x1, [sp+784]
    00595728add x20, sp, 520
    0059572cadr x27, 16
    00595730stp x29, x27, [sp-24]
    00595734sub x29, sp, 24
    00595738bl fn_87cd0
    0059573csub x29, sp, 8
    00595740ldr x0, [sp+776]
    00595744bl crypto/internal/fips140/edwards25519.(*Scalar).Bytes
    00595748str x0, [sp+416]
    0059574cstr x1, [sp+424]
    00595750str x2, [sp+432]
    00595754subs xzr, x1, 31
    00595758b.hi 0x595760
    0059575cb 0x595aac
    00595760
    00595760loc_595760:
    00595760ldrb w3, [x0+31]
    00595764subs wzr, w3, 127
    00595768b.hi 0x595a80
    0059576cb 0x595770
    00595770
    00595770loc_595770:
    00595770ldr x3, [sp+784]
    00595774subs xzr, x3, 2
    00595778b.lo 0x595a54
    0059577cb 0x595780
    00595780
    00595780loc_595780:
    00595780ldr x3, [sp+784]
    00595784subs xzr, x3, 8
    00595788b.hi 0x595a28
    0059578cb 0x595790
    00595790
    00595790loc_595790:
    00595790b 0x595794
    00595794
    00595794loc_595794:
    00595794add x20, sp, 32
    00595798adr x27, 16
    0059579cstp x29, x27, [sp-24]
    005957a0sub x29, sp, 24
    005957a4bl fn_87cd0
    005957a8sub x29, sp, 8
    005957acstp xzr, xzr, [sp+344]
    005957b0stp xzr, xzr, [sp+360]
    005957b4str xzr, [sp+376]
    005957b8str xzr, [sp+336]
    005957bcb 0x5957c0
    005957c0
    005957c0loc_5957c0:
    005957c0ldr x3, [sp+336]
    005957c4subs xzr, x3, 4
    005957c8b.lt 0x5957d0
    005957ccb 0x59584c
    005957d0
    005957d0loc_5957d0:
    005957d0ldr x3, [sp+336]
    005957d4ubfm x0, x3, 61, 60
    005957d8str x0, [sp+408]
    005957dcldr x1, [sp+424]
    005957e0ldr x4, [sp+416]
    005957e4ldr x5, [sp+432]
    005957e8b 0x5957ec
    005957ec
    005957ecloc_5957ec:
    005957ecsubs xzr, x1, x3, lsl #3
    005957f0b.hs 0x5957f8
    005957f4b 0x595a24
    005957f8
    005957f8loc_5957f8:
    005957f8sub x2, x5, x3, lsl #3
    005957fcsub x1, x1, x3, lsl #3
    00595800sub x3, xzr, x2
    00595804and x3, x0, x3, asr #63
    00595808add x0, x4, x3
    0059580cstr x0, [sp+464]
    00595810str x1, [sp+472]
    00595814str x2, [sp+480]
    00595818bl crypto/internal/fips140deps/byteorder.LEUint64
    0059581cstr x0, [sp+400]
    00595820ldr x3, [sp+336]
    00595824subs xzr, x3, 5
    00595828b.lo 0x595830
    0059582cb 0x595a18
    00595830
    00595830loc_595830:
    00595830add x4, sp, 344
    00595834str x0, [x4+3*x3]
    00595838b 0x59583c
    0059583c
    0059583cloc_59583c:
    0059583cldr x3, [sp+336]
    00595840add x3, x3, 1
    00595844str x3, [sp+336]
    00595848b 0x5957c0
    0059584c
    0059584cloc_59584c:
    0059584cldr x2, [sp+784]
    00595850orr x3, xzr, 1
    00595854lslv x4, x3, x2
    00595858subs xzr, x2, 64
    0059585ccsel x2, x4, xzr, lo
    00595860str x2, [sp+304]
    00595864sub x2, x2, 1
    00595868str x2, [sp+288]
    0059586cstr xzr, [sp+312]
    00595870str xzr, [sp+384]
    00595874b 0x595878
    00595878
    00595878loc_595878:
    00595878ldr x2, [sp+312]
    0059587csubs xzr, x2, 256
    00595880b.lo 0x595888
    00595884b 0x5959c8
    00595888
    00595888loc_595888:
    00595888ldr x2, [sp+312]
    0059588cubfm x0, x2, 6, 63
    00595890str x0, [sp+320]
    00595894ldr x2, [sp+312]
    00595898and x4, x2, 63
    0059589cstr x4, [sp+328]
    005958a0str xzr, [sp+392]
    005958a4ldr x5, [sp+784]
    005958a8orr x6, xzr, 64
    005958acsub x5, x6, x5
    005958b0subs xzr, x4, x5
    005958b4b.lo 0x5958bc
    005958b8b 0x5958dc
    005958bc
    005958bcloc_5958bc:
    005958bcsubs xzr, x0, 5
    005958c0b.lo 0x5958c8
    005958c4b 0x595a10
    005958c8
    005958c8loc_5958c8:
    005958c8add x4, sp, 344
    005958ccldr x4, [x4+3*x0]
    005958d0lsrv x2, x4, x2
    005958d4str x2, [sp+392]
    005958d8b 0x595928
    005958dc
    005958dcloc_5958dc:
    005958dcsubs xzr, x0, 5
    005958e0b.lo 0x5958e8
    005958e4b 0x595a08
    005958e8
    005958e8loc_5958e8:
    005958e8add x5, sp, 344
    005958ecldr x5, [x5+3*x0]
    005958f0lsrv x2, x5, x2
    005958f4add x0, x0, 1
    005958f8subs xzr, x0, 5
    005958fcb.lo 0x595904
    00595900b 0x595a00
    00595904
    00595904loc_595904:
    00595904add x5, sp, 344
    00595908ldr x5, [x5+3*x0]
    0059590csub x4, x6, x4
    00595910lslv x5, x5, x4
    00595914subs xzr, x4, 64
    00595918csel x4, x5, xzr, lo
    0059591corr x2, x2, x4
    00595920str x2, [sp+392]
    00595924b 0x595928
    00595928
    00595928loc_595928:
    00595928ldr x2, [sp+384]
    0059592cldr x4, [sp+392]
    00595930ldr x5, [sp+288]
    00595934and x4, x4, x5
    00595938add x2, x2, x4
    0059593cstr x2, [sp+296]
    00595940tbz w2, 0, 0x595948
    00595944b 0x595958
    00595948
    00595948loc_595948:
    00595948ldr x2, [sp+312]
    0059594cadd x2, x2, 1
    00595950str x2, [sp+312]
    00595954b 0x5959c4
    00595958
    00595958loc_595958:
    00595958ldr x4, [sp+304]
    0059595csubs xzr, x2, x4, lsr #1
    00595960b.lo 0x595968
    00595964b 0x595988
    00595968
    00595968loc_595968:
    00595968str xzr, [sp+384]
    0059596cldr x0, [sp+312]
    00595970subs xzr, x0, 256
    00595974b.lo 0x59597c
    00595978b 0x5959f8
    0059597c
    0059597cloc_59597c:
    0059597cadd x4, sp, 32
    00595980strb w2, [x4+x0]
    00595984b 0x5959b0
    00595988
    00595988loc_595988:
    00595988str x3, [sp+384]
    0059598cldr x0, [sp+312]
    00595990ldr x4, [sp+304]
    00595994sub x2, x2, x4
    00595998subs xzr, x0, 256
    0059599cb.lo 0x5959a4
    005959a0b 0x5959f0
    005959a4
    005959a4loc_5959a4:
    005959a4add x4, sp, 32
    005959a8strb w2, [x4+x0]
    005959acb 0x5959b0
    005959b0
    005959b0loc_5959b0:
    005959b0ldr x2, [sp+784]
    005959b4ldr x4, [sp+312]
    005959b8add x2, x4, x2
    005959bcstr x2, [sp+312]
    005959c0b 0x5959c4
    005959c4
    005959c4loc_5959c4:
    005959c4b 0x595878
    005959c8
    005959c8loc_5959c8:
    005959c8add x21, sp, 520
    005959ccadd x20, sp, 32
    005959d0adr x27, 16
    005959d4stp x29, x27, [sp-24]
    005959d8sub x29, sp, 24
    005959dcbl fn_87ea0
    005959e0sub x29, sp, 8
    005959e4ldp x29, x30, [sp-8]
    005959e8add sp, sp, 512
    005959ecret x30
    005959f0
    005959f0loc_5959f0:
    005959f0orr x1, xzr, 256
    005959f4bl runtime.panicIndexU
    005959f8
    005959f8loc_5959f8:
    005959f8orr x1, xzr, 256
    005959fcbl runtime.panicIndexU
    00595a00
    00595a00loc_595a00:
    00595a00movz x1, 5
    00595a04bl runtime.panicIndexU
    00595a08
    00595a08loc_595a08:
    00595a08movz x1, 5
    00595a0cbl runtime.panicIndexU
    00595a10
    00595a10loc_595a10:
    00595a10movz x1, 5
    00595a14bl runtime.panicIndexU
    00595a18
    00595a18loc_595a18:
    00595a18mov x0, x3
    00595a1cmovz x1, 5
    00595a20bl runtime.panicIndex
    00595a24
    00595a24loc_595a24:
    00595a24bl runtime.panicSliceB
    00595a28
    00595a28loc_595a28:
    00595a28adrp x0, 0x126000
    00595a2cadd x0, x0, 1669
    00595a30str x0, [sp+488]
    00595a34movz x1, 27
    00595a38str x1, [sp+496]
    00595a3cbl runtime.convTstring
    00595a40str x0, [sp+440]
    00595a44mov x1, x0
    00595a48adrp x0, 0x60000
    00595a4cadd x0, x0, 2944
    00595a50bl runtime.gopanic
    00595a54
    00595a54loc_595a54:
    00595a54adrp x0, 0x132000
    00595a58add x0, x0, 665
    00595a5cstr x0, [sp+488]
    00595a60movz x1, 45
    00595a64str x1, [sp+496]
    00595a68bl runtime.convTstring
    00595a6cstr x0, [sp+448]
    00595a70mov x1, x0
    00595a74adrp x0, 0x60000
    00595a78add x0, x0, 2944
    00595a7cbl runtime.gopanic
    00595a80
    00595a80loc_595a80:
    00595a80adrp x0, 0x12a000
    00595a84add x0, x0, 3378
    00595a88str x0, [sp+488]
    00595a8cmovz x1, 33
    00595a90str x1, [sp+496]
    00595a94bl runtime.convTstring
    00595a98str x0, [sp+456]
    00595a9cmov x1, x0
    00595aa0adrp x0, 0x60000
    00595aa4add x0, x0, 2944
    00595aa8bl runtime.gopanic
    00595aac
    00595aacloc_595aac:
    00595aacorr x0, xzr, 31
    00595ab0bl runtime.panicIndex
    00595ab4hint
    00595ab8
    00595ab8loc_595ab8:
    00595ab8stp x0, x1, [sp+264]
    00595abcmov x3, x30
    00595ac0bl runtime.morestack_noctxt.abi0
    00595ac4ldp x0, x1, [sp+264]
    00595ac8b 0x595700
    00595accudf 0
    00595700
    00595ad0
    00595ad0crypto/internal/fips140/edwards25519.(*Scalar).signedRadix16: ; void crypto/internal/fips140/edwards25519.(*Scalar).signedRadix16(crypto/internal/fips140/edwards25519.Scalar * s)
    00595ad0ldr x16, [x28+16]
    00595ad4sub x17, sp, 64
    00595ad8subs xzr, x17, x16
    00595adcb.ls 0x595d7c
    00595ae0str x30, [sp-192]!
    00595ae4stur x29, [sp-8]
    00595ae8sub x29, sp, 8
    00595aecstr x0, [sp+264]
    00595af0stp xzr, xzr, [sp+200]
    00595af4stp xzr, xzr, [sp+216]
    00595af8stp xzr, xzr, [sp+232]
    00595afcstp xzr, xzr, [sp+248]
    00595b00ldr x0, [sp+264]
    00595b04bl crypto/internal/fips140/edwards25519.(*Scalar).Bytes
    00595b08str x0, [sp+136]
    00595b0cstr x1, [sp+144]
    00595b10str x2, [sp+152]
    00595b14subs xzr, x1, 31
    00595b18b.hi 0x595b20
    00595b1cb 0x595d70
    00595b20
    00595b20loc_595b20:
    00595b20ldrb w2, [x0+31]
    00595b24subs wzr, w2, 127
    00595b28b.hi 0x595d44
    00595b2cb 0x595b30
    00595b30
    00595b30loc_595b30:
    00595b30add x27, sp, 31
    00595b34stp xzr, xzr, [x27]
    00595b38add x27, sp, 47
    00595b3cstp xzr, xzr, [x27]
    00595b40add x27, sp, 63
    00595b44stp xzr, xzr, [x27]
    00595b48add x27, sp, 79
    00595b4cstp xzr, xzr, [x27]
    00595b50str xzr, [sp+104]
    00595b54b 0x595b58
    00595b58
    00595b58loc_595b58:
    00595b58ldr x2, [sp+104]
    00595b5csubs xzr, x2, 32
    00595b60b.lt 0x595b68
    00595b64b 0x595c00
    00595b68
    00595b68loc_595b68:
    00595b68ldr x2, [sp+104]
    00595b6cubfm x0, x2, 63, 62
    00595b70str x0, [sp+112]
    00595b74ldr x2, [sp+104]
    00595b78ldr x1, [sp+144]
    00595b7cldr x3, [sp+136]
    00595b80subs xzr, x1, x2
    00595b84b.hi 0x595b8c
    00595b88b 0x595d3c
    00595b8c
    00595b8cloc_595b8c:
    00595b8cldrb w2, [x3+x2]
    00595b90and x2, x2, 15
    00595b94subs xzr, x0, 64
    00595b98b.lo 0x595ba0
    00595b9cb 0x595d34
    00595ba0
    00595ba0loc_595ba0:
    00595ba0add x3, sp, 31
    00595ba4strb w2, [x3+x0]
    00595ba8ldr x2, [sp+104]
    00595bacubfm x2, x2, 63, 62
    00595bb0add x0, x2, 1
    00595bb4str x0, [sp+128]
    00595bb8ldr x2, [sp+104]
    00595bbcldr x1, [sp+144]
    00595bc0ldr x3, [sp+136]
    00595bc4subs xzr, x1, x2
    00595bc8b.hi 0x595bd0
    00595bccb 0x595d2c
    00595bd0
    00595bd0loc_595bd0:
    00595bd0ldrb w2, [x3+x2]
    00595bd4ubfm x2, x2, 4, 7
    00595bd8subs xzr, x0, 64
    00595bdcb.lo 0x595be4
    00595be0b 0x595d24
    00595be4
    00595be4loc_595be4:
    00595be4add x3, sp, 31
    00595be8strb w2, [x3+x0]
    00595becb 0x595bf0
    00595bf0
    00595bf0loc_595bf0:
    00595bf0ldr x2, [sp+104]
    00595bf4add x2, x2, 1
    00595bf8str x2, [sp+104]
    00595bfcb 0x595b58
    00595c00
    00595c00loc_595c00:
    00595c00str xzr, [sp+96]
    00595c04b 0x595c08
    00595c08
    00595c08loc_595c08:
    00595c08ldr x2, [sp+96]
    00595c0csubs xzr, x2, 63
    00595c10b.lt 0x595c18
    00595c14b 0x595cc0
    00595c18
    00595c18loc_595c18:
    00595c18ldr x0, [sp+96]
    00595c1csubs xzr, x0, 64
    00595c20b.lo 0x595c28
    00595c24b 0x595d1c
    00595c28
    00595c28loc_595c28:
    00595c28add x2, sp, 31
    00595c2cldrsb x2, [x2+x0]
    00595c30add x2, x2, 8
    00595c34sbfm x2, x2, 4, 7
    00595c38strb w2, [sp+95]
    00595c3cldr x0, [sp+96]
    00595c40subs xzr, x0, 64
    00595c44b.lo 0x595c4c
    00595c48b 0x595d14
    00595c4c
    00595c4cloc_595c4c:
    00595c4cadd x3, sp, 31
    00595c50ldrsb x3, [x3+x0]
    00595c54ldr x0, [sp+96]
    00595c58sub x2, x3, x2, lsl #4
    00595c5csubs xzr, x0, 64
    00595c60b.lo 0x595c68
    00595c64b 0x595d0c
    00595c68
    00595c68loc_595c68:
    00595c68add x3, sp, 31
    00595c6cstrb w2, [x3+x0]
    00595c70ldr x2, [sp+96]
    00595c74add x0, x2, 1
    00595c78str x0, [sp+120]
    00595c7csubs xzr, x0, 64
    00595c80b.lo 0x595c88
    00595c84b 0x595d04
    00595c88
    00595c88loc_595c88:
    00595c88add x2, sp, 31
    00595c8cldrsb x2, [x2+x0]
    00595c90ldrsb x3, [sp+95]
    00595c94add x2, x2, x3
    00595c98subs xzr, x0, 64
    00595c9cb.lo 0x595ca4
    00595ca0b 0x595cfc
    00595ca4
    00595ca4loc_595ca4:
    00595ca4add x3, sp, 31
    00595ca8strb w2, [x3+x0]
    00595cacb 0x595cb0
    00595cb0
    00595cb0loc_595cb0:
    00595cb0ldr x2, [sp+96]
    00595cb4add x2, x2, 1
    00595cb8str x2, [sp+96]
    00595cbcb 0x595c08
    00595cc0
    00595cc0loc_595cc0:
    00595cc0add x27, sp, 31
    00595cc4ldp x0, x1, [x27]
    00595cc8add x27, sp, 47
    00595cccldp x2, x3, [x27]
    00595cd0add x27, sp, 63
    00595cd4ldp x4, x5, [x27]
    00595cd8add x27, sp, 79
    00595cdcldp x6, x7, [x27]
    00595ce0stp x0, x1, [sp+200]
    00595ce4stp x2, x3, [sp+216]
    00595ce8stp x4, x5, [sp+232]
    00595cecstp x6, x7, [sp+248]
    00595cf0ldur x29, [sp-8]
    00595cf4ldr x30, [sp], 192
    00595cf8ret x30
    00595cfc
    00595cfcloc_595cfc:
    00595cfcorr x1, xzr, 64
    00595d00bl runtime.panicIndex
    00595d04
    00595d04loc_595d04:
    00595d04orr x1, xzr, 64
    00595d08bl runtime.panicIndex
    00595d0c
    00595d0cloc_595d0c:
    00595d0corr x1, xzr, 64
    00595d10bl runtime.panicIndex
    00595d14
    00595d14loc_595d14:
    00595d14orr x1, xzr, 64
    00595d18bl runtime.panicIndex
    00595d1c
    00595d1cloc_595d1c:
    00595d1corr x1, xzr, 64
    00595d20bl runtime.panicIndex
    00595d24
    00595d24loc_595d24:
    00595d24orr x1, xzr, 64
    00595d28bl runtime.panicIndex
    00595d2c
    00595d2cloc_595d2c:
    00595d2cmov x0, x2
    00595d30bl runtime.panicIndex
    00595d34
    00595d34loc_595d34:
    00595d34orr x1, xzr, 64
    00595d38bl runtime.panicIndex
    00595d3c
    00595d3cloc_595d3c:
    00595d3cmov x0, x2
    00595d40bl runtime.panicIndex
    00595d44
    00595d44loc_595d44:
    00595d44adrp x0, 0x12a000
    00595d48add x0, x0, 3378
    00595d4cstr x0, [sp+168]
    00595d50movz x1, 33
    00595d54str x1, [sp+176]
    00595d58bl runtime.convTstring
    00595d5cstr x0, [sp+160]
    00595d60mov x1, x0
    00595d64adrp x0, 0x60000
    00595d68add x0, x0, 2944
    00595d6cbl runtime.gopanic
    00595d70
    00595d70loc_595d70:
    00595d70orr x0, xzr, 31
    00595d74bl runtime.panicIndex
    00595d78hint
    00595d7c
    00595d7cloc_595d7c:
    00595d7cstr x0, [sp+72]
    00595d80mov x3, x30
    00595d84bl runtime.morestack_noctxt.abi0
    00595d88ldr x0, [sp+72]
    00595d8cb 0x595ad0
    00595ad0
    00595d90
    00595d90crypto/internal/fips140/edwards25519.fiatScalarCmovznzU64: ; void crypto/internal/fips140/edwards25519.fiatScalarCmovznzU64(uint64 * out1, crypto/internal/fips140/edwards25519.fiatScalarUint1 arg1, uint64 arg2, uint64 arg3)
    00595d90str x30, [sp-32]!
    00595d94stur x29, [sp-8]
    00595d98sub x29, sp, 8
    00595d9cstr x0, [sp+40]
    00595da0str x1, [sp+48]
    00595da4str x2, [sp+56]
    00595da8str x3, [sp+64]
    00595dacsub x0, xzr, x1
    00595db0str x0, [sp+16]
    00595db4and x1, x0, x3
    00595db8bic x0, x2, x0
    00595dbcorr x0, x1, x0
    00595dc0str x0, [sp+8]
    00595dc4ldr x1, [sp+40]
    00595dc8ldrsb x27, [x1]
    00595dccstr x0, [x1]
    00595dd0add x29, sp, 24
    00595dd4add sp, sp, 32
    00595dd8ret x30
    00595ddcudf 0
    00595d90
    00595de0
    00595de0crypto/internal/fips140/edwards25519.fiatScalarMul: ; void crypto/internal/fips140/edwards25519.fiatScalarMul(crypto/internal/fips140/edwards25519.fiatScalarMontgomeryDomainFieldElement * out1, crypto/internal/fips140/edwards25519.fiatScalarMontgomeryDomainFieldElement * arg1, crypto/internal/fips140/edwards25519.fiatScalarMontgomeryDomainFieldElement * arg2)
    00595de0ldr x16, [x28+16]
    00595de4sub x17, sp, 2960
    00595de8subs xzr, x17, x16
    00595decb.ls 0x5974b8
    00595df0sub x20, sp, 3088
    00595df4stp x29, x30, [x20-8]
    00595df8add sp, x20, 0
    00595dfcsub x29, sp, 8
    00595e00str x0, [sp+3096]
    00595e04str x1, [sp+3104]
    00595e08str x2, [sp+3112]
    00595e0cldrsb x27, [x1]
    00595e10ldr x4, [x1+8]
    00595e14str x4, [sp+1520]
    00595e18ldrsb x27, [x1]
    00595e1cldr x4, [x1+16]
    00595e20str x4, [sp+704]
    00595e24ldrsb x27, [x1]
    00595e28ldr x4, [x1+24]
    00595e2cstr x4, [sp+624]
    00595e30ldr x4, [sp+3104]
    00595e34ldrsb x27, [x4]
    00595e38ldr x4, [x4]
    00595e3cstr x4, [sp+544]
    00595e40str xzr, [sp+456]
    00595e44str xzr, [sp+368]
    00595e48ldr x5, [sp+3112]
    00595e4cldrsb x27, [x5]
    00595e50ldr x5, [x5+24]
    00595e54str x5, [sp+1912]
    00595e58umulh x6, x4, x5
    00595e5cstr x6, [sp+1928]
    00595e60madd x4, x4, x5, xzr
    00595e64str x4, [sp+1920]
    00595e68str x6, [sp+1568]
    00595e6cstr x4, [sp+3072]
    00595e70str x6, [sp+368]
    00595e74str x4, [sp+456]
    00595e78str xzr, [sp+288]
    00595e7cstr xzr, [sp+208]
    00595e80ldr x4, [sp+3112]
    00595e84ldrsb x27, [x4]
    00595e88ldr x4, [x4+16]
    00595e8cstr x4, [sp+1904]
    00595e90ldr x5, [sp+544]
    00595e94umulh x6, x5, x4
    00595e98str x6, [sp+1920]
    00595e9cmadd x4, x5, x4, xzr
    00595ea0str x4, [sp+1928]
    00595ea4str x6, [sp+2944]
    00595ea8str x4, [sp+2896]
    00595eacstr x6, [sp+208]
    00595eb0str x4, [sp+288]
    00595eb4str xzr, [sp+120]
    00595eb8str xzr, [sp+1512]
    00595ebcldr x4, [sp+3112]
    00595ec0ldrsb x27, [x4]
    00595ec4ldr x4, [x4+8]
    00595ec8str x4, [sp+1896]
    00595eccldr x5, [sp+544]
    00595ed0umulh x6, x5, x4
    00595ed4str x6, [sp+1928]
    00595ed8madd x4, x5, x4, xzr
    00595edcstr x4, [sp+1920]
    00595ee0str x6, [sp+2776]
    00595ee4str x4, [sp+2720]
    00595ee8str x6, [sp+1512]
    00595eecstr x4, [sp+120]
    00595ef0str xzr, [sp+1424]
    00595ef4str xzr, [sp+1344]
    00595ef8ldr x4, [sp+3112]
    00595efcldrsb x27, [x4]
    00595f00ldr x4, [x4]
    00595f04str x4, [sp+1880]
    00595f08ldr x5, [sp+544]
    00595f0cumulh x6, x5, x4
    00595f10str x6, [sp+1920]
    00595f14madd x4, x5, x4, xzr
    00595f18str x4, [sp+1928]
    00595f1cstr x6, [sp+2600]
    00595f20str x4, [sp+2544]
    00595f24str x6, [sp+1344]
    00595f28str x4, [sp+1424]
    00595f2cstr xzr, [sp+1264]
    00595f30str xzr, [sp+1176]
    00595f34ldr x4, [sp+120]
    00595f38adds x5, x6, x4
    00595f3cadc x5, xzr, xzr
    00595f40adds x7, x6, x4
    00595f44str x7, [sp+1928]
    00595f48str x5, [sp+1920]
    00595f4cstr x7, [sp+2424]
    00595f50str x5, [sp+2376]
    00595f54str x7, [sp+1264]
    00595f58str x5, [sp+1176]
    00595f5cstr xzr, [sp+1088]
    00595f60str xzr, [sp+1000]
    00595f64ldr x5, [sp+288]
    00595f68ldr x7, [sp+1512]
    00595f6cadds x8, x6, x4
    00595f70adcs x8, x7, x5
    00595f74adds x8, x6, x4
    00595f78adcs x8, x7, x5
    00595f7cstr x8, [sp+1920]
    00595f80adds x9, x6, x4
    00595f84adcs x9, x7, x5
    00595f88adc x9, xzr, xzr
    00595f8cstr x9, [sp+1928]
    00595f90str x8, [sp+2248]
    00595f94str x9, [sp+2208]
    00595f98str x8, [sp+1088]
    00595f9cstr x9, [sp+1000]
    00595fa0str xzr, [sp+920]
    00595fa4str xzr, [sp+840]
    00595fa8ldr x8, [sp+456]
    00595facldr x9, [sp+208]
    00595fb0adcs x10, x9, x8
    00595fb4adds x10, x6, x4
    00595fb8adcs x10, x7, x5
    00595fbcadcs x10, x9, x8
    00595fc0str x10, [sp+1928]
    00595fc4adds x4, x6, x4
    00595fc8adcs x4, x7, x5
    00595fccadcs x4, x9, x8
    00595fd0adc x4, xzr, xzr
    00595fd4str x4, [sp+1920]
    00595fd8str x10, [sp+2072]
    00595fdcstr x4, [sp+2024]
    00595fe0str x10, [sp+920]
    00595fe4str x4, [sp+840]
    00595fe8ldr x5, [sp+368]
    00595fecadd x4, x4, x5
    00595ff0str x4, [sp+752]
    00595ff4str xzr, [sp+696]
    00595ff8ldr x4, [sp+1424]
    00595ffcmovz x5, 32283
    00596000movk x5, 0x12540000
    00596004movk x5, 0x1da300000000
    00596008movk x5, 0xd2b5000000000000
    0059600cmadd x6, x4, x5, xzr
    00596010umulh x4, x4, x5
    00596014str x4, [sp+1920]
    00596018str x6, [sp+1928]
    0059601cstr x4, [sp+1888]
    00596020str x6, [sp+1800]
    00596024str x6, [sp+696]
    00596028str xzr, [sp+688]
    0059602cstr xzr, [sp+680]
    00596030ubfm x4, x6, 4, 3
    00596034movz x7, 0x1000000000000000
    00596038umulh x6, x6, x7
    0059603cstr x6, [sp+1928]
    00596040str x4, [sp+1920]
    00596044str x6, [sp+1768]
    00596048str x4, [sp+1760]
    0059604cstr x6, [sp+680]
    00596050str x4, [sp+688]
    00596054str xzr, [sp+672]
    00596058str xzr, [sp+664]
    0059605cldr x4, [sp+696]
    00596060movz x6, 40150
    00596064movk x6, 0xa2f70000
    00596068movk x6, 0xf9de00000000
    0059606cmovk x6, 0x14de000000000000
    00596070umulh x8, x4, x6
    00596074str x8, [sp+1920]
    00596078madd x4, x4, x6, xzr
    0059607cstr x4, [sp+1928]
    00596080str x8, [sp+1752]
    00596084str x4, [sp+1744]
    00596088str x8, [sp+664]
    0059608cstr x4, [sp+672]
    00596090str xzr, [sp+656]
    00596094str xzr, [sp+648]
    00596098ldr x4, [sp+696]
    0059609cmovz x8, 54253
    005960a0movk x8, 0x5cf50000
    005960a4movk x8, 0x631a00000000
    005960a8movk x8, 0x5812000000000000
    005960acumulh x9, x4, x8
    005960b0str x9, [sp+1928]
    005960b4madd x4, x4, x8, xzr
    005960b8str x4, [sp+1920]
    005960bcstr x9, [sp+1736]
    005960c0str x4, [sp+1728]
    005960c4str x9, [sp+648]
    005960c8str x4, [sp+656]
    005960ccstr xzr, [sp+640]
    005960d0str xzr, [sp+632]
    005960d4ldr x4, [sp+672]
    005960d8adds x10, x9, x4
    005960dcadc x10, xzr, xzr
    005960e0adds x4, x9, x4
    005960e4str x4, [sp+1920]
    005960e8str x10, [sp+1928]
    005960ecstr x4, [sp+1720]
    005960f0str x10, [sp+1712]
    005960f4str x4, [sp+640]
    005960f8str x10, [sp+632]
    005960fcldr x4, [sp+664]
    00596100add x4, x10, x4
    00596104str x4, [sp+616]
    00596108str xzr, [sp+608]
    0059610cldr x4, [sp+656]
    00596110ldr x9, [sp+1424]
    00596114adds x10, x9, x4
    00596118adc x10, xzr, xzr
    0059611cadds x11, x9, x4
    00596120str x11, [sp+1928]
    00596124str x10, [sp+1920]
    00596128str x11, [sp+1704]
    0059612cstr x10, [sp+1696]
    00596130str x10, [sp+608]
    00596134str xzr, [sp+600]
    00596138str xzr, [sp+592]
    0059613cldr x10, [sp+640]
    00596140ldr x11, [sp+1264]
    00596144adds x12, x9, x4
    00596148adcs x12, x11, x10
    0059614cadds x12, x9, x4
    00596150adcs x12, x11, x10
    00596154str x12, [sp+1920]
    00596158adds x13, x9, x4
    0059615cadcs x13, x11, x10
    00596160adc x13, xzr, xzr
    00596164str x13, [sp+1928]
    00596168str x12, [sp+1688]
    0059616cstr x13, [sp+1680]
    00596170str x12, [sp+600]
    00596174str x13, [sp+592]
    00596178str xzr, [sp+584]
    0059617cstr xzr, [sp+576]
    00596180ldr x12, [sp+616]
    00596184ldr x13, [sp+1088]
    00596188adcs x14, x13, x12
    0059618cadds x14, x9, x4
    00596190adcs x14, x11, x10
    00596194adcs x14, x13, x12
    00596198str x14, [sp+1928]
    0059619cadds x15, x9, x4
    005961a0adcs x15, x11, x10
    005961a4adcs x15, x13, x12
    005961a8adc x15, xzr, xzr
    005961acstr x15, [sp+1920]
    005961b0str x14, [sp+1672]
    005961b4str x15, [sp+1664]
    005961b8str x14, [sp+584]
    005961bcstr x15, [sp+576]
    005961c0str xzr, [sp+568]
    005961c4str xzr, [sp+560]
    005961c8ldr x14, [sp+688]
    005961ccldr x15, [sp+920]
    005961d0adcs x16, x15, x14
    005961d4adds x16, x9, x4
    005961d8adcs x16, x11, x10
    005961dcadcs x16, x13, x12
    005961e0adcs x16, x15, x14
    005961e4str x16, [sp+1920]
    005961e8adds x17, x9, x4
    005961ecadcs x17, x11, x10
    005961f0adcs x17, x13, x12
    005961f4adcs x17, x15, x14
    005961f8adc x17, xzr, xzr
    005961fcstr x17, [sp+1928]
    00596200str x16, [sp+1656]
    00596204str x17, [sp+1648]
    00596208str x16, [sp+568]
    0059620cstr x17, [sp+560]
    00596210str xzr, [sp+552]
    00596214str xzr, [sp+536]
    00596218ldr x16, [sp+680]
    0059621cldr x17, [sp+752]
    00596220adcs x19, x17, x16
    00596224adds x19, x9, x4
    00596228adcs x19, x11, x10
    0059622cadcs x19, x13, x12
    00596230adcs x19, x15, x14
    00596234adcs x19, x17, x16
    00596238str x19, [sp+1928]
    0059623cadds x4, x9, x4
    00596240adcs x4, x11, x10
    00596244adcs x4, x13, x12
    00596248adcs x4, x15, x14
    0059624cadcs x4, x17, x16
    00596250adc x4, xzr, xzr
    00596254str x4, [sp+1920]
    00596258str x19, [sp+1640]
    0059625cstr x4, [sp+1632]
    00596260str x19, [sp+552]
    00596264str x4, [sp+536]
    00596268str xzr, [sp+528]
    0059626cstr xzr, [sp+520]
    00596270ldr x4, [sp+3112]
    00596274ldrsb x27, [x4]
    00596278ldr x4, [x4+24]
    0059627cstr x4, [sp+1872]
    00596280ldr x9, [sp+1520]
    00596284umulh x10, x9, x4
    00596288str x10, [sp+1920]
    0059628cmadd x4, x9, x4, xzr
    00596290str x4, [sp+1928]
    00596294str x10, [sp+1624]
    00596298str x4, [sp+1616]
    0059629cstr x10, [sp+520]
    005962a0str x4, [sp+528]
    005962a4str xzr, [sp+512]
    005962a8str xzr, [sp+504]
    005962acldr x4, [sp+3112]
    005962b0ldrsb x27, [x4]
    005962b4ldr x4, [x4+16]
    005962b8str x4, [sp+1864]
    005962bcldr x9, [sp+1520]
    005962c0umulh x10, x9, x4
    005962c4str x10, [sp+1928]
    005962c8madd x4, x9, x4, xzr
    005962ccstr x4, [sp+1920]
    005962d0str x10, [sp+1608]
    005962d4str x4, [sp+1600]
    005962d8str x10, [sp+504]
    005962dcstr x4, [sp+512]
    005962e0str xzr, [sp+496]
    005962e4str xzr, [sp+488]
    005962e8ldr x4, [sp+3112]
    005962ecldrsb x27, [x4]
    005962f0ldr x4, [x4+8]
    005962f4str x4, [sp+1856]
    005962f8ldr x9, [sp+1520]
    005962fcumulh x10, x9, x4
    00596300str x10, [sp+1920]
    00596304madd x4, x9, x4, xzr
    00596308str x4, [sp+1928]
    0059630cstr x10, [sp+1592]
    00596310str x4, [sp+1584]
    00596314str x10, [sp+488]
    00596318str x4, [sp+496]
    0059631cstr xzr, [sp+480]
    00596320str xzr, [sp+472]
    00596324ldr x4, [sp+3112]
    00596328ldrsb x27, [x4]
    0059632cldr x4, [x4]
    00596330str x4, [sp+1848]
    00596334ldr x9, [sp+1520]
    00596338umulh x10, x9, x4
    0059633cstr x10, [sp+1928]
    00596340madd x4, x9, x4, xzr
    00596344str x4, [sp+1920]
    00596348str x10, [sp+1576]
    0059634cstr x4, [sp+1560]
    00596350str x10, [sp+472]
    00596354str x4, [sp+480]
    00596358str xzr, [sp+464]
    0059635cstr xzr, [sp+448]
    00596360ldr x4, [sp+496]
    00596364adds x9, x10, x4
    00596368adc x9, xzr, xzr
    0059636cadds x11, x10, x4
    00596370str x11, [sp+1920]
    00596374str x9, [sp+1928]
    00596378str x11, [sp+1552]
    0059637cstr x9, [sp+1544]
    00596380str x11, [sp+464]
    00596384str x9, [sp+448]
    00596388str xzr, [sp+440]
    0059638cstr xzr, [sp+432]
    00596390ldr x9, [sp+512]
    00596394ldr x11, [sp+488]
    00596398adds x12, x10, x4
    0059639cadcs x12, x11, x9
    005963a0adds x12, x10, x4
    005963a4adcs x12, x11, x9
    005963a8str x12, [sp+1928]
    005963acadds x13, x10, x4
    005963b0adcs x13, x11, x9
    005963b4adc x13, xzr, xzr
    005963b8str x13, [sp+1920]
    005963bcstr x12, [sp+1536]
    005963c0str x13, [sp+1528]
    005963c4str x12, [sp+440]
    005963c8str x13, [sp+432]
    005963ccstr xzr, [sp+424]
    005963d0str xzr, [sp+416]
    005963d4ldr x12, [sp+528]
    005963d8ldr x13, [sp+504]
    005963dcadcs x14, x13, x12
    005963e0adds x14, x10, x4
    005963e4adcs x14, x11, x9
    005963e8adcs x14, x13, x12
    005963ecstr x14, [sp+1920]
    005963f0adds x4, x10, x4
    005963f4adcs x4, x11, x9
    005963f8adcs x4, x13, x12
    005963fcadc x4, xzr, xzr
    00596400str x4, [sp+1928]
    00596404str x14, [sp+3064]
    00596408str x4, [sp+3056]
    0059640cstr x14, [sp+424]
    00596410str x4, [sp+416]
    00596414ldr x9, [sp+520]
    00596418add x4, x4, x9
    0059641cstr x4, [sp+408]
    00596420str xzr, [sp+400]
    00596424str xzr, [sp+392]
    00596428ldr x4, [sp+480]
    0059642cldr x9, [sp+600]
    00596430adds x10, x9, x4
    00596434adc x10, xzr, xzr
    00596438adds x11, x9, x4
    0059643cstr x11, [sp+1928]
    00596440str x10, [sp+1920]
    00596444str x11, [sp+3048]
    00596448str x10, [sp+3040]
    0059644cstr x11, [sp+400]
    00596450str x10, [sp+392]
    00596454str xzr, [sp+384]
    00596458str xzr, [sp+376]
    0059645cldr x10, [sp+464]
    00596460ldr x11, [sp+584]
    00596464adds x12, x9, x4
    00596468adcs x12, x11, x10
    0059646cadds x12, x9, x4
    00596470adcs x12, x11, x10
    00596474str x12, [sp+1920]
    00596478adds x13, x9, x4
    0059647cadcs x13, x11, x10
    00596480adc x13, xzr, xzr
    00596484str x13, [sp+1928]
    00596488str x12, [sp+3032]
    0059648cstr x13, [sp+3024]
    00596490str x12, [sp+384]
    00596494str x13, [sp+376]
    00596498str xzr, [sp+360]
    0059649cstr xzr, [sp+352]
    005964a0ldr x12, [sp+440]
    005964a4ldr x13, [sp+568]
    005964a8adcs x14, x13, x12
    005964acadds x14, x9, x4
    005964b0adcs x14, x11, x10
    005964b4adcs x14, x13, x12
    005964b8str x14, [sp+1928]
    005964bcadds x15, x9, x4
    005964c0adcs x15, x11, x10
    005964c4adcs x15, x13, x12
    005964c8adc x15, xzr, xzr
    005964ccstr x15, [sp+1920]
    005964d0str x14, [sp+3016]
    005964d4str x15, [sp+3008]
    005964d8str x14, [sp+360]
    005964dcstr x15, [sp+352]
    005964e0str xzr, [sp+344]
    005964e4str xzr, [sp+336]
    005964e8ldr x14, [sp+424]
    005964ecldr x15, [sp+552]
    005964f0adcs x16, x15, x14
    005964f4adds x16, x9, x4
    005964f8adcs x16, x11, x10
    005964fcadcs x16, x13, x12
    00596500adcs x16, x15, x14
    00596504str x16, [sp+1920]
    00596508adds x17, x9, x4
    0059650cadcs x17, x11, x10
    00596510adcs x17, x13, x12
    00596514adcs x17, x15, x14
    00596518adc x17, xzr, xzr
    0059651cstr x17, [sp+1928]
    00596520str x16, [sp+3000]
    00596524str x17, [sp+2992]
    00596528str x16, [sp+344]
    0059652cstr x17, [sp+336]
    00596530str xzr, [sp+328]
    00596534str xzr, [sp+320]
    00596538ldr x16, [sp+408]
    0059653cldr x17, [sp+536]
    00596540adcs x19, x17, x16
    00596544adds x19, x9, x4
    00596548adcs x19, x11, x10
    0059654cadcs x19, x13, x12
    00596550adcs x19, x15, x14
    00596554adcs x19, x17, x16
    00596558str x19, [sp+1928]
    0059655cadds x4, x9, x4
    00596560adcs x4, x11, x10
    00596564adcs x4, x13, x12
    00596568adcs x4, x15, x14
    0059656cadcs x4, x17, x16
    00596570adc x4, xzr, xzr
    00596574str x4, [sp+1920]
    00596578str x19, [sp+2984]
    0059657cstr x4, [sp+2976]
    00596580str x19, [sp+328]
    00596584str x4, [sp+320]
    00596588str xzr, [sp+312]
    0059658cldr x4, [sp+400]
    00596590madd x9, x4, x5, xzr
    00596594umulh x4, x4, x5
    00596598str x4, [sp+1920]
    0059659cstr x9, [sp+1928]
    005965a0str x4, [sp+2968]
    005965a4str x9, [sp+2960]
    005965a8str x9, [sp+312]
    005965acstr xzr, [sp+304]
    005965b0str xzr, [sp+296]
    005965b4ubfm x4, x9, 4, 3
    005965b8umulh x9, x9, x7
    005965bcstr x9, [sp+1928]
    005965c0str x4, [sp+1920]
    005965c4str x9, [sp+2952]
    005965c8str x4, [sp+2936]
    005965ccstr x9, [sp+296]
    005965d0str x4, [sp+304]
    005965d4str xzr, [sp+280]
    005965d8str xzr, [sp+272]
    005965dcldr x4, [sp+312]
    005965e0umulh x9, x4, x6
    005965e4str x9, [sp+1920]
    005965e8madd x4, x4, x6, xzr
    005965ecstr x4, [sp+1928]
    005965f0str x9, [sp+2928]
    005965f4str x4, [sp+2920]
    005965f8str x9, [sp+272]
    005965fcstr x4, [sp+280]
    00596600str xzr, [sp+264]
    00596604str xzr, [sp+256]
    00596608ldr x4, [sp+312]
    0059660cumulh x9, x4, x8
    00596610str x9, [sp+1928]
    00596614madd x4, x4, x8, xzr
    00596618str x4, [sp+1920]
    0059661cstr x9, [sp+2912]
    00596620str x4, [sp+2904]
    00596624str x9, [sp+256]
    00596628str x4, [sp+264]
    0059662cstr xzr, [sp+248]
    00596630str xzr, [sp+240]
    00596634ldr x4, [sp+280]
    00596638adds x10, x9, x4
    0059663cadc x10, xzr, xzr
    00596640adds x4, x9, x4
    00596644str x4, [sp+1920]
    00596648str x10, [sp+1928]
    0059664cstr x4, [sp+2888]
    00596650str x10, [sp+2880]
    00596654str x4, [sp+248]
    00596658str x10, [sp+240]
    0059665cldr x4, [sp+272]
    00596660add x4, x10, x4
    00596664str x4, [sp+232]
    00596668str xzr, [sp+224]
    0059666cldr x4, [sp+264]
    00596670ldr x9, [sp+400]
    00596674adds x10, x9, x4
    00596678adc x10, xzr, xzr
    0059667cadds x11, x9, x4
    00596680str x11, [sp+1928]
    00596684str x10, [sp+1920]
    00596688str x11, [sp+2872]
    0059668cstr x10, [sp+2864]
    00596690str x10, [sp+224]
    00596694str xzr, [sp+216]
    00596698str xzr, [sp+200]
    0059669cldr x10, [sp+248]
    005966a0ldr x11, [sp+384]
    005966a4adds x12, x9, x4
    005966a8adcs x12, x11, x10
    005966acadds x12, x9, x4
    005966b0adcs x12, x11, x10
    005966b4str x12, [sp+1920]
    005966b8adds x13, x9, x4
    005966bcadcs x13, x11, x10
    005966c0adc x13, xzr, xzr
    005966c4str x13, [sp+1928]
    005966c8str x12, [sp+2856]
    005966ccstr x13, [sp+2848]
    005966d0str x12, [sp+216]
    005966d4str x13, [sp+200]
    005966d8str xzr, [sp+192]
    005966dcstr xzr, [sp+184]
    005966e0ldr x12, [sp+232]
    005966e4ldr x13, [sp+360]
    005966e8adcs x14, x13, x12
    005966ecadds x14, x9, x4
    005966f0adcs x14, x11, x10
    005966f4adcs x14, x13, x12
    005966f8str x14, [sp+1928]
    005966fcadds x15, x9, x4
    00596700adcs x15, x11, x10
    00596704adcs x15, x13, x12
    00596708adc x15, xzr, xzr
    0059670cstr x15, [sp+1920]
    00596710str x14, [sp+2840]
    00596714str x15, [sp+2832]
    00596718str x14, [sp+192]
    0059671cstr x15, [sp+184]
    00596720str xzr, [sp+176]
    00596724str xzr, [sp+168]
    00596728ldr x14, [sp+304]
    0059672cldr x15, [sp+344]
    00596730adcs x16, x15, x14
    00596734adds x16, x9, x4
    00596738adcs x16, x11, x10
    0059673cadcs x16, x13, x12
    00596740adcs x16, x15, x14
    00596744str x16, [sp+1920]
    00596748adds x17, x9, x4
    0059674cadcs x17, x11, x10
    00596750adcs x17, x13, x12
    00596754adcs x17, x15, x14
    00596758adc x17, xzr, xzr
    0059675cstr x17, [sp+1928]
    00596760str x16, [sp+2824]
    00596764str x17, [sp+2816]
    00596768str x16, [sp+176]
    0059676cstr x17, [sp+168]
    00596770str xzr, [sp+160]
    00596774str xzr, [sp+152]
    00596778ldr x16, [sp+296]
    0059677cldr x17, [sp+328]
    00596780adcs x19, x17, x16
    00596784adds x19, x9, x4
    00596788adcs x19, x11, x10
    0059678cadcs x19, x13, x12
    00596790adcs x19, x15, x14
    00596794adcs x19, x17, x16
    00596798str x19, [sp+1928]
    0059679cadds x4, x9, x4
    005967a0adcs x4, x11, x10
    005967a4adcs x4, x13, x12
    005967a8adcs x4, x15, x14
    005967acadcs x4, x17, x16
    005967b0adc x4, xzr, xzr
    005967b4str x4, [sp+1920]
    005967b8str x19, [sp+2808]
    005967bcstr x4, [sp+2800]
    005967c0str x19, [sp+160]
    005967c4str x4, [sp+152]
    005967c8ldr x9, [sp+320]
    005967ccadd x4, x4, x9
    005967d0str x4, [sp+144]
    005967d4str xzr, [sp+136]
    005967d8str xzr, [sp+128]
    005967dcldr x4, [sp+3112]
    005967e0ldrsb x27, [x4]
    005967e4ldr x4, [x4+24]
    005967e8str x4, [sp+1840]
    005967ecldr x9, [sp+704]
    005967f0umulh x10, x9, x4
    005967f4str x10, [sp+1920]
    005967f8madd x4, x9, x4, xzr
    005967fcstr x4, [sp+1928]
    00596800str x10, [sp+2792]
    00596804str x4, [sp+2784]
    00596808str x10, [sp+128]
    0059680cstr x4, [sp+136]
    00596810str xzr, [sp+112]
    00596814str xzr, [sp+104]
    00596818ldr x4, [sp+3112]
    0059681cldrsb x27, [x4]
    00596820ldr x4, [x4+16]
    00596824str x4, [sp+1832]
    00596828ldr x9, [sp+704]
    0059682cumulh x10, x9, x4
    00596830str x10, [sp+1928]
    00596834madd x4, x9, x4, xzr
    00596838str x4, [sp+1920]
    0059683cstr x10, [sp+2768]
    00596840str x4, [sp+2760]
    00596844str x10, [sp+104]
    00596848str x4, [sp+112]
    0059684cstr xzr, [sp+96]
    00596850str xzr, [sp+88]
    00596854ldr x4, [sp+3112]
    00596858ldrsb x27, [x4]
    0059685cldr x4, [x4+8]
    00596860str x4, [sp+1824]
    00596864ldr x9, [sp+704]
    00596868umulh x10, x9, x4
    0059686cstr x10, [sp+1920]
    00596870madd x4, x9, x4, xzr
    00596874str x4, [sp+1928]
    00596878str x10, [sp+2752]
    0059687cstr x4, [sp+2744]
    00596880str x10, [sp+88]
    00596884str x4, [sp+96]
    00596888str xzr, [sp+80]
    0059688cstr xzr, [sp+72]
    00596890ldr x4, [sp+3112]
    00596894ldrsb x27, [x4]
    00596898ldr x4, [x4]
    0059689cstr x4, [sp+1816]
    005968a0ldr x9, [sp+704]
    005968a4umulh x10, x9, x4
    005968a8str x10, [sp+1928]
    005968acmadd x4, x9, x4, xzr
    005968b0str x4, [sp+1920]
    005968b4str x10, [sp+2736]
    005968b8str x4, [sp+2728]
    005968bcstr x10, [sp+72]
    005968c0str x4, [sp+80]
    005968c4str xzr, [sp+64]
    005968c8str xzr, [sp+56]
    005968ccldr x4, [sp+96]
    005968d0adds x9, x10, x4
    005968d4adc x9, xzr, xzr
    005968d8adds x11, x10, x4
    005968dcstr x11, [sp+1920]
    005968e0str x9, [sp+1928]
    005968e4str x11, [sp+2712]
    005968e8str x9, [sp+2704]
    005968ecstr x11, [sp+64]
    005968f0str x9, [sp+56]
    005968f4str xzr, [sp+48]
    005968f8str xzr, [sp+40]
    005968fcldr x9, [sp+112]
    00596900ldr x11, [sp+88]
    00596904adds x12, x10, x4
    00596908adcs x12, x11, x9
    0059690cadds x12, x10, x4
    00596910adcs x12, x11, x9
    00596914str x12, [sp+1928]
    00596918adds x13, x10, x4
    0059691cadcs x13, x11, x9
    00596920adc x13, xzr, xzr
    00596924str x13, [sp+1920]
    00596928str x12, [sp+2696]
    0059692cstr x13, [sp+2688]
    00596930str x12, [sp+48]
    00596934str x13, [sp+40]
    00596938str xzr, [sp+1504]
    0059693cstr xzr, [sp+1496]
    00596940ldr x12, [sp+136]
    00596944ldr x13, [sp+104]
    00596948adcs x14, x13, x12
    0059694cadds x14, x10, x4
    00596950adcs x14, x11, x9
    00596954adcs x14, x13, x12
    00596958str x14, [sp+1920]
    0059695cadds x4, x10, x4
    00596960adcs x4, x11, x9
    00596964adcs x4, x13, x12
    00596968adc x4, xzr, xzr
    0059696cstr x4, [sp+1928]
    00596970str x14, [sp+2680]
    00596974str x4, [sp+2672]
    00596978str x14, [sp+1504]
    0059697cstr x4, [sp+1496]
    00596980ldr x9, [sp+128]
    00596984add x4, x4, x9
    00596988str x4, [sp+1488]
    0059698cstr xzr, [sp+1480]
    00596990str xzr, [sp+1472]
    00596994ldr x4, [sp+80]
    00596998ldr x9, [sp+216]
    0059699cadds x10, x9, x4
    005969a0adc x10, xzr, xzr
    005969a4adds x11, x9, x4
    005969a8str x11, [sp+1928]
    005969acstr x10, [sp+1920]
    005969b0str x11, [sp+2664]
    005969b4str x10, [sp+2656]
    005969b8str x11, [sp+1480]
    005969bcstr x10, [sp+1472]
    005969c0str xzr, [sp+1464]
    005969c4str xzr, [sp+1456]
    005969c8ldr x10, [sp+64]
    005969ccldr x11, [sp+192]
    005969d0adds x12, x9, x4
    005969d4adcs x12, x11, x10
    005969d8adds x12, x9, x4
    005969dcadcs x12, x11, x10
    005969e0str x12, [sp+1920]
    005969e4adds x13, x9, x4
    005969e8adcs x13, x11, x10
    005969ecadc x13, xzr, xzr
    005969f0str x13, [sp+1928]
    005969f4str x12, [sp+2648]
    005969f8str x13, [sp+2640]
    005969fcstr x12, [sp+1464]
    00596a00str x13, [sp+1456]
    00596a04str xzr, [sp+1448]
    00596a08str xzr, [sp+1440]
    00596a0cldr x12, [sp+48]
    00596a10ldr x13, [sp+176]
    00596a14adcs x14, x13, x12
    00596a18adds x14, x9, x4
    00596a1cadcs x14, x11, x10
    00596a20adcs x14, x13, x12
    00596a24str x14, [sp+1928]
    00596a28adds x15, x9, x4
    00596a2cadcs x15, x11, x10
    00596a30adcs x15, x13, x12
    00596a34adc x15, xzr, xzr
    00596a38str x15, [sp+1920]
    00596a3cstr x14, [sp+2632]
    00596a40str x15, [sp+2624]
    00596a44str x14, [sp+1448]
    00596a48str x15, [sp+1440]
    00596a4cstr xzr, [sp+1432]
    00596a50str xzr, [sp+1416]
    00596a54ldr x14, [sp+1504]
    00596a58ldr x15, [sp+160]
    00596a5cadcs x16, x15, x14
    00596a60adds x16, x9, x4
    00596a64adcs x16, x11, x10
    00596a68adcs x16, x13, x12
    00596a6cadcs x16, x15, x14
    00596a70str x16, [sp+1920]
    00596a74adds x17, x9, x4
    00596a78adcs x17, x11, x10
    00596a7cadcs x17, x13, x12
    00596a80adcs x17, x15, x14
    00596a84adc x17, xzr, xzr
    00596a88str x17, [sp+1928]
    00596a8cstr x16, [sp+2616]
    00596a90str x17, [sp+2608]
    00596a94str x16, [sp+1432]
    00596a98str x17, [sp+1416]
    00596a9cstr xzr, [sp+1408]
    00596aa0str xzr, [sp+1400]
    00596aa4ldr x16, [sp+1488]
    00596aa8ldr x17, [sp+144]
    00596aacadcs x19, x17, x16
    00596ab0adds x19, x9, x4
    00596ab4adcs x19, x11, x10
    00596ab8adcs x19, x13, x12
    00596abcadcs x19, x15, x14
    00596ac0adcs x19, x17, x16
    00596ac4str x19, [sp+1928]
    00596ac8adds x4, x9, x4
    00596accadcs x4, x11, x10
    00596ad0adcs x4, x13, x12
    00596ad4adcs x4, x15, x14
    00596ad8adcs x4, x17, x16
    00596adcadc x4, xzr, xzr
    00596ae0str x4, [sp+1920]
    00596ae4str x19, [sp+2592]
    00596ae8str x4, [sp+2584]
    00596aecstr x19, [sp+1408]
    00596af0str x4, [sp+1400]
    00596af4str xzr, [sp+1392]
    00596af8ldr x4, [sp+1480]
    00596afcmadd x9, x4, x5, xzr
    00596b00umulh x4, x4, x5
    00596b04str x4, [sp+1920]
    00596b08str x9, [sp+1928]
    00596b0cstr x4, [sp+2576]
    00596b10str x9, [sp+2568]
    00596b14str x9, [sp+1392]
    00596b18str xzr, [sp+1384]
    00596b1cstr xzr, [sp+1376]
    00596b20ubfm x4, x9, 4, 3
    00596b24umulh x9, x9, x7
    00596b28str x9, [sp+1928]
    00596b2cstr x4, [sp+1920]
    00596b30str x9, [sp+2560]
    00596b34str x4, [sp+2552]
    00596b38str x9, [sp+1376]
    00596b3cstr x4, [sp+1384]
    00596b40str xzr, [sp+1368]
    00596b44str xzr, [sp+1360]
    00596b48ldr x4, [sp+1392]
    00596b4cumulh x9, x4, x6
    00596b50str x9, [sp+1920]
    00596b54madd x4, x4, x6, xzr
    00596b58str x4, [sp+1928]
    00596b5cstr x9, [sp+2536]
    00596b60str x4, [sp+2528]
    00596b64str x9, [sp+1360]
    00596b68str x4, [sp+1368]
    00596b6cstr xzr, [sp+1352]
    00596b70str xzr, [sp+1336]
    00596b74ldr x4, [sp+1392]
    00596b78umulh x9, x4, x8
    00596b7cstr x9, [sp+1928]
    00596b80madd x4, x4, x8, xzr
    00596b84str x4, [sp+1920]
    00596b88str x9, [sp+2520]
    00596b8cstr x4, [sp+2512]
    00596b90str x9, [sp+1336]
    00596b94str x4, [sp+1352]
    00596b98str xzr, [sp+1328]
    00596b9cstr xzr, [sp+1320]
    00596ba0ldr x4, [sp+1368]
    00596ba4adds x10, x9, x4
    00596ba8adc x10, xzr, xzr
    00596bacadds x4, x9, x4
    00596bb0str x4, [sp+1920]
    00596bb4str x10, [sp+1928]
    00596bb8str x4, [sp+2504]
    00596bbcstr x10, [sp+2496]
    00596bc0str x4, [sp+1328]
    00596bc4str x10, [sp+1320]
    00596bc8ldr x4, [sp+1360]
    00596bccadd x4, x10, x4
    00596bd0str x4, [sp+1312]
    00596bd4str xzr, [sp+1304]
    00596bd8ldr x4, [sp+1352]
    00596bdcldr x9, [sp+1480]
    00596be0adds x10, x9, x4
    00596be4adc x10, xzr, xzr
    00596be8adds x11, x9, x4
    00596becstr x11, [sp+1928]
    00596bf0str x10, [sp+1920]
    00596bf4str x11, [sp+2488]
    00596bf8str x10, [sp+2480]
    00596bfcstr x10, [sp+1304]
    00596c00str xzr, [sp+1296]
    00596c04str xzr, [sp+1288]
    00596c08ldr x10, [sp+1328]
    00596c0cldr x11, [sp+1464]
    00596c10adds x12, x9, x4
    00596c14adcs x12, x11, x10
    00596c18adds x12, x9, x4
    00596c1cadcs x12, x11, x10
    00596c20str x12, [sp+1920]
    00596c24adds x13, x9, x4
    00596c28adcs x13, x11, x10
    00596c2cadc x13, xzr, xzr
    00596c30str x13, [sp+1928]
    00596c34str x12, [sp+2472]
    00596c38str x13, [sp+2464]
    00596c3cstr x12, [sp+1296]
    00596c40str x13, [sp+1288]
    00596c44str xzr, [sp+1280]
    00596c48str xzr, [sp+1272]
    00596c4cldr x12, [sp+1312]
    00596c50ldr x13, [sp+1448]
    00596c54adcs x14, x13, x12
    00596c58adds x14, x9, x4
    00596c5cadcs x14, x11, x10
    00596c60adcs x14, x13, x12
    00596c64str x14, [sp+1928]
    00596c68adds x15, x9, x4
    00596c6cadcs x15, x11, x10
    00596c70adcs x15, x13, x12
    00596c74adc x15, xzr, xzr
    00596c78str x15, [sp+1920]
    00596c7cstr x14, [sp+2456]
    00596c80str x15, [sp+2448]
    00596c84str x14, [sp+1280]
    00596c88str x15, [sp+1272]
    00596c8cstr xzr, [sp+1256]
    00596c90str xzr, [sp+1248]
    00596c94ldr x14, [sp+1384]
    00596c98ldr x15, [sp+1432]
    00596c9cadcs x16, x15, x14
    00596ca0adds x16, x9, x4
    00596ca4adcs x16, x11, x10
    00596ca8adcs x16, x13, x12
    00596cacadcs x16, x15, x14
    00596cb0str x16, [sp+1920]
    00596cb4adds x17, x9, x4
    00596cb8adcs x17, x11, x10
    00596cbcadcs x17, x13, x12
    00596cc0adcs x17, x15, x14
    00596cc4adc x17, xzr, xzr
    00596cc8str x17, [sp+1928]
    00596cccstr x16, [sp+2440]
    00596cd0str x17, [sp+2432]
    00596cd4str x16, [sp+1256]
    00596cd8str x17, [sp+1248]
    00596cdcstr xzr, [sp+1240]
    00596ce0str xzr, [sp+1232]
    00596ce4ldr x16, [sp+1376]
    00596ce8ldr x17, [sp+1408]
    00596cecadcs x19, x17, x16
    00596cf0adds x19, x9, x4
    00596cf4adcs x19, x11, x10
    00596cf8adcs x19, x13, x12
    00596cfcadcs x19, x15, x14
    00596d00adcs x19, x17, x16
    00596d04str x19, [sp+1928]
    00596d08adds x4, x9, x4
    00596d0cadcs x4, x11, x10
    00596d10adcs x4, x13, x12
    00596d14adcs x4, x15, x14
    00596d18adcs x4, x17, x16
    00596d1cadc x4, xzr, xzr
    00596d20str x4, [sp+1920]
    00596d24str x19, [sp+2416]
    00596d28str x4, [sp+2408]
    00596d2cstr x19, [sp+1240]
    00596d30str x4, [sp+1232]
    00596d34ldr x9, [sp+1400]
    00596d38add x4, x4, x9
    00596d3cstr x4, [sp+1224]
    00596d40str xzr, [sp+1216]
    00596d44str xzr, [sp+1208]
    00596d48ldr x4, [sp+3112]
    00596d4cldrsb x27, [x4]
    00596d50ldr x4, [x4+24]
    00596d54str x4, [sp+1808]
    00596d58ldr x9, [sp+624]
    00596d5cumulh x10, x9, x4
    00596d60str x10, [sp+1920]
    00596d64madd x4, x9, x4, xzr
    00596d68str x4, [sp+1928]
    00596d6cstr x10, [sp+2400]
    00596d70str x4, [sp+2392]
    00596d74str x10, [sp+1208]
    00596d78str x4, [sp+1216]
    00596d7cstr xzr, [sp+1200]
    00596d80str xzr, [sp+1192]
    00596d84ldr x4, [sp+3112]
    00596d88ldrsb x27, [x4]
    00596d8cldr x4, [x4+16]
    00596d90str x4, [sp+1792]
    00596d94ldr x9, [sp+624]
    00596d98umulh x10, x9, x4
    00596d9cstr x10, [sp+1928]
    00596da0madd x4, x9, x4, xzr
    00596da4str x4, [sp+1920]
    00596da8str x10, [sp+2384]
    00596dacstr x4, [sp+2368]
    00596db0str x10, [sp+1192]
    00596db4str x4, [sp+1200]
    00596db8str xzr, [sp+1184]
    00596dbcstr xzr, [sp+1168]
    00596dc0ldr x4, [sp+3112]
    00596dc4ldrsb x27, [x4]
    00596dc8ldr x4, [x4+8]
    00596dccstr x4, [sp+1784]
    00596dd0ldr x9, [sp+624]
    00596dd4umulh x10, x9, x4
    00596dd8str x10, [sp+1920]
    00596ddcmadd x4, x9, x4, xzr
    00596de0str x4, [sp+1928]
    00596de4str x10, [sp+2360]
    00596de8str x4, [sp+2352]
    00596decstr x10, [sp+1168]
    00596df0str x4, [sp+1184]
    00596df4str xzr, [sp+1160]
    00596df8str xzr, [sp+1152]
    00596dfcldr x4, [sp+3112]
    00596e00ldrsb x27, [x4]
    00596e04ldr x4, [x4]
    00596e08str x4, [sp+1776]
    00596e0cldr x9, [sp+624]
    00596e10umulh x10, x9, x4
    00596e14str x10, [sp+1928]
    00596e18madd x4, x9, x4, xzr
    00596e1cstr x4, [sp+1920]
    00596e20str x10, [sp+2344]
    00596e24str x4, [sp+2336]
    00596e28str x10, [sp+1152]
    00596e2cstr x4, [sp+1160]
    00596e30str xzr, [sp+1144]
    00596e34str xzr, [sp+1136]
    00596e38ldr x4, [sp+1184]
    00596e3cadds x9, x10, x4
    00596e40adc x9, xzr, xzr
    00596e44adds x11, x10, x4
    00596e48str x11, [sp+1920]
    00596e4cstr x9, [sp+1928]
    00596e50str x11, [sp+2328]
    00596e54str x9, [sp+2320]
    00596e58str x11, [sp+1144]
    00596e5cstr x9, [sp+1136]
    00596e60str xzr, [sp+1128]
    00596e64str xzr, [sp+1120]
    00596e68ldr x9, [sp+1200]
    00596e6cldr x11, [sp+1168]
    00596e70adds x12, x10, x4
    00596e74adcs x12, x11, x9
    00596e78adds x12, x10, x4
    00596e7cadcs x12, x11, x9
    00596e80str x12, [sp+1928]
    00596e84adds x13, x10, x4
    00596e88adcs x13, x11, x9
    00596e8cadc x13, xzr, xzr
    00596e90str x13, [sp+1920]
    00596e94str x12, [sp+2312]
    00596e98str x13, [sp+2304]
    00596e9cstr x12, [sp+1128]
    00596ea0str x13, [sp+1120]
    00596ea4str xzr, [sp+1112]
    00596ea8str xzr, [sp+1104]
    00596eacldr x12, [sp+1216]
    00596eb0ldr x13, [sp+1192]
    00596eb4adcs x14, x13, x12
    00596eb8adds x14, x10, x4
    00596ebcadcs x14, x11, x9
    00596ec0adcs x14, x13, x12
    00596ec4str x14, [sp+1920]
    00596ec8adds x4, x10, x4
    00596eccadcs x4, x11, x9
    00596ed0adcs x4, x13, x12
    00596ed4adc x4, xzr, xzr
    00596ed8str x4, [sp+1928]
    00596edcstr x14, [sp+2296]
    00596ee0str x4, [sp+2288]
    00596ee4str x14, [sp+1112]
    00596ee8str x4, [sp+1104]
    00596eecldr x9, [sp+1208]
    00596ef0add x4, x4, x9
    00596ef4str x4, [sp+1096]
    00596ef8str xzr, [sp+1080]
    00596efcstr xzr, [sp+1072]
    00596f00ldr x4, [sp+1160]
    00596f04ldr x9, [sp+1296]
    00596f08adds x10, x9, x4
    00596f0cadc x10, xzr, xzr
    00596f10adds x11, x9, x4
    00596f14str x11, [sp+1928]
    00596f18str x10, [sp+1920]
    00596f1cstr x11, [sp+2280]
    00596f20str x10, [sp+2272]
    00596f24str x11, [sp+1080]
    00596f28str x10, [sp+1072]
    00596f2cstr xzr, [sp+1064]
    00596f30str xzr, [sp+1056]
    00596f34ldr x10, [sp+1144]
    00596f38ldr x11, [sp+1280]
    00596f3cadds x12, x9, x4
    00596f40adcs x12, x11, x10
    00596f44adds x12, x9, x4
    00596f48adcs x12, x11, x10
    00596f4cstr x12, [sp+1920]
    00596f50adds x13, x9, x4
    00596f54adcs x13, x11, x10
    00596f58adc x13, xzr, xzr
    00596f5cstr x13, [sp+1928]
    00596f60str x12, [sp+2264]
    00596f64str x13, [sp+2256]
    00596f68str x12, [sp+1064]
    00596f6cstr x13, [sp+1056]
    00596f70str xzr, [sp+1048]
    00596f74str xzr, [sp+1040]
    00596f78ldr x12, [sp+1128]
    00596f7cldr x13, [sp+1256]
    00596f80adcs x14, x13, x12
    00596f84adds x14, x9, x4
    00596f88adcs x14, x11, x10
    00596f8cadcs x14, x13, x12
    00596f90str x14, [sp+1928]
    00596f94adds x15, x9, x4
    00596f98adcs x15, x11, x10
    00596f9cadcs x15, x13, x12
    00596fa0adc x15, xzr, xzr
    00596fa4str x15, [sp+1920]
    00596fa8str x14, [sp+2240]
    00596facstr x15, [sp+2232]
    00596fb0str x14, [sp+1048]
    00596fb4str x15, [sp+1040]
    00596fb8str xzr, [sp+1032]
    00596fbcstr xzr, [sp+1024]
    00596fc0ldr x14, [sp+1112]
    00596fc4ldr x15, [sp+1240]
    00596fc8adcs x16, x15, x14
    00596fccadds x16, x9, x4
    00596fd0adcs x16, x11, x10
    00596fd4adcs x16, x13, x12
    00596fd8adcs x16, x15, x14
    00596fdcstr x16, [sp+1920]
    00596fe0adds x17, x9, x4
    00596fe4adcs x17, x11, x10
    00596fe8adcs x17, x13, x12
    00596fecadcs x17, x15, x14
    00596ff0adc x17, xzr, xzr
    00596ff4str x17, [sp+1928]
    00596ff8str x16, [sp+2224]
    00596ffcstr x17, [sp+2216]
    00597000str x16, [sp+1032]
    00597004str x17, [sp+1024]
    00597008str xzr, [sp+1016]
    0059700cstr xzr, [sp+1008]
    00597010ldr x16, [sp+1096]
    00597014ldr x17, [sp+1224]
    00597018adcs x19, x17, x16
    0059701cadds x19, x9, x4
    00597020adcs x19, x11, x10
    00597024adcs x19, x13, x12
    00597028adcs x19, x15, x14
    0059702cadcs x19, x17, x16
    00597030str x19, [sp+1928]
    00597034adds x4, x9, x4
    00597038adcs x4, x11, x10
    0059703cadcs x4, x13, x12
    00597040adcs x4, x15, x14
    00597044adcs x4, x17, x16
    00597048adc x4, xzr, xzr
    0059704cstr x4, [sp+1920]
    00597050str x19, [sp+2200]
    00597054str x4, [sp+2192]
    00597058str x19, [sp+1016]
    0059705cstr x4, [sp+1008]
    00597060str xzr, [sp+992]
    00597064ldr x4, [sp+1080]
    00597068madd x9, x4, x5, xzr
    0059706cumulh x4, x4, x5
    00597070str x4, [sp+1920]
    00597074str x9, [sp+1928]
    00597078str x4, [sp+2184]
    0059707cstr x9, [sp+2176]
    00597080str x9, [sp+992]
    00597084str xzr, [sp+984]
    00597088str xzr, [sp+976]
    0059708cubfm x4, x9, 4, 3
    00597090umulh x5, x9, x7
    00597094str x5, [sp+1928]
    00597098str x4, [sp+1920]
    0059709cstr x5, [sp+2168]
    005970a0str x4, [sp+2160]
    005970a4str x5, [sp+976]
    005970a8str x4, [sp+984]
    005970acstr xzr, [sp+968]
    005970b0str xzr, [sp+960]
    005970b4ldr x4, [sp+992]
    005970b8umulh x5, x4, x6
    005970bcstr x5, [sp+1920]
    005970c0madd x4, x4, x6, xzr
    005970c4str x4, [sp+1928]
    005970c8str x5, [sp+2152]
    005970ccstr x4, [sp+2144]
    005970d0str x5, [sp+960]
    005970d4str x4, [sp+968]
    005970d8str xzr, [sp+952]
    005970dcstr xzr, [sp+944]
    005970e0ldr x4, [sp+992]
    005970e4umulh x5, x4, x8
    005970e8str x5, [sp+1928]
    005970ecmadd x4, x4, x8, xzr
    005970f0str x4, [sp+1920]
    005970f4str x5, [sp+2136]
    005970f8str x4, [sp+2128]
    005970fcstr x5, [sp+944]
    00597100str x4, [sp+952]
    00597104str xzr, [sp+936]
    00597108str xzr, [sp+928]
    0059710cldr x4, [sp+968]
    00597110adds x9, x5, x4
    00597114adc x9, xzr, xzr
    00597118adds x4, x5, x4
    0059711cstr x4, [sp+1920]
    00597120str x9, [sp+1928]
    00597124str x4, [sp+2120]
    00597128str x9, [sp+2112]
    0059712cstr x4, [sp+936]
    00597130str x9, [sp+928]
    00597134ldr x4, [sp+960]
    00597138add x4, x9, x4
    0059713cstr x4, [sp+912]
    00597140str xzr, [sp+904]
    00597144ldr x4, [sp+952]
    00597148ldr x5, [sp+1080]
    0059714cadds x9, x5, x4
    00597150adc x9, xzr, xzr
    00597154adds x10, x5, x4
    00597158str x10, [sp+1928]
    0059715cstr x9, [sp+1920]
    00597160str x10, [sp+2104]
    00597164str x9, [sp+2096]
    00597168str x9, [sp+904]
    0059716cstr xzr, [sp+896]
    00597170str xzr, [sp+888]
    00597174ldr x9, [sp+936]
    00597178ldr x10, [sp+1064]
    0059717cadds x11, x5, x4
    00597180adcs x11, x10, x9
    00597184adds x11, x5, x4
    00597188adcs x11, x10, x9
    0059718cstr x11, [sp+1920]
    00597190adds x12, x5, x4
    00597194adcs x12, x10, x9
    00597198adc x12, xzr, xzr
    0059719cstr x12, [sp+1928]
    005971a0str x11, [sp+2088]
    005971a4str x12, [sp+2080]
    005971a8str x11, [sp+896]
    005971acstr x12, [sp+888]
    005971b0str xzr, [sp+880]
    005971b4str xzr, [sp+872]
    005971b8ldr x11, [sp+912]
    005971bcldr x12, [sp+1048]
    005971c0adcs x13, x12, x11
    005971c4adds x13, x5, x4
    005971c8adcs x13, x10, x9
    005971ccadcs x13, x12, x11
    005971d0str x13, [sp+1928]
    005971d4adds x14, x5, x4
    005971d8adcs x14, x10, x9
    005971dcadcs x14, x12, x11
    005971e0adc x14, xzr, xzr
    005971e4str x14, [sp+1920]
    005971e8str x13, [sp+2064]
    005971ecstr x14, [sp+2056]
    005971f0str x13, [sp+880]
    005971f4str x14, [sp+872]
    005971f8str xzr, [sp+864]
    005971fcstr xzr, [sp+856]
    00597200ldr x13, [sp+984]
    00597204ldr x14, [sp+1032]
    00597208adcs x15, x14, x13
    0059720cadds x15, x5, x4
    00597210adcs x15, x10, x9
    00597214adcs x15, x12, x11
    00597218adcs x15, x14, x13
    0059721cstr x15, [sp+1920]
    00597220adds x16, x5, x4
    00597224adcs x16, x10, x9
    00597228adcs x16, x12, x11
    0059722cadcs x16, x14, x13
    00597230adc x16, xzr, xzr
    00597234str x16, [sp+1928]
    00597238str x15, [sp+2048]
    0059723cstr x16, [sp+2040]
    00597240str x15, [sp+864]
    00597244str x16, [sp+856]
    00597248str xzr, [sp+848]
    0059724cstr xzr, [sp+832]
    00597250ldr x15, [sp+976]
    00597254ldr x16, [sp+1016]
    00597258adcs x17, x16, x15
    0059725cadds x17, x5, x4
    00597260adcs x17, x10, x9
    00597264adcs x17, x12, x11
    00597268adcs x17, x14, x13
    0059726cadcs x17, x16, x15
    00597270str x17, [sp+1928]
    00597274adds x4, x5, x4
    00597278adcs x4, x10, x9
    0059727cadcs x4, x12, x11
    00597280adcs x4, x14, x13
    00597284adcs x4, x16, x15
    00597288adc x4, xzr, xzr
    0059728cstr x4, [sp+1920]
    00597290str x17, [sp+2032]
    00597294str x4, [sp+2016]
    00597298str x17, [sp+848]
    0059729cstr x4, [sp+832]
    005972a0ldr x5, [sp+1008]
    005972a4add x4, x4, x5
    005972a8str x4, [sp+824]
    005972acstr xzr, [sp+816]
    005972b0str xzr, [sp+808]
    005972b4ldr x4, [sp+896]
    005972b8subs x5, x4, x8
    005972bcsbc x5, xzr, xzr
    005972c0sub x5, xzr, x5
    005972c4subs x9, x4, x8
    005972c8str x9, [sp+1920]
    005972ccstr x5, [sp+1928]
    005972d0str x9, [sp+2008]
    005972d4str x5, [sp+2000]
    005972d8str x9, [sp+816]
    005972dcstr x5, [sp+808]
    005972e0str xzr, [sp+800]
    005972e4str xzr, [sp+792]
    005972e8ldr x5, [sp+880]
    005972ecsubs x9, x4, x8
    005972f0sbcs x9, x5, x6
    005972f4subs x9, x4, x8
    005972f8sbcs x9, x5, x6
    005972fcstr x9, [sp+1928]
    00597300subs x10, x4, x8
    00597304sbcs x10, x5, x6
    00597308sbc x10, xzr, xzr
    0059730csub x10, xzr, x10
    00597310str x10, [sp+1920]
    00597314str x9, [sp+1992]
    00597318str x10, [sp+1984]
    0059731cstr x9, [sp+800]
    00597320str x10, [sp+792]
    00597324str xzr, [sp+784]
    00597328str xzr, [sp+776]
    0059732cldr x9, [sp+864]
    00597330mov x10, xzr
    00597334sbcs x11, x9, x10
    00597338subs x11, x4, x8
    0059733csbcs x11, x5, x6
    00597340sbcs x11, x9, x10
    00597344str x11, [sp+1920]
    00597348subs x12, x4, x8
    0059734csbcs x12, x5, x6
    00597350sbcs x12, x9, x10
    00597354sbc x12, xzr, xzr
    00597358sub x12, xzr, x12
    0059735cstr x12, [sp+1928]
    00597360str x11, [sp+1976]
    00597364str x12, [sp+1968]
    00597368str x11, [sp+784]
    0059736cstr x12, [sp+776]
    00597370str xzr, [sp+768]
    00597374str xzr, [sp+760]
    00597378ldr x11, [sp+848]
    0059737csbcs x12, x11, x7
    00597380subs x12, x4, x8
    00597384sbcs x12, x5, x6
    00597388sbcs x12, x9, x10
    0059738csbcs x12, x11, x7
    00597390str x12, [sp+1928]
    00597394subs x13, x4, x8
    00597398sbcs x13, x5, x6
    0059739csbcs x13, x9, x10
    005973a0sbcs x13, x11, x7
    005973a4sbc x13, xzr, xzr
    005973a8sub x13, xzr, x13
    005973acstr x13, [sp+1920]
    005973b0str x12, [sp+1960]
    005973b4str x13, [sp+1952]
    005973b8str x12, [sp+768]
    005973bcstr x13, [sp+760]
    005973c0str xzr, [sp+744]
    005973c4ldr x12, [sp+824]
    005973c8sbcs x13, x12, x10
    005973ccsubs x13, x4, x8
    005973d0sbcs x13, x5, x6
    005973d4sbcs x13, x9, x10
    005973d8sbcs x13, x11, x7
    005973dcsbcs x13, x12, x10
    005973e0str x13, [sp+1920]
    005973e4subs x4, x4, x8
    005973e8sbcs x4, x5, x6
    005973ecsbcs x4, x9, x10
    005973f0sbcs x4, x11, x7
    005973f4sbcs x4, x12, x10
    005973f8sbc x4, xzr, xzr
    005973fcsub x1, xzr, x4
    00597400str x1, [sp+1928]
    00597404str x13, [sp+1944]
    00597408str x1, [sp+1936]
    0059740cstr x1, [sp+744]
    00597410str xzr, [sp+736]
    00597414ldr x2, [sp+816]
    00597418ldr x3, [sp+896]
    0059741cadd x0, sp, 736
    00597420bl crypto/internal/fips140/edwards25519.fiatScalarCmovznzU64
    00597424str xzr, [sp+728]
    00597428ldr x2, [sp+800]
    0059742cldr x3, [sp+880]
    00597430ldr x1, [sp+744]
    00597434add x0, sp, 728
    00597438bl crypto/internal/fips140/edwards25519.fiatScalarCmovznzU64
    0059743cstr xzr, [sp+720]
    00597440ldr x2, [sp+784]
    00597444ldr x3, [sp+864]
    00597448ldr x1, [sp+744]
    0059744cadd x0, sp, 720
    00597450bl crypto/internal/fips140/edwards25519.fiatScalarCmovznzU64
    00597454str xzr, [sp+712]
    00597458ldr x2, [sp+768]
    0059745cldr x3, [sp+848]
    00597460ldr x1, [sp+744]
    00597464add x0, sp, 712
    00597468bl crypto/internal/fips140/edwards25519.fiatScalarCmovznzU64
    0059746cldr x4, [sp+3096]
    00597470ldrsb x27, [x4]
    00597474ldr x5, [sp+736]
    00597478str x5, [x4]
    0059747cldr x4, [sp+3096]
    00597480ldrsb x27, [x4]
    00597484ldr x5, [sp+728]
    00597488str x5, [x4+8]
    0059748cldr x4, [sp+3096]
    00597490ldrsb x27, [x4]
    00597494ldr x5, [sp+720]
    00597498str x5, [x4+16]
    0059749cldr x4, [sp+3096]
    005974a0ldrsb x27, [x4]
    005974a4ldr x5, [sp+712]
    005974a8str x5, [x4+24]
    005974acldp x29, x30, [sp-8]
    005974b0add sp, sp, 3088
    005974b4ret x30
    005974b8
    005974b8loc_5974b8:
    005974b8stp x0, x1, [sp+8]
    005974bcstr x2, [sp+24]
    005974c0mov x3, x30
    005974c4bl runtime.morestack_noctxt.abi0
    005974c8ldp x0, x1, [sp+8]
    005974ccldr x2, [sp+24]
    005974d0b 0x595de0
    005974d4udf 0
    005974d8udf 0
    005974dcudf 0
    00595de0