File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    002c0760
    002c0760crypto/ed25519.PrivateKey.Public: ; void crypto/ed25519.PrivateKey.Public(crypto/ed25519.PrivateKey priv)
    002c0760ldr x16, [x28+16]
    002c0764sub x17, sp, 48
    002c0768subs xzr, x17, x16
    002c076cb.ls 0x2c08b4
    002c0770str x30, [sp-176]!
    002c0774stur x29, [sp-8]
    002c0778sub x29, sp, 8
    002c077cstr x0, [sp+184]
    002c0780str x1, [sp+192]
    002c0784str x2, [sp+200]
    002c0788stp xzr, xzr, [sp+48]
    002c078cadrp x0, 0x335000
    002c0790add x0, x0, 3072
    002c0794orr x1, xzr, 32
    002c0798mov x2, x1
    002c079cbl runtime.makeslice
    002c07a0str x0, [sp+64]
    002c07a4orr x0, xzr, 32
    002c07a8str x0, [sp+72]
    002c07acstr x0, [sp+80]
    002c07b0ldr x1, [sp+192]
    002c07b4ldr x3, [sp+184]
    002c07b8ldr x4, [sp+200]
    002c07bcb 0x2c07c0
    002c07c0
    002c07c0loc_2c07c0:
    002c07c0subs xzr, x1, 32
    002c07c4b.hs 0x2c07cc
    002c07c8b 0x2c08ac
    002c07cc
    002c07ccloc_2c07cc:
    002c07ccsub x4, x4, 32
    002c07d0sub x5, xzr, x4
    002c07d4sub x6, x1, 32
    002c07d8sbfm x5, x5, 63, 63
    002c07dcand x5, x5, 32
    002c07e0add x3, x3, x5
    002c07e4str x3, [sp+144]
    002c07e8str x6, [sp+152]
    002c07ecstr x4, [sp+160]
    002c07f0ldr x3, [sp+64]
    002c07f4ldr x4, [sp+72]
    002c07f8ldr x5, [sp+80]
    002c07fcstr x3, [sp+120]
    002c0800str x4, [sp+128]
    002c0804str x5, [sp+136]
    002c0808ldr x3, [sp+152]
    002c080cldr x4, [sp+144]
    002c0810ldr x5, [sp+160]
    002c0814str x4, [sp+96]
    002c0818str x3, [sp+104]
    002c081cstr x5, [sp+112]
    002c0820ldr x4, [sp+128]
    002c0824str x4, [sp+40]
    002c0828subs xzr, x4, x3
    002c082cb.gt 0x2c0834
    002c0830b 0x2c083c
    002c0834
    002c0834loc_2c0834:
    002c0834str x3, [sp+40]
    002c0838b 0x2c0840
    002c083c
    002c083cloc_2c083c:
    002c083cb 0x2c0840
    002c0840
    002c0840loc_2c0840:
    002c0840ldr x3, [sp+96]
    002c0844ldr x4, [sp+120]
    002c0848subs xzr, x3, x4
    002c084cb.ne 0x2c0854
    002c0850b 0x2c0870
    002c0854
    002c0854loc_2c0854:
    002c0854ldr x3, [sp+40]
    002c0858str x3, [sp+32]
    002c085cldr x2, [sp+32]
    002c0860ldr x1, [sp+96]
    002c0864ldr x0, [sp+120]
    002c0868bl runtime.memmove
    002c086cb 0x2c0874
    002c0870
    002c0870loc_2c0870:
    002c0870b 0x2c0874
    002c0874
    002c0874loc_2c0874:
    002c0874ldr x0, [sp+64]
    002c0878ldr x1, [sp+72]
    002c087cldr x2, [sp+80]
    002c0880bl runtime.convTslice
    002c0884str x0, [sp+88]
    002c0888adrp x3, 0x352000
    002c088cadd x3, x3, 2560
    002c0890str x3, [sp+48]
    002c0894str x0, [sp+56]
    002c0898ldr x0, [sp+48]
    002c089cldr x1, [sp+56]
    002c08a0ldur x29, [sp-8]
    002c08a4ldr x30, [sp], 176
    002c08a8ret x30
    002c08ac
    002c08acloc_2c08ac:
    002c08acbl runtime.panicSliceB
    002c08b0hint
    002c08b4
    002c08b4loc_2c08b4:
    002c08b4stp x0, x1, [sp+8]
    002c08b8str x2, [sp+24]
    002c08bcmov x3, x30
    002c08c0bl runtime.morestack_noctxt.abi0
    002c08c4ldp x0, x1, [sp+8]
    002c08c8ldr x2, [sp+24]
    002c08ccb 0x2c0760
    002c0760
    002c08d0
    002c08d0crypto/ed25519.PrivateKey.Sign: ; void crypto/ed25519.PrivateKey.Sign(crypto/ed25519.PrivateKey priv, io.Reader rand, struct []uint8 message, crypto.SignerOpts opts)
    002c08d0ldr x16, [x28+16]
    002c08d4sub x17, sp, 192
    002c08d8subs xzr, x17, x16
    002c08dcb.ls 0x2c0ce8
    002c08e0sub x20, sp, 320
    002c08e4stp x29, x30, [x20-8]
    002c08e8add sp, x20, 0
    002c08ecsub x29, sp, 8
    002c08f0str x0, [sp+328]
    002c08f4str x1, [sp+336]
    002c08f8str x2, [sp+344]
    002c08fcstr x3, [sp+352]
    002c0900str x4, [sp+360]
    002c0904str x5, [sp+368]
    002c0908str x6, [sp+376]
    002c090cstr x7, [sp+384]
    002c0910str x8, [sp+392]
    002c0914str x9, [sp+400]
    002c0918str xzr, [sp+72]
    002c091cstp xzr, xzr, [sp+80]
    002c0920stp xzr, xzr, [sp+112]
    002c0924str xzr, [sp+216]
    002c0928stp xzr, xzr, [sp+200]
    002c092cldr x0, [sp+328]
    002c0930ldr x1, [sp+336]
    002c0934ldr x2, [sp+344]
    002c0938bl crypto/internal/fips140/ed25519.NewPrivateKey
    002c093cstr x0, [sp+216]
    002c0940str x1, [sp+200]
    002c0944str x2, [sp+208]
    002c0948ldr x3, [sp+216]
    002c094cstr x3, [sp+160]
    002c0950ldr x3, [sp+208]
    002c0954ldr x4, [sp+200]
    002c0958str x4, [sp+144]
    002c095cstr x3, [sp+152]
    002c0960ldr x3, [sp+160]
    002c0964str x3, [sp+104]
    002c0968ldr x3, [sp+152]
    002c096cldr x4, [sp+144]
    002c0970str x4, [sp+112]
    002c0974str x3, [sp+120]
    002c0978cbnz x4, 0x2c0980
    002c097cb 0x2c09a8
    002c0980
    002c0980loc_2c0980:
    002c0980str xzr, [sp+72]
    002c0984stp xzr, xzr, [sp+80]
    002c0988ldr x3, [sp+112]
    002c098cldr x4, [sp+120]
    002c0990mov x0, xzr
    002c0994mov x1, xzr
    002c0998mov x2, x1
    002c099cldp x29, x30, [sp-8]
    002c09a0add sp, sp, 320
    002c09a4ret x30
    002c09a8
    002c09a8loc_2c09a8:
    002c09a8ldr x1, [sp+392]
    002c09acldrsb x27, [x1]
    002c09b0ldr x1, [x1+24]
    002c09b4ldr x0, [sp+400]
    002c09b8blr x1
    002c09bcstr x0, [sp+64]
    002c09c0stp xzr, xzr, [sp+128]
    002c09c4str xzr, [sp+192]
    002c09c8ldr x1, [sp+392]
    002c09ccldr x2, [sp+400]
    002c09d0adrp x3, 0x456000
    002c09d4add x3, x3, 832
    002c09d8subs xzr, x1, x3
    002c09dcb.eq 0x2c09e4
    002c09e0b 0x2c09ec
    002c09e4
    002c09e4loc_2c09e4:
    002c09e4orr x0, xzr, 1
    002c09e8b 0x2c09f8
    002c09ec
    002c09ecloc_2c09ec:
    002c09ecmov x0, xzr
    002c09f0mov x2, xzr
    002c09f4b 0x2c09f8
    002c09f8
    002c09f8loc_2c09f8:
    002c09f8str x2, [sp+192]
    002c09fcstrb w0, [sp+62]
    002c0a00ldr x6, [sp+192]
    002c0a04str x6, [sp+304]
    002c0a08ldrb w6, [sp+62]
    002c0a0cstrb w6, [sp+63]
    002c0a10ldr x6, [sp+304]
    002c0a14str x6, [sp+96]
    002c0a18ldrb w6, [sp+63]
    002c0a1cstrb w6, [sp+61]
    002c0a20tbnz w6, 0, 0x2c0a28
    002c0a24b 0x2c0a44
    002c0a28
    002c0a28loc_2c0a28:
    002c0a28ldr x6, [sp+96]
    002c0a2cldrsb x27, [x6]
    002c0a30ldr x7, [x6+8]
    002c0a34ldr x6, [x6+16]
    002c0a38str x7, [sp+128]
    002c0a3cstr x6, [sp+136]
    002c0a40b 0x2c0a48
    002c0a44
    002c0a44loc_2c0a44:
    002c0a44b 0x2c0a48
    002c0a48
    002c0a48loc_2c0a48:
    002c0a48ldr x6, [sp+64]
    002c0a4csubs xzr, x6, 7
    002c0a50b.eq 0x2c0a58
    002c0a54b 0x2c0b00
    002c0a58
    002c0a58loc_2c0a58:
    002c0a58b 0x2c0a5c
    002c0a5c
    002c0a5cloc_2c0a5c:
    002c0a5cstr xzr, [sp+168]
    002c0a60stp xzr, xzr, [sp+176]
    002c0a64stp xzr, xzr, [sp+200]
    002c0a68ldr x1, [sp+368]
    002c0a6cldr x4, [sp+128]
    002c0a70ldr x2, [sp+376]
    002c0a74ldr x5, [sp+136]
    002c0a78ldr x3, [sp+384]
    002c0a7cldr x0, [sp+104]
    002c0a80bl crypto/internal/fips140/ed25519.SignPH
    002c0a84str x0, [sp+168]
    002c0a88str x1, [sp+176]
    002c0a8cstr x2, [sp+184]
    002c0a90str x3, [sp+200]
    002c0a94str x4, [sp+208]
    002c0a98ldr x6, [sp+168]
    002c0a9cldr x7, [sp+176]
    002c0aa0ldr x8, [sp+184]
    002c0aa4str x6, [sp+280]
    002c0aa8str x7, [sp+288]
    002c0aacstr x8, [sp+296]
    002c0ab0ldr x6, [sp+200]
    002c0ab4ldr x7, [sp+208]
    002c0ab8str x6, [sp+264]
    002c0abcstr x7, [sp+272]
    002c0ac0ldr x6, [sp+280]
    002c0ac4ldr x7, [sp+288]
    002c0ac8ldr x8, [sp+296]
    002c0accstr x6, [sp+72]
    002c0ad0str x7, [sp+80]
    002c0ad4str x8, [sp+88]
    002c0ad8ldr x3, [sp+264]
    002c0adcldr x4, [sp+272]
    002c0ae0str x3, [sp+112]
    002c0ae4str x4, [sp+120]
    002c0ae8ldr x0, [sp+72]
    002c0aecldr x1, [sp+80]
    002c0af0ldr x2, [sp+88]
    002c0af4ldp x29, x30, [sp-8]
    002c0af8add sp, sp, 320
    002c0afcret x30
    002c0b00
    002c0b00loc_2c0b00:
    002c0b00ldr x6, [sp+64]
    002c0b04subs xzr, x6, 0
    002c0b08cset x7, eq
    002c0b0cstrb w7, [sp+62]
    002c0b10cbz x6, 0x2c0b18
    002c0b14b 0x2c0b2c
    002c0b18
    002c0b18loc_2c0b18:
    002c0b18ldr x6, [sp+136]
    002c0b1csubs xzr, x6, 0
    002c0b20cset x6, ne
    002c0b24strb w6, [sp+62]
    002c0b28b 0x2c0b30
    002c0b2c
    002c0b2cloc_2c0b2c:
    002c0b2cb 0x2c0b30
    002c0b30
    002c0b30loc_2c0b30:
    002c0b30ldrb w6, [sp+62]
    002c0b34tbnz w6, 0, 0x2c0b3c
    002c0b38b 0x2c0c3c
    002c0b3c
    002c0b3cloc_2c0b3c:
    002c0b3cb 0x2c0b40
    002c0b40
    002c0b40loc_2c0b40:
    002c0b40adrp x27, 0x78b000
    002c0b44ldrb w6, [x27+1551]
    002c0b48tbnz w6, 0, 0x2c0b50
    002c0b4cb 0x2c0b98
    002c0b50
    002c0b50loc_2c0b50:
    002c0b50adrp x0, 0x40e000
    002c0b54add x0, x0, 2163
    002c0b58movz x1, 70
    002c0b5cbl errors.New
    002c0b60str x0, [sp+200]
    002c0b64str x1, [sp+208]
    002c0b68str xzr, [sp+72]
    002c0b6cstp xzr, xzr, [sp+80]
    002c0b70ldr x3, [sp+200]
    002c0b74ldr x4, [sp+208]
    002c0b78str x3, [sp+112]
    002c0b7cstr x4, [sp+120]
    002c0b80ldr x0, [sp+72]
    002c0b84ldr x1, [sp+80]
    002c0b88ldr x2, [sp+88]
    002c0b8cldp x29, x30, [sp-8]
    002c0b90add sp, sp, 320
    002c0b94ret x30
    002c0b98
    002c0b98loc_2c0b98:
    002c0b98str xzr, [sp+168]
    002c0b9cstp xzr, xzr, [sp+176]
    002c0ba0stp xzr, xzr, [sp+200]
    002c0ba4ldr x1, [sp+368]
    002c0ba8ldr x4, [sp+128]
    002c0bacldr x2, [sp+376]
    002c0bb0ldr x5, [sp+136]
    002c0bb4ldr x3, [sp+384]
    002c0bb8ldr x0, [sp+104]
    002c0bbcbl crypto/internal/fips140/ed25519.SignCtx
    002c0bc0str x0, [sp+168]
    002c0bc4str x1, [sp+176]
    002c0bc8str x2, [sp+184]
    002c0bccstr x3, [sp+200]
    002c0bd0str x4, [sp+208]
    002c0bd4ldr x6, [sp+168]
    002c0bd8ldr x7, [sp+176]
    002c0bdcldr x8, [sp+184]
    002c0be0str x6, [sp+240]
    002c0be4str x7, [sp+248]
    002c0be8str x8, [sp+256]
    002c0becldr x6, [sp+200]
    002c0bf0ldr x7, [sp+208]
    002c0bf4str x6, [sp+224]
    002c0bf8str x7, [sp+232]
    002c0bfcldr x6, [sp+240]
    002c0c00ldr x7, [sp+248]
    002c0c04ldr x8, [sp+256]
    002c0c08str x6, [sp+72]
    002c0c0cstr x7, [sp+80]
    002c0c10str x8, [sp+88]
    002c0c14ldr x3, [sp+224]
    002c0c18ldr x4, [sp+232]
    002c0c1cstr x3, [sp+112]
    002c0c20str x4, [sp+120]
    002c0c24ldr x0, [sp+72]
    002c0c28ldr x1, [sp+80]
    002c0c2cldr x2, [sp+88]
    002c0c30ldp x29, x30, [sp-8]
    002c0c34add sp, sp, 320
    002c0c38ret x30
    002c0c3c
    002c0c3cloc_2c0c3c:
    002c0c3cldr x4, [sp+64]
    002c0c40cbz x4, 0x2c0c48
    002c0c44b 0x2c0c9c
    002c0c48
    002c0c48loc_2c0c48:
    002c0c48b 0x2c0c4c
    002c0c4c
    002c0c4cloc_2c0c4c:
    002c0c4cldr x1, [sp+368]
    002c0c50ldr x2, [sp+376]
    002c0c54ldr x3, [sp+384]
    002c0c58ldr x0, [sp+104]
    002c0c5cbl crypto/internal/fips140/ed25519.Sign
    002c0c60str x0, [sp+168]
    002c0c64str x1, [sp+176]
    002c0c68str x2, [sp+184]
    002c0c6cstr x0, [sp+72]
    002c0c70str x1, [sp+80]
    002c0c74str x2, [sp+88]
    002c0c78stp xzr, xzr, [sp+112]
    002c0c7cldr x0, [sp+72]
    002c0c80ldr x1, [sp+80]
    002c0c84ldr x2, [sp+88]
    002c0c88mov x3, xzr
    002c0c8cmov x4, xzr
    002c0c90ldp x29, x30, [sp-8]
    002c0c94add sp, sp, 320
    002c0c98ret x30
    002c0c9c
    002c0c9cloc_2c0c9c:
    002c0c9cb 0x2c0ca0
    002c0ca0
    002c0ca0loc_2c0ca0:
    002c0ca0adrp x0, 0x410000
    002c0ca4add x0, x0, 2827
    002c0ca8movz x1, 106
    002c0cacbl errors.New
    002c0cb0str x0, [sp+200]
    002c0cb4str x1, [sp+208]
    002c0cb8str xzr, [sp+72]
    002c0cbcstp xzr, xzr, [sp+80]
    002c0cc0ldr x3, [sp+200]
    002c0cc4ldr x4, [sp+208]
    002c0cc8str x3, [sp+112]
    002c0cccstr x4, [sp+120]
    002c0cd0ldr x0, [sp+72]
    002c0cd4ldr x1, [sp+80]
    002c0cd8ldr x2, [sp+88]
    002c0cdcldp x29, x30, [sp-8]
    002c0ce0add sp, sp, 320
    002c0ce4ret x30
    002c0ce8
    002c0ce8loc_2c0ce8:
    002c0ce8stp x0, x1, [sp+8]
    002c0cecstp x2, x3, [sp+24]
    002c0cf0stp x4, x5, [sp+40]
    002c0cf4stp x6, x7, [sp+56]
    002c0cf8stp x8, x9, [sp+72]
    002c0cfcmov x3, x30
    002c0d00bl runtime.morestack_noctxt.abi0
    002c0d04ldp x0, x1, [sp+8]
    002c0d08ldp x2, x3, [sp+24]
    002c0d0cldp x4, x5, [sp+40]
    002c0d10ldp x6, x7, [sp+56]
    002c0d14ldp x8, x9, [sp+72]
    002c0d18b 0x2c08d0
    002c0d1cudf 0
    002c08d0
    002c0d20
    002c0d20crypto/ed25519.NewKeyFromSeed: ; void crypto/ed25519.NewKeyFromSeed(struct []uint8 seed)
    002c0d20ldr x16, [x28+16]
    002c0d24subs xzr, sp, x16
    002c0d28b.ls 0x2c0da8
    002c0d2cstr x30, [sp-112]!
    002c0d30stur x29, [sp-8]
    002c0d34sub x29, sp, 8
    002c0d38str x0, [sp+120]
    002c0d3cstr x1, [sp+128]
    002c0d40str x2, [sp+136]
    002c0d44str xzr, [sp+56]
    002c0d48stp xzr, xzr, [sp+64]
    002c0d4cadrp x0, 0x335000
    002c0d50add x0, x0, 3072
    002c0d54orr x1, xzr, 64
    002c0d58mov x2, x1
    002c0d5cbl runtime.makeslice
    002c0d60str x0, [sp+80]
    002c0d64orr x2, xzr, 64
    002c0d68str x2, [sp+88]
    002c0d6cstr x2, [sp+96]
    002c0d70ldr x4, [sp+128]
    002c0d74ldr x5, [sp+136]
    002c0d78ldr x3, [sp+120]
    002c0d7cmov x1, x2
    002c0d80bl crypto/ed25519.newKeyFromSeed
    002c0d84ldr x0, [sp+80]
    002c0d88ldr x1, [sp+88]
    002c0d8cldr x2, [sp+96]
    002c0d90str x0, [sp+56]
    002c0d94str x1, [sp+64]
    002c0d98str x2, [sp+72]
    002c0d9cldur x29, [sp-8]
    002c0da0ldr x30, [sp], 112
    002c0da4ret x30
    002c0da8
    002c0da8loc_2c0da8:
    002c0da8stp x0, x1, [sp+8]
    002c0dacstr x2, [sp+24]
    002c0db0mov x3, x30
    002c0db4bl runtime.morestack_noctxt.abi0
    002c0db8ldp x0, x1, [sp+8]
    002c0dbcldr x2, [sp+24]
    002c0dc0b 0x2c0d20
    002c0dc4udf 0
    002c0dc8udf 0
    002c0dccudf 0
    002c0d20
    002c0dd0
    002c0dd0crypto/ed25519.newKeyFromSeed: ; void crypto/ed25519.newKeyFromSeed(struct []uint8 privateKey, struct []uint8 seed)
    002c0dd0ldr x16, [x28+16]
    002c0dd4sub x17, sp, 144
    002c0dd8subs xzr, x17, x16
    002c0ddcb.ls 0x2c0f5c
    002c0de0sub x20, sp, 272
    002c0de4stp x29, x30, [x20-8]
    002c0de8add sp, x20, 0
    002c0decsub x29, sp, 8
    002c0df0str x0, [sp+280]
    002c0df4str x1, [sp+288]
    002c0df8str x2, [sp+296]
    002c0dfcstr x3, [sp+304]
    002c0e00str x4, [sp+312]
    002c0e04str x5, [sp+320]
    002c0e08str xzr, [sp+136]
    002c0e0cstp xzr, xzr, [sp+120]
    002c0e10ldr x0, [sp+304]
    002c0e14ldr x1, [sp+312]
    002c0e18ldr x2, [sp+320]
    002c0e1cbl crypto/internal/fips140/ed25519.NewPrivateKeyFromSeed
    002c0e20str x0, [sp+136]
    002c0e24str x1, [sp+120]
    002c0e28str x2, [sp+128]
    002c0e2cldr x3, [sp+136]
    002c0e30str x3, [sp+160]
    002c0e34ldr x3, [sp+128]
    002c0e38ldr x4, [sp+120]
    002c0e3cstr x4, [sp+144]
    002c0e40str x3, [sp+152]
    002c0e44ldr x3, [sp+160]
    002c0e48str x3, [sp+80]
    002c0e4cldr x3, [sp+152]
    002c0e50ldr x4, [sp+144]
    002c0e54str x4, [sp+88]
    002c0e58str x3, [sp+96]
    002c0e5ccbnz x4, 0x2c0f08
    002c0e60b 0x2c0e64
    002c0e64
    002c0e64loc_2c0e64:
    002c0e64ldr x0, [sp+80]
    002c0e68bl crypto/internal/fips140/ed25519.(*PrivateKey).Bytes
    002c0e6cstr x0, [sp+240]
    002c0e70str x1, [sp+248]
    002c0e74str x2, [sp+256]
    002c0e78ldr x1, [sp+280]
    002c0e7cldr x2, [sp+288]
    002c0e80ldr x3, [sp+296]
    002c0e84str x1, [sp+192]
    002c0e88str x2, [sp+200]
    002c0e8cstr x3, [sp+208]
    002c0e90ldr x1, [sp+248]
    002c0e94ldr x2, [sp+240]
    002c0e98ldr x3, [sp+256]
    002c0e9cstr x2, [sp+168]
    002c0ea0str x1, [sp+176]
    002c0ea4str x3, [sp+184]
    002c0ea8ldr x2, [sp+200]
    002c0eacstr x2, [sp+72]
    002c0eb0subs xzr, x2, x1
    002c0eb4b.gt 0x2c0ebc
    002c0eb8b 0x2c0ec4
    002c0ebc
    002c0ebcloc_2c0ebc:
    002c0ebcstr x1, [sp+72]
    002c0ec0b 0x2c0ec8
    002c0ec4
    002c0ec4loc_2c0ec4:
    002c0ec4b 0x2c0ec8
    002c0ec8
    002c0ec8loc_2c0ec8:
    002c0ec8ldr x3, [sp+168]
    002c0eccldr x4, [sp+192]
    002c0ed0subs xzr, x3, x4
    002c0ed4b.ne 0x2c0edc
    002c0ed8b 0x2c0ef8
    002c0edc
    002c0edcloc_2c0edc:
    002c0edcldr x3, [sp+72]
    002c0ee0str x3, [sp+64]
    002c0ee4ldr x2, [sp+64]
    002c0ee8ldr x1, [sp+168]
    002c0eecldr x0, [sp+192]
    002c0ef0bl runtime.memmove
    002c0ef4b 0x2c0efc
    002c0ef8
    002c0ef8loc_2c0ef8:
    002c0ef8b 0x2c0efc
    002c0efc
    002c0efcloc_2c0efc:
    002c0efcldp x29, x30, [sp-8]
    002c0f00add sp, sp, 272
    002c0f04ret x30
    002c0f08
    002c0f08loc_2c0f08:
    002c0f08ldr x0, [sp+312]
    002c0f0cstr x0, [sp+56]
    002c0f10bl strconv.Itoa
    002c0f14str x0, [sp+104]
    002c0f18str x1, [sp+112]
    002c0f1cmovz x2, 26
    002c0f20mov x3, x0
    002c0f24mov x4, x1
    002c0f28mov x0, xzr
    002c0f2cadrp x1, 0x3fa000
    002c0f30add x1, x1, 2255
    002c0f34bl runtime.concatstring2
    002c0f38str x0, [sp+224]
    002c0f3cstr x1, [sp+232]
    002c0f40bl runtime.convTstring
    002c0f44str x0, [sp+216]
    002c0f48mov x1, x0
    002c0f4cadrp x0, 0x335000
    002c0f50add x0, x0, 2944
    002c0f54bl runtime.gopanic
    002c0f58hint
    002c0f5c
    002c0f5cloc_2c0f5c:
    002c0f5cstp x0, x1, [sp+8]
    002c0f60stp x2, x3, [sp+24]
    002c0f64stp x4, x5, [sp+40]
    002c0f68mov x3, x30
    002c0f6cbl runtime.morestack_noctxt.abi0
    002c0f70ldp x0, x1, [sp+8]
    002c0f74ldp x2, x3, [sp+24]
    002c0f78ldp x4, x5, [sp+40]
    002c0f7cb 0x2c0dd0
    002c0dd0
    002c0f80
    002c0f80crypto/ed25519.Verify: ; void crypto/ed25519.Verify(crypto/ed25519.PublicKey publicKey, struct []uint8 message, struct []uint8 sig)
    002c0f80ldr x16, [x28+16]
    002c0f84sub x17, sp, 32
    002c0f88subs xzr, x17, x16
    002c0f8cb.ls 0x2c1060
    002c0f90str x30, [sp-160]!
    002c0f94stur x29, [sp-8]
    002c0f98sub x29, sp, 8
    002c0f9cstr x0, [sp+168]
    002c0fa0str x1, [sp+176]
    002c0fa4str x2, [sp+184]
    002c0fa8str x3, [sp+192]
    002c0facstr x4, [sp+200]
    002c0fb0str x5, [sp+208]
    002c0fb4str x6, [sp+216]
    002c0fb8str x7, [sp+224]
    002c0fbcstr x8, [sp+232]
    002c0fc0strb wzr, [sp+103]
    002c0fc4stp xzr, xzr, [sp+104]
    002c0fc8str xzr, [sp+120]
    002c0fccadd x10, sp, 104
    002c0fd0str x10, [sp+128]
    002c0fd4ldrsb x27, [x10]
    002c0fd8str xzr, [x10]
    002c0fdcstr xzr, [x10+16]
    002c0fe0adrp x27, 0x78b000
    002c0fe4ldr w11, [x27+3056]
    002c0fe8cbz w11, 0x2c0ff0
    002c0fecb 0x2c0ff4
    002c0ff0
    002c0ff0loc_2c0ff0:
    002c0ff0b 0x2c1004
    002c0ff4
    002c0ff4loc_2c0ff4:
    002c0ff4ldr x11, [x10+8]
    002c0ff8bl runtime.gcWriteBarrier1
    002c0ffcstr x11, [x25]
    002c1000b 0x2c1004
    002c1004
    002c1004loc_2c1004:
    002c1004str xzr, [x10+8]
    002c1008ldrsb x27, [x10]
    002c100cstr xzr, [x10]
    002c1010ldr x0, [sp+168]
    002c1014ldr x3, [sp+192]
    002c1018ldr x6, [sp+216]
    002c101cldr x1, [sp+176]
    002c1020ldr x4, [sp+200]
    002c1024ldr x7, [sp+224]
    002c1028ldr x2, [sp+184]
    002c102cldr x5, [sp+208]
    002c1030ldr x8, [sp+232]
    002c1034ldr x9, [sp+128]
    002c1038bl crypto/ed25519.VerifyWithOptions
    002c103cstr x0, [sp+136]
    002c1040str x1, [sp+144]
    002c1044subs xzr, x0, 0
    002c1048cset x10, ne
    002c104ceor x0, x10, 1
    002c1050strb w0, [sp+103]
    002c1054ldur x29, [sp-8]
    002c1058ldr x30, [sp], 160
    002c105cret x30
    002c1060
    002c1060loc_2c1060:
    002c1060stp x0, x1, [sp+8]
    002c1064stp x2, x3, [sp+24]
    002c1068stp x4, x5, [sp+40]
    002c106cstp x6, x7, [sp+56]
    002c1070str x8, [sp+72]
    002c1074mov x3, x30
    002c1078bl runtime.morestack_noctxt.abi0
    002c107cldp x0, x1, [sp+8]
    002c1080ldp x2, x3, [sp+24]
    002c1084ldp x4, x5, [sp+40]
    002c1088ldp x6, x7, [sp+56]
    002c108cldr x8, [sp+72]
    002c1090b 0x2c0f80
    002c1094udf 0
    002c1098udf 0
    002c109cudf 0
    002c0f80
    002c10a0
    002c10a0crypto/ed25519.VerifyWithOptions: ; void crypto/ed25519.VerifyWithOptions(crypto/ed25519.PublicKey publicKey, struct []uint8 message, struct []uint8 sig, crypto/ed25519.Options * opts)
    002c10a0ldr x16, [x28+16]
    002c10a4sub x17, sp, 144
    002c10a8subs xzr, x17, x16
    002c10acb.ls 0x2c1390
    002c10b0sub x20, sp, 272
    002c10b4stp x29, x30, [x20-8]
    002c10b8add sp, x20, 0
    002c10bcsub x29, sp, 8
    002c10c0str x0, [sp+280]
    002c10c4str x1, [sp+288]
    002c10c8str x2, [sp+296]
    002c10ccstr x3, [sp+304]
    002c10d0str x4, [sp+312]
    002c10d4str x5, [sp+320]
    002c10d8str x6, [sp+328]
    002c10dcstr x7, [sp+336]
    002c10e0str x8, [sp+344]
    002c10e4str x9, [sp+352]
    002c10e8stp xzr, xzr, [sp+104]
    002c10ecldr x0, [sp+288]
    002c10f0str x0, [sp+96]
    002c10f4subs xzr, x0, 32
    002c10f8b.ne 0x2c1344
    002c10fcb 0x2c1100
    002c1100
    002c1100loc_2c1100:
    002c1100str xzr, [sp+240]
    002c1104stp xzr, xzr, [sp+224]
    002c1108ldr x0, [sp+280]
    002c110cldr x1, [sp+288]
    002c1110ldr x2, [sp+296]
    002c1114bl crypto/internal/fips140/ed25519.NewPublicKey
    002c1118str x0, [sp+240]
    002c111cstr x1, [sp+224]
    002c1120str x2, [sp+232]
    002c1124ldr x3, [sp+240]
    002c1128str x3, [sp+160]
    002c112cldr x3, [sp+232]
    002c1130ldr x4, [sp+224]
    002c1134str x4, [sp+144]
    002c1138str x3, [sp+152]
    002c113cldr x3, [sp+160]
    002c1140str x3, [sp+120]
    002c1144ldr x1, [sp+152]
    002c1148ldr x0, [sp+144]
    002c114cstr x0, [sp+128]
    002c1150str x1, [sp+136]
    002c1154cbnz x0, 0x2c115c
    002c1158b 0x2c1170
    002c115c
    002c115cloc_2c115c:
    002c115cstr x0, [sp+104]
    002c1160str x1, [sp+112]
    002c1164ldp x29, x30, [sp-8]
    002c1168add sp, sp, 272
    002c116cret x30
    002c1170
    002c1170loc_2c1170:
    002c1170ldr x9, [sp+352]
    002c1174ldrsb x27, [x9]
    002c1178ldr x9, [x9]
    002c117csubs xzr, x9, 7
    002c1180b.eq 0x2c1188
    002c1184b 0x2c11e0
    002c1188
    002c1188loc_2c1188:
    002c1188b 0x2c118c
    002c118c
    002c118cloc_2c118c:
    002c118cldr x9, [sp+352]
    002c1190ldrsb x27, [x9]
    002c1194ldr x7, [x9+8]
    002c1198ldr x8, [x9+16]
    002c119cstr x7, [sp+184]
    002c11a0str x8, [sp+192]
    002c11a4ldr x1, [sp+304]
    002c11a8ldr x4, [sp+328]
    002c11acldr x0, [sp+120]
    002c11b0ldr x2, [sp+312]
    002c11b4ldr x5, [sp+336]
    002c11b8ldr x3, [sp+320]
    002c11bcldr x6, [sp+344]
    002c11c0bl crypto/internal/fips140/ed25519.VerifyPH
    002c11c4str x0, [sp+224]
    002c11c8str x1, [sp+232]
    002c11ccstr x0, [sp+104]
    002c11d0str x1, [sp+112]
    002c11d4ldp x29, x30, [sp-8]
    002c11d8add sp, sp, 272
    002c11dcret x30
    002c11e0
    002c11e0loc_2c11e0:
    002c11e0ldr x9, [sp+352]
    002c11e4ldrsb x27, [x9]
    002c11e8ldr x9, [x9]
    002c11ecsubs xzr, x9, 0
    002c11f0cset x10, eq
    002c11f4strb w10, [sp+95]
    002c11f8cbz x9, 0x2c1200
    002c11fcb 0x2c121c
    002c1200
    002c1200loc_2c1200:
    002c1200ldr x9, [sp+352]
    002c1204ldrsb x27, [x9]
    002c1208ldr x9, [x9+16]
    002c120csubs xzr, x9, 0
    002c1210cset x9, ne
    002c1214strb w9, [sp+95]
    002c1218b 0x2c1220
    002c121c
    002c121cloc_2c121c:
    002c121cb 0x2c1220
    002c1220
    002c1220loc_2c1220:
    002c1220ldrb w9, [sp+95]
    002c1224tbnz w9, 0, 0x2c122c
    002c1228b 0x2c12c0
    002c122c
    002c122cloc_2c122c:
    002c122cb 0x2c1230
    002c1230
    002c1230loc_2c1230:
    002c1230adrp x27, 0x78a000
    002c1234ldrb w9, [x27+1551]
    002c1238tbnz w9, 0, 0x2c1240
    002c123cb 0x2c126c
    002c1240
    002c1240loc_2c1240:
    002c1240adrp x0, 0x40d000
    002c1244add x0, x0, 2163
    002c1248movz x1, 70
    002c124cbl errors.New
    002c1250str x0, [sp+224]
    002c1254str x1, [sp+232]
    002c1258str x0, [sp+104]
    002c125cstr x1, [sp+112]
    002c1260ldp x29, x30, [sp-8]
    002c1264add sp, sp, 272
    002c1268ret x30
    002c126c
    002c126cloc_2c126c:
    002c126cldr x9, [sp+352]
    002c1270ldrsb x27, [x9]
    002c1274ldr x7, [x9+8]
    002c1278ldr x8, [x9+16]
    002c127cstr x7, [sp+168]
    002c1280str x8, [sp+176]
    002c1284ldr x1, [sp+304]
    002c1288ldr x4, [sp+328]
    002c128cldr x0, [sp+120]
    002c1290ldr x2, [sp+312]
    002c1294ldr x5, [sp+336]
    002c1298ldr x3, [sp+320]
    002c129cldr x6, [sp+344]
    002c12a0bl crypto/internal/fips140/ed25519.VerifyCtx
    002c12a4str x0, [sp+224]
    002c12a8str x1, [sp+232]
    002c12acstr x0, [sp+104]
    002c12b0str x1, [sp+112]
    002c12b4ldp x29, x30, [sp-8]
    002c12b8add sp, sp, 272
    002c12bcret x30
    002c12c0
    002c12c0loc_2c12c0:
    002c12c0ldr x7, [sp+352]
    002c12c4ldrsb x27, [x7]
    002c12c8ldr x7, [x7]
    002c12cccbz x7, 0x2c12d4
    002c12d0b 0x2c1314
    002c12d4
    002c12d4loc_2c12d4:
    002c12d4b 0x2c12d8
    002c12d8
    002c12d8loc_2c12d8:
    002c12d8ldr x1, [sp+304]
    002c12dcldr x4, [sp+328]
    002c12e0ldr x2, [sp+312]
    002c12e4ldr x5, [sp+336]
    002c12e8ldr x3, [sp+320]
    002c12ecldr x6, [sp+344]
    002c12f0ldr x0, [sp+120]
    002c12f4bl crypto/internal/fips140/ed25519.Verify
    002c12f8str x0, [sp+224]
    002c12fcstr x1, [sp+232]
    002c1300str x0, [sp+104]
    002c1304str x1, [sp+112]
    002c1308ldp x29, x30, [sp-8]
    002c130cadd sp, sp, 272
    002c1310ret x30
    002c1314
    002c1314loc_2c1314:
    002c1314b 0x2c1318
    002c1318
    002c1318loc_2c1318:
    002c1318adrp x0, 0x40f000
    002c131cadd x0, x0, 2625
    002c1320movz x1, 100
    002c1324bl errors.New
    002c1328str x0, [sp+224]
    002c132cstr x1, [sp+232]
    002c1330str x0, [sp+104]
    002c1334str x1, [sp+112]
    002c1338ldp x29, x30, [sp-8]
    002c133cadd sp, sp, 272
    002c1340ret x30
    002c1344
    002c1344loc_2c1344:
    002c1344bl strconv.Itoa
    002c1348str x0, [sp+248]
    002c134cstr x1, [sp+256]
    002c1350orr x2, xzr, 32
    002c1354mov x3, x0
    002c1358mov x4, x1
    002c135cmov x0, xzr
    002c1360adrp x1, 0x3fd000
    002c1364add x1, x1, 3280
    002c1368bl runtime.concatstring2
    002c136cstr x0, [sp+208]
    002c1370str x1, [sp+216]
    002c1374bl runtime.convTstring
    002c1378str x0, [sp+200]
    002c137cmov x1, x0
    002c1380adrp x0, 0x334000
    002c1384add x0, x0, 2944
    002c1388bl runtime.gopanic
    002c138chint
    002c1390
    002c1390loc_2c1390:
    002c1390stp x0, x1, [sp+8]
    002c1394stp x2, x3, [sp+24]
    002c1398stp x4, x5, [sp+40]
    002c139cstp x6, x7, [sp+56]
    002c13a0stp x8, x9, [sp+72]
    002c13a4mov x3, x30
    002c13a8bl runtime.morestack_noctxt.abi0
    002c13acldp x0, x1, [sp+8]
    002c13b0ldp x2, x3, [sp+24]
    002c13b4ldp x4, x5, [sp+40]
    002c13b8ldp x6, x7, [sp+56]
    002c13bcldp x8, x9, [sp+72]
    002c13c0b 0x2c10a0
    002c13c4udf 0
    002c13c8udf 0
    002c13ccudf 0
    002c10a0
    002c13d0
    002c13d0type:.eq.crypto/ed25519.Options: ; void type:.eq.crypto/ed25519.Options(crypto/ed25519.Options * p, crypto/ed25519.Options * q)
    002c13d0ldr x16, [x28+16]
    002c13d4subs xzr, sp, x16
    002c13d8b.ls 0x2c1488
    002c13dcstr x30, [sp-80]!
    002c13e0stur x29, [sp-8]
    002c13e4sub x29, sp, 8
    002c13e8str x0, [sp+88]
    002c13ecstr x1, [sp+96]
    002c13f0strb wzr, [sp+39]
    002c13f4ldr x3, [sp+88]
    002c13f8ldr x3, [x3]
    002c13fcldr x4, [sp+96]
    002c1400ldr x4, [x4]
    002c1404subs xzr, x4, x3
    002c1408b.eq 0x2c1410
    002c140cb 0x2c146c
    002c1410
    002c1410loc_2c1410:
    002c1410ldr x3, [sp+88]
    002c1414ldr x3, [x3+16]
    002c1418str x3, [sp+48]
    002c141cldr x4, [x1+16]
    002c1420str x4, [sp+40]
    002c1424subs xzr, x3, x4
    002c1428b.eq 0x2c1430
    002c142cb 0x2c1468
    002c1430
    002c1430loc_2c1430:
    002c1430ldr x3, [sp+88]
    002c1434ldr x3, [x3+16]
    002c1438str x3, [sp+40]
    002c143cldr x3, [sp+88]
    002c1440ldr x3, [x3+8]
    002c1444str x3, [sp+64]
    002c1448ldr x3, [sp+96]
    002c144cldr x1, [x3+8]
    002c1450str x1, [sp+56]
    002c1454ldr x2, [sp+40]
    002c1458ldr x0, [sp+64]
    002c145cbl runtime.memequal
    002c1460strb w0, [sp+39]
    002c1464b 0x2c1478
    002c1468
    002c1468loc_2c1468:
    002c1468b 0x2c1470
    002c146c
    002c146cloc_2c146c:
    002c146cb 0x2c1470
    002c1470
    002c1470loc_2c1470:
    002c1470strb wzr, [sp+39]
    002c1474b 0x2c1478
    002c1478
    002c1478loc_2c1478:
    002c1478ldrb w0, [sp+39]
    002c147cldur x29, [sp-8]
    002c1480ldr x30, [sp], 80
    002c1484ret x30
    002c1488
    002c1488loc_2c1488:
    002c1488stp x0, x1, [sp+8]
    002c148cmov x3, x30
    002c1490bl runtime.morestack_noctxt.abi0
    002c1494ldp x0, x1, [sp+8]
    002c1498b 0x2c13d0
    002c149cudf 0
    002c13d0
    002c14a0
    002c14a0crypto/ed25519.(*PublicKey).Equal: ; void crypto/ed25519.(*PublicKey).Equal(crypto/ed25519.PublicKey * pub, crypto.PublicKey x)
    002c14a0ldr x16, [x28+16]
    002c14a4subs xzr, sp, x16
    002c14a8b.ls 0x2c1524
    002c14acstr x30, [sp-96]!
    002c14b0stur x29, [sp-8]
    002c14b4sub x29, sp, 8
    002c14b8ldr x16, [x28+32]
    002c14bccbnz x16, 0x2c1540
    002c14c0
    002c14c0loc_2c14c0:
    002c14c0str x0, [sp+104]
    002c14c4str x1, [sp+112]
    002c14c8str x2, [sp+120]
    002c14ccstrb wzr, [sp+62]
    002c14d0ldr x5, [sp+104]
    002c14d4cbnz x5, 0x2c14dc
    002c14d8b 0x2c151c
    002c14dc
    002c14dcloc_2c14dc:
    002c14dcldr x5, [sp+104]
    002c14e0ldrsb x27, [x5]
    002c14e4ldr x0, [x5]
    002c14e8ldr x1, [x5+8]
    002c14ecldr x2, [x5+16]
    002c14f0str x0, [sp+64]
    002c14f4str x1, [sp+72]
    002c14f8str x2, [sp+80]
    002c14fcldr x3, [sp+112]
    002c1500ldr x4, [sp+120]
    002c1504bl crypto/ed25519.PublicKey.Equal
    002c1508strb w0, [sp+63]
    002c150cstrb w0, [sp+62]
    002c1510ldur x29, [sp-8]
    002c1514ldr x30, [sp], 96
    002c1518ret x30
    002c151c
    002c151cloc_2c151c:
    002c151cbl runtime.panicwrap
    002c1520hint
    002c1524
    002c1524loc_2c1524:
    002c1524stp x0, x1, [sp+8]
    002c1528str x2, [sp+24]
    002c152cmov x3, x30
    002c1530bl runtime.morestack_noctxt.abi0
    002c1534ldp x0, x1, [sp+8]
    002c1538ldr x2, [sp+24]
    002c153cb 0x2c14a0
    002c1540
    002c1540loc_2c1540:
    002c1540ldr x17, [x16]
    002c1544add x20, sp, 104
    002c1548subs xzr, x20, x17
    002c154cb.ne 0x2c14c0
    002c1550add x20, sp, 8
    002c1554str x20, [x16]
    002c1558b 0x2c14c0
    002c155cudf 0
    002c14a0
    002c1560
    002c1560crypto/ed25519.(*PrivateKey).Public: ; void crypto/ed25519.(*PrivateKey).Public(crypto/ed25519.PrivateKey * priv)
    002c1560ldr x16, [x28+16]
    002c1564subs xzr, sp, x16
    002c1568b.ls 0x2c15dc
    002c156cstr x30, [sp-96]!
    002c1570stur x29, [sp-8]
    002c1574sub x29, sp, 8
    002c1578ldr x16, [x28+32]
    002c157ccbnz x16, 0x2c15f0
    002c1580
    002c1580loc_2c1580:
    002c1580str x0, [sp+104]
    002c1584stp xzr, xzr, [sp+32]
    002c1588ldr x3, [sp+104]
    002c158ccbnz x3, 0x2c1594
    002c1590b 0x2c15d4
    002c1594
    002c1594loc_2c1594:
    002c1594ldr x3, [sp+104]
    002c1598ldrsb x27, [x3]
    002c159cldr x0, [x3]
    002c15a0ldr x1, [x3+8]
    002c15a4ldr x2, [x3+16]
    002c15a8str x0, [sp+48]
    002c15acstr x1, [sp+56]
    002c15b0str x2, [sp+64]
    002c15b4bl crypto/ed25519.PrivateKey.Public
    002c15b8str x0, [sp+72]
    002c15bcstr x1, [sp+80]
    002c15c0str x0, [sp+32]
    002c15c4str x1, [sp+40]
    002c15c8ldur x29, [sp-8]
    002c15ccldr x30, [sp], 96
    002c15d0ret x30
    002c15d4
    002c15d4loc_2c15d4:
    002c15d4bl runtime.panicwrap
    002c15d8hint
    002c15dc
    002c15dcloc_2c15dc:
    002c15dcstr x0, [sp+8]
    002c15e0mov x3, x30
    002c15e4bl runtime.morestack_noctxt.abi0
    002c15e8ldr x0, [sp+8]
    002c15ecb 0x2c1560
    002c15f0
    002c15f0loc_2c15f0:
    002c15f0ldr x17, [x16]
    002c15f4add x20, sp, 104
    002c15f8subs xzr, x20, x17
    002c15fcb.ne 0x2c1580
    002c1600add x20, sp, 8
    002c1604str x20, [x16]
    002c1608b 0x2c1580
    002c160cudf 0
    002c1560
    002c1610
    002c1610crypto/ed25519.(*PrivateKey).Sign: ; void crypto/ed25519.(*PrivateKey).Sign(crypto/ed25519.PrivateKey * priv, io.Reader rand, struct []uint8 message, crypto.SignerOpts opts)
    002c1610ldr x16, [x28+16]
    002c1614sub x17, sp, 112
    002c1618subs xzr, x17, x16
    002c161cb.ls 0x2c173c
    002c1620str x30, [sp-240]!
    002c1624stur x29, [sp-8]
    002c1628sub x29, sp, 8
    002c162cldr x16, [x28+32]
    002c1630cbnz x16, 0x2c1768
    002c1634
    002c1634loc_2c1634:
    002c1634str x0, [sp+248]
    002c1638str x1, [sp+256]
    002c163cstr x2, [sp+264]
    002c1640str x3, [sp+272]
    002c1644str x4, [sp+280]
    002c1648str x5, [sp+288]
    002c164cstr x6, [sp+296]
    002c1650str x7, [sp+304]
    002c1654str xzr, [sp+88]
    002c1658stp xzr, xzr, [sp+96]
    002c165cstp xzr, xzr, [sp+112]
    002c1660ldr x10, [sp+248]
    002c1664cbnz x10, 0x2c166c
    002c1668b 0x2c1734
    002c166c
    002c166cloc_2c166c:
    002c166cstr xzr, [sp+144]
    002c1670stp xzr, xzr, [sp+152]
    002c1674stp xzr, xzr, [sp+128]
    002c1678ldr x10, [sp+248]
    002c167cldrsb x27, [x10]
    002c1680ldr x0, [x10]
    002c1684ldr x1, [x10+8]
    002c1688ldr x2, [x10+16]
    002c168cstr x0, [sp+208]
    002c1690str x1, [sp+216]
    002c1694str x2, [sp+224]
    002c1698ldr x3, [sp+256]
    002c169cldr x8, [sp+296]
    002c16a0ldr x5, [sp+272]
    002c16a4ldr x6, [sp+280]
    002c16a8ldr x4, [sp+264]
    002c16acldr x9, [sp+304]
    002c16b0ldr x7, [sp+288]
    002c16b4bl crypto/ed25519.PrivateKey.Sign
    002c16b8str x0, [sp+144]
    002c16bcstr x1, [sp+152]
    002c16c0str x2, [sp+160]
    002c16c4str x3, [sp+128]
    002c16c8str x4, [sp+136]
    002c16ccldr x10, [sp+144]
    002c16d0ldr x11, [sp+152]
    002c16d4ldr x12, [sp+160]
    002c16d8str x10, [sp+184]
    002c16dcstr x11, [sp+192]
    002c16e0str x12, [sp+200]
    002c16e4ldr x10, [sp+128]
    002c16e8ldr x11, [sp+136]
    002c16ecstr x10, [sp+168]
    002c16f0str x11, [sp+176]
    002c16f4ldr x10, [sp+184]
    002c16f8ldr x11, [sp+192]
    002c16fcldr x12, [sp+200]
    002c1700str x10, [sp+88]
    002c1704str x11, [sp+96]
    002c1708str x12, [sp+104]
    002c170cldr x3, [sp+168]
    002c1710ldr x4, [sp+176]
    002c1714str x3, [sp+112]
    002c1718str x4, [sp+120]
    002c171cldr x0, [sp+88]
    002c1720ldr x1, [sp+96]
    002c1724ldr x2, [sp+104]
    002c1728ldur x29, [sp-8]
    002c172cldr x30, [sp], 240
    002c1730ret x30
    002c1734
    002c1734loc_2c1734:
    002c1734bl runtime.panicwrap
    002c1738hint
    002c173c
    002c173cloc_2c173c:
    002c173cstp x0, x1, [sp+8]
    002c1740stp x2, x3, [sp+24]
    002c1744stp x4, x5, [sp+40]
    002c1748stp x6, x7, [sp+56]
    002c174cmov x3, x30
    002c1750bl runtime.morestack_noctxt.abi0
    002c1754ldp x0, x1, [sp+8]
    002c1758ldp x2, x3, [sp+24]
    002c175cldp x4, x5, [sp+40]
    002c1760ldp x6, x7, [sp+56]
    002c1764b 0x2c1610
    002c1768
    002c1768loc_2c1768:
    002c1768ldr x17, [x16]
    002c176cadd x20, sp, 248
    002c1770subs xzr, x20, x17
    002c1774b.ne 0x2c1634
    002c1778add x20, sp, 8
    002c177cstr x20, [x16]
    002c1780b 0x2c1634
    002c1784udf 0
    002c1788udf 0
    002c178cudf 0
    002c1610
    002c1790
    002c1790crypto/rsa.init: ; void crypto/rsa.init(void)
    002c1790ldr x16, [x28+16]
    002c1794subs xzr, sp, x16
    002c1798b.ls 0x2c1918
    002c179cstr x30, [sp-32]!
    002c17a0stur x29, [sp-8]
    002c17a4sub x29, sp, 8
    002c17a8orr x0, xzr, 1
    002c17acbl math/big.NewInt
    002c17b0adrp x27, 0x78a000
    002c17b4ldr w1, [x27+3056]
    002c17b8cbz w1, 0x2c17c0
    002c17bcb 0x2c17c4
    002c17c0
    002c17c0loc_2c17c0:
    002c17c0b 0x2c17dc
    002c17c4
    002c17c4loc_2c17c4:
    002c17c4bl runtime.gcWriteBarrier2
    002c17c8str x0, [x25]
    002c17ccadrp x27, 0x760000
    002c17d0ldr x2, [x27+56]
    002c17d4str x2, [x25+8]
    002c17d8b 0x2c17dc
    002c17dc
    002c17dcloc_2c17dc:
    002c17dcadrp x27, 0x760000
    002c17e0str x0, [x27+56]
    002c17e4adrp x0, 0x3f1000
    002c17e8add x0, x0, 824
    002c17ecmovz x1, 10
    002c17f0bl internal/godebug.New
    002c17f4adrp x27, 0x78a000
    002c17f8ldr w2, [x27+3056]
    002c17fccbz w2, 0x2c1804
    002c1800b 0x2c1808
    002c1804
    002c1804loc_2c1804:
    002c1804b 0x2c1820
    002c1808
    002c1808loc_2c1808:
    002c1808bl runtime.gcWriteBarrier2
    002c180cstr x0, [x25]
    002c1810adrp x27, 0x760000
    002c1814ldr x2, [x27+64]
    002c1818str x2, [x25+8]
    002c181cb 0x2c1820
    002c1820
    002c1820loc_2c1820:
    002c1820adrp x27, 0x760000
    002c1824str x0, [x27+64]
    002c1828adrp x0, 0x406000
    002c182cadd x0, x0, 125
    002c1830movz x1, 45
    002c1834bl errors.New
    002c1838adrp x27, 0x760000
    002c183cstr x0, [x27+4000]
    002c1840adrp x27, 0x78a000
    002c1844ldr w2, [x27+3056]
    002c1848cbz w2, 0x2c1850
    002c184cb 0x2c1854
    002c1850
    002c1850loc_2c1850:
    002c1850b 0x2c186c
    002c1854
    002c1854loc_2c1854:
    002c1854bl runtime.gcWriteBarrier2
    002c1858str x1, [x25]
    002c185cadrp x27, 0x760000
    002c1860ldr x2, [x27+4008]
    002c1864str x2, [x25+8]
    002c1868b 0x2c186c
    002c186c
    002c186cloc_2c186c:
    002c186cadrp x27, 0x760000
    002c1870str x1, [x27+4008]
    002c1874adrp x0, 0x3fa000
    002c1878add x0, x0, 4076
    002c187corr x1, xzr, 28
    002c1880bl errors.New
    002c1884adrp x27, 0x760000
    002c1888str x0, [x27+4016]
    002c188cadrp x27, 0x78a000
    002c1890ldr w2, [x27+3056]
    002c1894cbz w2, 0x2c189c
    002c1898b 0x2c18a0
    002c189c
    002c189cloc_2c189c:
    002c189cb 0x2c18b8
    002c18a0
    002c18a0loc_2c18a0:
    002c18a0bl runtime.gcWriteBarrier2
    002c18a4str x1, [x25]
    002c18a8adrp x27, 0x760000
    002c18acldr x2, [x27+4024]
    002c18b0str x2, [x25+8]
    002c18b4b 0x2c18b8
    002c18b8
    002c18b8loc_2c18b8:
    002c18b8adrp x27, 0x760000
    002c18bcstr x1, [x27+4024]
    002c18c0adrp x0, 0x3fc000
    002c18c4add x0, x0, 1612
    002c18c8orr x1, xzr, 30
    002c18ccbl errors.New
    002c18d0adrp x27, 0x760000
    002c18d4str x0, [x27+4032]
    002c18d8adrp x27, 0x78a000
    002c18dcldr w2, [x27+3056]
    002c18e0cbz w2, 0x2c18e8
    002c18e4b 0x2c18ec
    002c18e8
    002c18e8loc_2c18e8:
    002c18e8b 0x2c1904
    002c18ec
    002c18ecloc_2c18ec:
    002c18ecbl runtime.gcWriteBarrier2
    002c18f0str x1, [x25]
    002c18f4adrp x27, 0x760000
    002c18f8ldr x0, [x27+4040]
    002c18fcstr x0, [x25+8]
    002c1900b 0x2c1904
    002c1904
    002c1904loc_2c1904:
    002c1904adrp x27, 0x760000
    002c1908str x1, [x27+4040]
    002c190cldur x29, [sp-8]
    002c1910ldr x30, [sp], 32
    002c1914ret x30
    002c1918
    002c1918loc_2c1918:
    002c1918mov x3, x30
    002c191cbl runtime.morestack_noctxt.abi0
    002c1920b 0x2c1790
    002c1924udf 0
    002c1928udf 0
    002c192cudf 0
    002c1790
    002c1930
    002c1930crypto/rsa.(*PSSOptions).HashFunc: ; void crypto/rsa.(*PSSOptions).HashFunc(crypto/rsa.PSSOptions * opts)
    002c1930str x30, [sp-32]!
    002c1934stur x29, [sp-8]
    002c1938sub x29, sp, 8
    002c193cstr x0, [sp+40]
    002c1940str xzr, [sp+16]
    002c1944ldrsb x27, [x0]
    002c1948ldr x0, [x0+8]
    002c194cstr x0, [sp+16]
    002c1950add x29, sp, 24
    002c1954add sp, sp, 32
    002c1958ret x30
    002c195cudf 0
    002c1930
    002c1960
    002c1960crypto/rsa.(*PSSOptions).saltLength: ; void crypto/rsa.(*PSSOptions).saltLength(crypto/rsa.PSSOptions * opts)
    002c1960str x30, [sp-32]!
    002c1964stur x29, [sp-8]
    002c1968sub x29, sp, 8
    002c196cstr x0, [sp+40]
    002c1970str xzr, [sp+16]
    002c1974cbnz x0, 0x2c197c
    002c1978b 0x2c1994
    002c197c
    002c197cloc_2c197c:
    002c197cldrsb x27, [x0]
    002c1980ldr x0, [x0]
    002c1984str x0, [sp+16]
    002c1988add x29, sp, 24
    002c198cadd sp, sp, 32
    002c1990ret x30
    002c1994
    002c1994loc_2c1994:
    002c1994str xzr, [sp+16]
    002c1998mov x0, xzr
    002c199cadd x29, sp, 24
    002c19a0add sp, sp, 32
    002c19a4ret x30
    002c19a8udf 0
    002c19acudf 0
    002c1960
    002c19b0
    002c19b0crypto/rsa.SignPSS: ; void crypto/rsa.SignPSS(io.Reader rand, crypto/rsa.PrivateKey * priv, crypto.Hash hash, struct []uint8 digest, crypto/rsa.PSSOptions * opts)
    002c19b0ldr x16, [x28+16]
    002c19b4sub x17, sp, 416
    002c19b8subs xzr, x17, x16
    002c19bcb.ls 0x2c201c
    002c19c0sub x20, sp, 544
    002c19c4stp x29, x30, [x20-8]
    002c19c8add sp, x20, 0
    002c19ccsub x29, sp, 8
    002c19d0str x0, [sp+552]
    002c19d4str x1, [sp+560]
    002c19d8str x2, [sp+568]
    002c19dcstr x3, [sp+576]
    002c19e0str x4, [sp+584]
    002c19e4str x5, [sp+592]
    002c19e8str x6, [sp+600]
    002c19ecstr x7, [sp+608]
    002c19f0str xzr, [sp+144]
    002c19f4stp xzr, xzr, [sp+152]
    002c19f8stp xzr, xzr, [sp+128]
    002c19fcldr x0, [sp+568]
    002c1a00ldrsb x27, [x0]
    002c1a04str x0, [sp+312]
    002c1a08bl crypto/rsa.checkPublicKeySize
    002c1a0cstr x0, [sp+224]
    002c1a10str x1, [sp+232]
    002c1a14cbnz x0, 0x2c1a1c
    002c1a18b 0x2c1a4c
    002c1a1c
    002c1a1cloc_2c1a1c:
    002c1a1cstr xzr, [sp+144]
    002c1a20stp xzr, xzr, [sp+152]
    002c1a24ldr x3, [sp+224]
    002c1a28ldr x4, [sp+232]
    002c1a2cstr x3, [sp+128]
    002c1a30str x4, [sp+136]
    002c1a34ldr x0, [sp+144]
    002c1a38ldr x1, [sp+152]
    002c1a3cldr x2, [sp+160]
    002c1a40ldp x29, x30, [sp-8]
    002c1a44add sp, sp, 544
    002c1a48ret x30
    002c1a4c
    002c1a4cloc_2c1a4c:
    002c1a4cldr x0, [sp+608]
    002c1a50subs xzr, x0, 0
    002c1a54cset x1, ne
    002c1a58strb w1, [sp+95]
    002c1a5ccbnz x0, 0x2c1a64
    002c1a60b 0x2c1a80
    002c1a64
    002c1a64loc_2c1a64:
    002c1a64ldr x0, [sp+608]
    002c1a68ldrsb x27, [x0]
    002c1a6cldr x0, [x0+8]
    002c1a70subs xzr, x0, 0
    002c1a74cset x0, ne
    002c1a78strb w0, [sp+95]
    002c1a7cb 0x2c1a84
    002c1a80
    002c1a80loc_2c1a80:
    002c1a80b 0x2c1a84
    002c1a84
    002c1a84loc_2c1a84:
    002c1a84ldrb w0, [sp+95]
    002c1a88tbnz w0, 0, 0x2c1a90
    002c1a8cb 0x2c1aa4
    002c1a90
    002c1a90loc_2c1a90:
    002c1a90ldr x0, [sp+608]
    002c1a94ldrsb x27, [x0]
    002c1a98ldr x0, [x0+8]
    002c1a9cstr x0, [sp+576]
    002c1aa0b 0x2c1aa8
    002c1aa4
    002c1aa4loc_2c1aa4:
    002c1aa4b 0x2c1aa8
    002c1aa8
    002c1aa8loc_2c1aa8:
    002c1aa8bl crypto/internal/boring.UnreachableExceptTests
    002c1aacldr x0, [sp+576]
    002c1ab0bl crypto.Hash.New
    002c1ab4str x0, [sp+400]
    002c1ab8str x1, [sp+408]
    002c1abcbl crypto/internal/fips140hash.Unwrap
    002c1ac0str x0, [sp+176]
    002c1ac4str x1, [sp+184]
    002c1ac8ldr x0, [sp+568]
    002c1accbl crypto/rsa.checkFIPS140OnlyPrivateKey
    002c1ad0str x0, [sp+208]
    002c1ad4str x1, [sp+216]
    002c1ad8cbnz x0, 0x2c1ae0
    002c1adcb 0x2c1b10
    002c1ae0
    002c1ae0loc_2c1ae0:
    002c1ae0str xzr, [sp+144]
    002c1ae4stp xzr, xzr, [sp+152]
    002c1ae8ldr x3, [sp+208]
    002c1aecldr x4, [sp+216]
    002c1af0str x3, [sp+128]
    002c1af4str x4, [sp+136]
    002c1af8ldr x0, [sp+144]
    002c1afcldr x1, [sp+152]
    002c1b00ldr x2, [sp+160]
    002c1b04ldp x29, x30, [sp-8]
    002c1b08add sp, sp, 544
    002c1b0cret x30
    002c1b10
    002c1b10loc_2c1b10:
    002c1b10adrp x27, 0x78a000
    002c1b14ldrb w2, [x27+1551]
    002c1b18strb w2, [sp+95]
    002c1b1ctbnz w2, 0, 0x2c1b24
    002c1b20b 0x2c1b40
    002c1b24
    002c1b24loc_2c1b24:
    002c1b24ldr x0, [sp+176]
    002c1b28ldr x1, [sp+184]
    002c1b2cbl crypto/internal/fips140only.ApprovedHash
    002c1b30strb w0, [sp+94]
    002c1b34eor x2, x0, 1
    002c1b38strb w2, [sp+95]
    002c1b3cb 0x2c1b44
    002c1b40
    002c1b40loc_2c1b40:
    002c1b40b 0x2c1b44
    002c1b44
    002c1b44loc_2c1b44:
    002c1b44ldrb w2, [sp+95]
    002c1b48tbnz w2, 0, 0x2c1b50
    002c1b4cb 0x2c1b98
    002c1b50
    002c1b50loc_2c1b50:
    002c1b50adrp x0, 0x40f000
    002c1b54add x0, x0, 2236
    002c1b58orr x1, xzr, 96
    002c1b5cbl errors.New
    002c1b60str x0, [sp+384]
    002c1b64str x1, [sp+392]
    002c1b68str xzr, [sp+144]
    002c1b6cstp xzr, xzr, [sp+152]
    002c1b70ldr x3, [sp+384]
    002c1b74ldr x4, [sp+392]
    002c1b78str x3, [sp+128]
    002c1b7cstr x4, [sp+136]
    002c1b80ldr x0, [sp+144]
    002c1b84ldr x1, [sp+152]
    002c1b88ldr x2, [sp+160]
    002c1b8cldp x29, x30, [sp-8]
    002c1b90add sp, sp, 544
    002c1b94ret x30
    002c1b98
    002c1b98loc_2c1b98:
    002c1b98adrp x27, 0x78a000
    002c1b9cldrb w2, [x27+1551]
    002c1ba0strb w2, [sp+95]
    002c1ba4tbnz w2, 0, 0x2c1bac
    002c1ba8b 0x2c1bc8
    002c1bac
    002c1bacloc_2c1bac:
    002c1bacldr x0, [sp+552]
    002c1bb0ldr x1, [sp+560]
    002c1bb4bl crypto/internal/fips140only.ApprovedRandomReader
    002c1bb8strb w0, [sp+94]
    002c1bbceor x2, x0, 1
    002c1bc0strb w2, [sp+95]
    002c1bc4b 0x2c1bcc
    002c1bc8
    002c1bc8loc_2c1bc8:
    002c1bc8b 0x2c1bcc
    002c1bcc
    002c1bccloc_2c1bcc:
    002c1bccldrb w2, [sp+95]
    002c1bd0tbnz w2, 0, 0x2c1bd8
    002c1bd4b 0x2c1c20
    002c1bd8
    002c1bd8loc_2c1bd8:
    002c1bd8adrp x0, 0x40d000
    002c1bdcadd x0, x0, 991
    002c1be0movz x1, 68
    002c1be4bl errors.New
    002c1be8str x0, [sp+384]
    002c1becstr x1, [sp+392]
    002c1bf0str xzr, [sp+144]
    002c1bf4stp xzr, xzr, [sp+152]
    002c1bf8ldr x3, [sp+384]
    002c1bfcldr x4, [sp+392]
    002c1c00str x3, [sp+128]
    002c1c04str x4, [sp+136]
    002c1c08ldr x0, [sp+144]
    002c1c0cldr x1, [sp+152]
    002c1c10ldr x2, [sp+160]
    002c1c14ldp x29, x30, [sp-8]
    002c1c18add sp, sp, 544
    002c1c1cret x30
    002c1c20
    002c1c20loc_2c1c20:
    002c1c20str xzr, [sp+376]
    002c1c24stp xzr, xzr, [sp+384]
    002c1c28ldr x0, [sp+568]
    002c1c2cbl crypto/rsa.fipsPrivateKey
    002c1c30str x0, [sp+376]
    002c1c34str x1, [sp+384]
    002c1c38str x2, [sp+392]
    002c1c3cldr x1, [sp+376]
    002c1c40str x1, [sp+528]
    002c1c44ldr x1, [sp+384]
    002c1c48ldr x2, [sp+392]
    002c1c4cstr x1, [sp+512]
    002c1c50str x2, [sp+520]
    002c1c54ldr x1, [sp+528]
    002c1c58str x1, [sp+168]
    002c1c5cldr x1, [sp+520]
    002c1c60ldr x2, [sp+512]
    002c1c64str x2, [sp+192]
    002c1c68str x1, [sp+200]
    002c1c6ccbnz x2, 0x2c1c74
    002c1c70b 0x2c1ca4
    002c1c74
    002c1c74loc_2c1c74:
    002c1c74str xzr, [sp+144]
    002c1c78stp xzr, xzr, [sp+152]
    002c1c7cldr x3, [sp+192]
    002c1c80ldr x4, [sp+200]
    002c1c84str x3, [sp+128]
    002c1c88str x4, [sp+136]
    002c1c8cldr x0, [sp+144]
    002c1c90ldr x1, [sp+152]
    002c1c94ldr x2, [sp+160]
    002c1c98ldp x29, x30, [sp-8]
    002c1c9cadd sp, sp, 544
    002c1ca0ret x30
    002c1ca4
    002c1ca4loc_2c1ca4:
    002c1ca4ldr x0, [sp+608]
    002c1ca8bl crypto/rsa.(*PSSOptions).saltLength
    002c1cacstr x0, [sp+96]
    002c1cb0adrp x27, 0x78a000
    002c1cb4ldrb w1, [x27+1551]
    002c1cb8strb w1, [sp+95]
    002c1cbctbnz w1, 0, 0x2c1cc4
    002c1cc0b 0x2c1cf0
    002c1cc4
    002c1cc4loc_2c1cc4:
    002c1cc4ldr x1, [sp+176]
    002c1cc8ldrsb x27, [x1]
    002c1cccldr x0, [sp+184]
    002c1cd0ldr x1, [x1+40]
    002c1cd4blr x1
    002c1cd8str x0, [sp+112]
    002c1cdcldr x1, [sp+96]
    002c1ce0subs xzr, x0, x1
    002c1ce4cset x1, lt
    002c1ce8strb w1, [sp+95]
    002c1cecb 0x2c1cf4
    002c1cf0
    002c1cf0loc_2c1cf0:
    002c1cf0b 0x2c1cf4
    002c1cf4
    002c1cf4loc_2c1cf4:
    002c1cf4ldrb w9, [sp+95]
    002c1cf8tbnz w9, 0, 0x2c1d00
    002c1cfcb 0x2c1d48
    002c1d00
    002c1d00loc_2c1d00:
    002c1d00adrp x0, 0x40f000
    002c1d04add x0, x0, 791
    002c1d08movz x1, 85
    002c1d0cbl errors.New
    002c1d10str x0, [sp+384]
    002c1d14str x1, [sp+392]
    002c1d18str xzr, [sp+144]
    002c1d1cstp xzr, xzr, [sp+152]
    002c1d20ldr x3, [sp+384]
    002c1d24ldr x4, [sp+392]
    002c1d28str x3, [sp+128]
    002c1d2cstr x4, [sp+136]
    002c1d30ldr x0, [sp+144]
    002c1d34ldr x1, [sp+152]
    002c1d38ldr x2, [sp+160]
    002c1d3cldp x29, x30, [sp-8]
    002c1d40add sp, sp, 544
    002c1d44ret x30
    002c1d48
    002c1d48loc_2c1d48:
    002c1d48ldr x9, [sp+96]
    002c1d4cstr x9, [sp+104]
    002c1d50adds xzr, x9, 1
    002c1d54b.eq 0x2c1d5c
    002c1d58b 0x2c1d7c
    002c1d5c
    002c1d5cloc_2c1d5c:
    002c1d5cb 0x2c1d60
    002c1d60
    002c1d60loc_2c1d60:
    002c1d60ldr x1, [sp+176]
    002c1d64ldrsb x27, [x1]
    002c1d68ldr x1, [x1+40]
    002c1d6cldr x0, [sp+184]
    002c1d70blr x1
    002c1d74str x0, [sp+96]
    002c1d78b 0x2c1ec4
    002c1d7c
    002c1d7cloc_2c1d7c:
    002c1d7ccbz x9, 0x2c1d84
    002c1d80b 0x2c1e60
    002c1d84
    002c1d84loc_2c1d84:
    002c1d84b 0x2c1d88
    002c1d88
    002c1d88loc_2c1d88:
    002c1d88ldr x0, [sp+168]
    002c1d8cbl crypto/internal/fips140/rsa.(*PrivateKey).PublicKey
    002c1d90str x0, [sp+368]
    002c1d94stp xzr, xzr, [sp+384]
    002c1d98ldr x2, [sp+184]
    002c1d9cldr x1, [sp+176]
    002c1da0str x1, [sp+296]
    002c1da4str x2, [sp+304]
    002c1da8cbnz x1, 0x2c1db0
    002c1dacb 0x2c1dd0
    002c1db0
    002c1db0loc_2c1db0:
    002c1db0str x2, [sp+240]
    002c1db4ldr x1, [x1+8]
    002c1db8adrp x0, 0x74f000
    002c1dbcadd x0, x0, 3920
    002c1dc0bl runtime.typeAssert
    002c1dc4ldr x2, [sp+240]
    002c1dc8mov x1, x0
    002c1dccb 0x2c1dd4
    002c1dd0
    002c1dd0loc_2c1dd0:
    002c1dd0b 0x2c1dd4
    002c1dd4
    002c1dd4loc_2c1dd4:
    002c1dd4str x1, [sp+280]
    002c1dd8str x2, [sp+288]
    002c1ddcldr x0, [sp+368]
    002c1de0bl crypto/internal/fips140/rsa.PSSMaxSaltLength
    002c1de4str x0, [sp+112]
    002c1de8str x1, [sp+384]
    002c1decstr x2, [sp+392]
    002c1df0ldr x3, [sp+112]
    002c1df4str x3, [sp+120]
    002c1df8str x1, [sp+496]
    002c1dfcstr x2, [sp+504]
    002c1e00ldr x3, [sp+120]
    002c1e04str x3, [sp+96]
    002c1e08str x1, [sp+192]
    002c1e0cstr x2, [sp+200]
    002c1e10cbnz x1, 0x2c1e18
    002c1e14b 0x2c1e5c
    002c1e18
    002c1e18loc_2c1e18:
    002c1e18mov x0, x1
    002c1e1cmov x1, x2
    002c1e20bl crypto/rsa.fipsError
    002c1e24str x0, [sp+384]
    002c1e28str x1, [sp+392]
    002c1e2cstr xzr, [sp+144]
    002c1e30stp xzr, xzr, [sp+152]
    002c1e34ldr x3, [sp+384]
    002c1e38ldr x4, [sp+392]
    002c1e3cstr x3, [sp+128]
    002c1e40str x4, [sp+136]
    002c1e44ldr x0, [sp+144]
    002c1e48ldr x1, [sp+152]
    002c1e4cldr x2, [sp+160]
    002c1e50ldp x29, x30, [sp-8]
    002c1e54add sp, sp, 544
    002c1e58ret x30
    002c1e5c
    002c1e5cloc_2c1e5c:
    002c1e5cb 0x2c1ec4
    002c1e60
    002c1e60loc_2c1e60:
    002c1e60b 0x2c1e64
    002c1e64
    002c1e64loc_2c1e64:
    002c1e64b 0x2c1e68
    002c1e68
    002c1e68loc_2c1e68:
    002c1e68ldr x9, [sp+96]
    002c1e6csubs xzr, x9, 0
    002c1e70b.le 0x2c1e78
    002c1e74b 0x2c1ec0
    002c1e78
    002c1e78loc_2c1e78:
    002c1e78adrp x0, 0x400000
    002c1e7cadd x0, x0, 5
    002c1e80movz x1, 35
    002c1e84bl errors.New
    002c1e88str x0, [sp+384]
    002c1e8cstr x1, [sp+392]
    002c1e90str xzr, [sp+144]
    002c1e94stp xzr, xzr, [sp+152]
    002c1e98ldr x3, [sp+384]
    002c1e9cldr x4, [sp+392]
    002c1ea0str x3, [sp+128]
    002c1ea4str x4, [sp+136]
    002c1ea8ldr x0, [sp+144]
    002c1eacldr x1, [sp+152]
    002c1eb0ldr x2, [sp+160]
    002c1eb4ldp x29, x30, [sp-8]
    002c1eb8add sp, sp, 544
    002c1ebcret x30
    002c1ec0
    002c1ec0loc_2c1ec0:
    002c1ec0b 0x2c1ec4
    002c1ec4
    002c1ec4loc_2c1ec4:
    002c1ec4str xzr, [sp+344]
    002c1ec8stp xzr, xzr, [sp+352]
    002c1eccstp xzr, xzr, [sp+384]
    002c1ed0ldr x4, [sp+184]
    002c1ed4ldr x9, [sp+176]
    002c1ed8str x9, [sp+264]
    002c1edcstr x4, [sp+272]
    002c1ee0cbnz x9, 0x2c1ee8
    002c1ee4b 0x2c1f08
    002c1ee8
    002c1ee8loc_2c1ee8:
    002c1ee8str x4, [sp+240]
    002c1eecldr x1, [x9+8]
    002c1ef0adrp x0, 0x74f000
    002c1ef4add x0, x0, 3952
    002c1ef8bl runtime.typeAssert
    002c1efcldr x4, [sp+240]
    002c1f00mov x9, x0
    002c1f04b 0x2c1f0c
    002c1f08
    002c1f08loc_2c1f08:
    002c1f08b 0x2c1f0c
    002c1f0c
    002c1f0cloc_2c1f0c:
    002c1f0cstr x9, [sp+248]
    002c1f10str x4, [sp+256]
    002c1f14ldr x8, [sp+96]
    002c1f18ldr x0, [sp+552]
    002c1f1cldr x5, [sp+584]
    002c1f20ldr x2, [sp+168]
    002c1f24ldr x6, [sp+592]
    002c1f28ldr x1, [sp+560]
    002c1f2cldr x7, [sp+600]
    002c1f30mov x3, x9
    002c1f34bl crypto/internal/fips140/rsa.SignPSS
    002c1f38str x0, [sp+344]
    002c1f3cstr x1, [sp+352]
    002c1f40str x2, [sp+360]
    002c1f44str x3, [sp+384]
    002c1f48str x4, [sp+392]
    002c1f4cldr x9, [sp+344]
    002c1f50ldr x10, [sp+352]
    002c1f54ldr x11, [sp+360]
    002c1f58str x9, [sp+472]
    002c1f5cstr x10, [sp+480]
    002c1f60str x11, [sp+488]
    002c1f64ldr x9, [sp+384]
    002c1f68ldr x10, [sp+392]
    002c1f6cstr x9, [sp+456]
    002c1f70str x10, [sp+464]
    002c1f74str xzr, [sp+320]
    002c1f78stp xzr, xzr, [sp+328]
    002c1f7cstp xzr, xzr, [sp+384]
    002c1f80ldr x1, [sp+472]
    002c1f84ldr x2, [sp+480]
    002c1f88ldr x3, [sp+488]
    002c1f8cldr x4, [sp+456]
    002c1f90ldr x5, [sp+464]
    002c1f94adrp x0, 0x44f000
    002c1f98add x0, x0, 3760
    002c1f9cbl crypto/rsa.fipsError2[go.shape.[]uint8]
    002c1fa0str x0, [sp+320]
    002c1fa4str x1, [sp+328]
    002c1fa8str x2, [sp+336]
    002c1facstr x3, [sp+384]
    002c1fb0str x4, [sp+392]
    002c1fb4ldr x9, [sp+320]
    002c1fb8ldr x10, [sp+328]
    002c1fbcldr x11, [sp+336]
    002c1fc0str x9, [sp+432]
    002c1fc4str x10, [sp+440]
    002c1fc8str x11, [sp+448]
    002c1fccldr x9, [sp+384]
    002c1fd0ldr x10, [sp+392]
    002c1fd4str x9, [sp+416]
    002c1fd8str x10, [sp+424]
    002c1fdcldr x9, [sp+432]
    002c1fe0ldr x10, [sp+440]
    002c1fe4ldr x11, [sp+448]
    002c1fe8str x9, [sp+144]
    002c1fecstr x10, [sp+152]
    002c1ff0str x11, [sp+160]
    002c1ff4ldr x3, [sp+416]
    002c1ff8ldr x4, [sp+424]
    002c1ffcstr x3, [sp+128]
    002c2000str x4, [sp+136]
    002c2004ldr x0, [sp+144]
    002c2008ldr x1, [sp+152]
    002c200cldr x2, [sp+160]
    002c2010ldp x29, x30, [sp-8]
    002c2014add sp, sp, 544
    002c2018ret x30
    002c201c
    002c201cloc_2c201c:
    002c201cstp x0, x1, [sp+8]
    002c2020stp x2, x3, [sp+24]
    002c2024stp x4, x5, [sp+40]
    002c2028stp x6, x7, [sp+56]
    002c202cmov x3, x30
    002c2030bl runtime.morestack_noctxt.abi0
    002c2034ldp x0, x1, [sp+8]
    002c2038ldp x2, x3, [sp+24]
    002c203cldp x4, x5, [sp+40]
    002c2040ldp x6, x7, [sp+56]
    002c2044b 0x2c19b0
    002c2048udf 0
    002c204cudf 0
    002c19b0
    002c2050
    002c2050crypto/rsa.VerifyPSS: ; void crypto/rsa.VerifyPSS(crypto/rsa.PublicKey * pub, crypto.Hash hash, struct []uint8 digest, struct []uint8 sig, crypto/rsa.PSSOptions * opts)
    002c2050ldr x16, [x28+16]
    002c2054sub x17, sp, 272
    002c2058subs xzr, x17, x16
    002c205cb.ls 0x2c2460
    002c2060sub x20, sp, 400
    002c2064stp x29, x30, [x20-8]
    002c2068add sp, x20, 0
    002c206csub x29, sp, 8
    002c2070str x0, [sp+408]
    002c2074str x1, [sp+416]
    002c2078str x2, [sp+424]
    002c207cstr x3, [sp+432]
    002c2080str x4, [sp+440]
    002c2084str x5, [sp+448]
    002c2088str x6, [sp+456]
    002c208cstr x7, [sp+464]
    002c2090str x8, [sp+472]
    002c2094stp xzr, xzr, [sp+120]
    002c2098ldr x0, [sp+408]
    002c209cbl crypto/rsa.checkPublicKeySize
    002c20a0str x0, [sp+192]
    002c20a4str x1, [sp+200]
    002c20a8cbnz x0, 0x2c20b0
    002c20acb 0x2c20c4
    002c20b0
    002c20b0loc_2c20b0:
    002c20b0str x0, [sp+120]
    002c20b4str x1, [sp+128]
    002c20b8ldp x29, x30, [sp-8]
    002c20bcadd sp, sp, 400
    002c20c0ret x30
    002c20c4
    002c20c4loc_2c20c4:
    002c20c4ldr x0, [sp+416]
    002c20c8bl crypto.Hash.New
    002c20ccstr x0, [sp+352]
    002c20d0str x1, [sp+360]
    002c20d4bl crypto/internal/fips140hash.Unwrap
    002c20d8str x0, [sp+144]
    002c20dcstr x1, [sp+152]
    002c20e0ldr x0, [sp+408]
    002c20e4bl crypto/rsa.checkFIPS140OnlyPublicKey
    002c20e8str x0, [sp+176]
    002c20ecstr x1, [sp+184]
    002c20f0cbnz x0, 0x2c20f8
    002c20f4b 0x2c210c
    002c20f8
    002c20f8loc_2c20f8:
    002c20f8str x0, [sp+120]
    002c20fcstr x1, [sp+128]
    002c2100ldp x29, x30, [sp-8]
    002c2104add sp, sp, 400
    002c2108ret x30
    002c210c
    002c210cloc_2c210c:
    002c210cadrp x27, 0x789000
    002c2110ldrb w2, [x27+1551]
    002c2114strb w2, [sp+95]
    002c2118tbnz w2, 0, 0x2c2120
    002c211cb 0x2c213c
    002c2120
    002c2120loc_2c2120:
    002c2120ldr x0, [sp+144]
    002c2124ldr x1, [sp+152]
    002c2128bl crypto/internal/fips140only.ApprovedHash
    002c212cstrb w0, [sp+94]
    002c2130eor x2, x0, 1
    002c2134strb w2, [sp+95]
    002c2138b 0x2c2140
    002c213c
    002c213cloc_2c213c:
    002c213cb 0x2c2140
    002c2140
    002c2140loc_2c2140:
    002c2140ldrb w2, [sp+95]
    002c2144tbnz w2, 0, 0x2c214c
    002c2148b 0x2c2178
    002c214c
    002c214cloc_2c214c:
    002c214cadrp x0, 0x40e000
    002c2150add x0, x0, 2236
    002c2154orr x1, xzr, 96
    002c2158bl errors.New
    002c215cstr x0, [sp+336]
    002c2160str x1, [sp+344]
    002c2164str x0, [sp+120]
    002c2168str x1, [sp+128]
    002c216cldp x29, x30, [sp-8]
    002c2170add sp, sp, 400
    002c2174ret x30
    002c2178
    002c2178loc_2c2178:
    002c2178str xzr, [sp+328]
    002c217cstp xzr, xzr, [sp+336]
    002c2180ldr x0, [sp+408]
    002c2184bl crypto/rsa.fipsPublicKey
    002c2188str x0, [sp+328]
    002c218cstr x1, [sp+336]
    002c2190str x2, [sp+344]
    002c2194ldr x1, [sp+328]
    002c2198str x1, [sp+384]
    002c219cldr x1, [sp+336]
    002c21a0ldr x2, [sp+344]
    002c21a4str x1, [sp+368]
    002c21a8str x2, [sp+376]
    002c21acldr x1, [sp+384]
    002c21b0str x1, [sp+136]
    002c21b4ldr x1, [sp+376]
    002c21b8ldr x0, [sp+368]
    002c21bcstr x0, [sp+160]
    002c21c0str x1, [sp+168]
    002c21c4cbnz x0, 0x2c21cc
    002c21c8b 0x2c21e0
    002c21cc
    002c21ccloc_2c21cc:
    002c21ccstr x0, [sp+120]
    002c21d0str x1, [sp+128]
    002c21d4ldp x29, x30, [sp-8]
    002c21d8add sp, sp, 400
    002c21dcret x30
    002c21e0
    002c21e0loc_2c21e0:
    002c21e0ldr x0, [sp+472]
    002c21e4bl crypto/rsa.(*PSSOptions).saltLength
    002c21e8str x0, [sp+96]
    002c21ecadrp x27, 0x789000
    002c21f0ldrb w1, [x27+1551]
    002c21f4strb w1, [sp+95]
    002c21f8tbnz w1, 0, 0x2c2200
    002c21fcb 0x2c222c
    002c2200
    002c2200loc_2c2200:
    002c2200ldr x1, [sp+144]
    002c2204ldrsb x27, [x1]
    002c2208ldr x0, [sp+152]
    002c220cldr x1, [x1+40]
    002c2210blr x1
    002c2214str x0, [sp+112]
    002c2218ldr x1, [sp+96]
    002c221csubs xzr, x0, x1
    002c2220cset x1, lt
    002c2224strb w1, [sp+95]
    002c2228b 0x2c2230
    002c222c
    002c222cloc_2c222c:
    002c222cb 0x2c2230
    002c2230
    002c2230loc_2c2230:
    002c2230ldrb w10, [sp+95]
    002c2234tbnz w10, 0, 0x2c223c
    002c2238b 0x2c2268
    002c223c
    002c223cloc_2c223c:
    002c223cadrp x0, 0x40e000
    002c2240add x0, x0, 791
    002c2244movz x1, 85
    002c2248bl errors.New
    002c224cstr x0, [sp+336]
    002c2250str x1, [sp+344]
    002c2254str x0, [sp+120]
    002c2258str x1, [sp+128]
    002c225cldp x29, x30, [sp-8]
    002c2260add sp, sp, 400
    002c2264ret x30
    002c2268
    002c2268loc_2c2268:
    002c2268ldr x10, [sp+96]
    002c226cstr x10, [sp+104]
    002c2270adds xzr, x10, 1
    002c2274b.eq 0x2c227c
    002c2278b 0x2c2328
    002c227c
    002c227cloc_2c227c:
    002c227cb 0x2c2280
    002c2280
    002c2280loc_2c2280:
    002c2280ldr x1, [sp+144]
    002c2284ldrsb x27, [x1]
    002c2288ldr x1, [x1+40]
    002c228cldr x0, [sp+152]
    002c2290blr x1
    002c2294str x0, [sp+112]
    002c2298ldr x2, [sp+152]
    002c229cldr x1, [sp+144]
    002c22a0str x1, [sp+264]
    002c22a4str x2, [sp+272]
    002c22a8cbnz x1, 0x2c22b0
    002c22acb 0x2c22d0
    002c22b0
    002c22b0loc_2c22b0:
    002c22b0str x2, [sp+208]
    002c22b4ldr x1, [x1+8]
    002c22b8adrp x0, 0x74e000
    002c22bcadd x0, x0, 4016
    002c22c0bl runtime.typeAssert
    002c22c4ldr x2, [sp+208]
    002c22c8mov x1, x0
    002c22ccb 0x2c22d4
    002c22d0
    002c22d0loc_2c22d0:
    002c22d0b 0x2c22d4
    002c22d4
    002c22d4loc_2c22d4:
    002c22d4str x1, [sp+248]
    002c22d8str x2, [sp+256]
    002c22dcldr x9, [sp+112]
    002c22e0ldr x3, [sp+424]
    002c22e4ldr x6, [sp+448]
    002c22e8ldr x0, [sp+136]
    002c22ecldr x4, [sp+432]
    002c22f0ldr x7, [sp+456]
    002c22f4ldr x5, [sp+440]
    002c22f8ldr x8, [sp+464]
    002c22fcbl crypto/internal/fips140/rsa.VerifyPSSWithSaltLength
    002c2300str x0, [sp+312]
    002c2304str x1, [sp+320]
    002c2308bl crypto/rsa.fipsError
    002c230cstr x0, [sp+336]
    002c2310str x1, [sp+344]
    002c2314str x0, [sp+120]
    002c2318str x1, [sp+128]
    002c231cldp x29, x30, [sp-8]
    002c2320add sp, sp, 400
    002c2324ret x30
    002c2328
    002c2328loc_2c2328:
    002c2328cbz x10, 0x2c2330
    002c232cb 0x2c23c4
    002c2330
    002c2330loc_2c2330:
    002c2330b 0x2c2334
    002c2334
    002c2334loc_2c2334:
    002c2334ldr x2, [sp+152]
    002c2338ldr x9, [sp+144]
    002c233cstr x9, [sp+296]
    002c2340str x2, [sp+304]
    002c2344cbnz x9, 0x2c234c
    002c2348b 0x2c236c
    002c234c
    002c234cloc_2c234c:
    002c234cstr x2, [sp+208]
    002c2350ldr x1, [x9+8]
    002c2354adrp x0, 0x74e000
    002c2358add x0, x0, 3984
    002c235cbl runtime.typeAssert
    002c2360ldr x2, [sp+208]
    002c2364mov x9, x0
    002c2368b 0x2c2370
    002c236c
    002c236cloc_2c236c:
    002c236cb 0x2c2370
    002c2370
    002c2370loc_2c2370:
    002c2370str x9, [sp+280]
    002c2374str x2, [sp+288]
    002c2378ldr x3, [sp+424]
    002c237cldr x6, [sp+448]
    002c2380ldr x0, [sp+136]
    002c2384ldr x4, [sp+432]
    002c2388ldr x7, [sp+456]
    002c238cldr x5, [sp+440]
    002c2390ldr x8, [sp+464]
    002c2394mov x1, x9
    002c2398bl crypto/internal/fips140/rsa.VerifyPSS
    002c239cstr x0, [sp+336]
    002c23a0str x1, [sp+344]
    002c23a4bl crypto/rsa.fipsError
    002c23a8str x0, [sp+312]
    002c23acstr x1, [sp+320]
    002c23b0str x0, [sp+120]
    002c23b4str x1, [sp+128]
    002c23b8ldp x29, x30, [sp-8]
    002c23bcadd sp, sp, 400
    002c23c0ret x30
    002c23c4
    002c23c4loc_2c23c4:
    002c23c4b 0x2c23c8
    002c23c8
    002c23c8loc_2c23c8:
    002c23c8b 0x2c23cc
    002c23cc
    002c23ccloc_2c23cc:
    002c23ccldr x2, [sp+152]
    002c23d0ldr x10, [sp+144]
    002c23d4str x10, [sp+232]
    002c23d8str x2, [sp+240]
    002c23dccbnz x10, 0x2c23e4
    002c23e0b 0x2c2404
    002c23e4
    002c23e4loc_2c23e4:
    002c23e4str x2, [sp+208]
    002c23e8ldr x1, [x10+8]
    002c23ecadrp x0, 0x74e000
    002c23f0add x0, x0, 4048
    002c23f4bl runtime.typeAssert
    002c23f8ldr x2, [sp+208]
    002c23fcmov x10, x0
    002c2400b 0x2c2408
    002c2404
    002c2404loc_2c2404:
    002c2404b 0x2c2408
    002c2408
    002c2408loc_2c2408:
    002c2408str x10, [sp+216]
    002c240cstr x2, [sp+224]
    002c2410ldr x9, [sp+96]
    002c2414ldr x3, [sp+424]
    002c2418ldr x6, [sp+448]
    002c241cldr x0, [sp+136]
    002c2420ldr x4, [sp+432]
    002c2424ldr x7, [sp+456]
    002c2428ldr x5, [sp+440]
    002c242cldr x8, [sp+464]
    002c2430mov x1, x10
    002c2434bl crypto/internal/fips140/rsa.VerifyPSSWithSaltLength
    002c2438str x0, [sp+336]
    002c243cstr x1, [sp+344]
    002c2440bl crypto/rsa.fipsError
    002c2444str x0, [sp+312]
    002c2448str x1, [sp+320]
    002c244cstr x0, [sp+120]
    002c2450str x1, [sp+128]
    002c2454ldp x29, x30, [sp-8]
    002c2458add sp, sp, 400
    002c245cret x30
    002c2460
    002c2460loc_2c2460:
    002c2460stp x0, x1, [sp+8]
    002c2464stp x2, x3, [sp+24]
    002c2468stp x4, x5, [sp+40]
    002c246cstp x6, x7, [sp+56]
    002c2470str x8, [sp+72]
    002c2474mov x3, x30
    002c2478bl runtime.morestack_noctxt.abi0
    002c247cldp x0, x1, [sp+8]
    002c2480ldp x2, x3, [sp+24]
    002c2484ldp x4, x5, [sp+40]
    002c2488ldp x6, x7, [sp+56]
    002c248cldr x8, [sp+72]
    002c2490b 0x2c2050
    002c2494udf 0
    002c2498udf 0
    002c249cudf 0
    002c2050
    002c24a0
    002c24a0crypto/rsa.SignPKCS1v15: ; void crypto/rsa.SignPKCS1v15(io.Reader random, crypto/rsa.PrivateKey * priv, crypto.Hash hash, struct []uint8 hashed)
    002c24a0ldr x16, [x28+16]
    002c24a4sub x17, sp, 288
    002c24a8subs xzr, x17, x16
    002c24acb.ls 0x2c2840
    002c24b0sub x20, sp, 416
    002c24b4stp x29, x30, [x20-8]
    002c24b8add sp, x20, 0
    002c24bcsub x29, sp, 8
    002c24c0str x0, [sp+424]
    002c24c4str x1, [sp+432]
    002c24c8str x2, [sp+440]
    002c24ccstr x3, [sp+448]
    002c24d0str x4, [sp+456]
    002c24d4str x5, [sp+464]
    002c24d8str x6, [sp+472]
    002c24dcstr xzr, [sp+96]
    002c24e0stp xzr, xzr, [sp+104]
    002c24e4stp xzr, xzr, [sp+80]
    002c24e8stp xzr, xzr, [sp+128]
    002c24ecldr x1, [sp+448]
    002c24f0cbnz x1, 0x2c24f8
    002c24f4b 0x2c2578
    002c24f8
    002c24f8loc_2c24f8:
    002c24f8ldr x1, [sp+464]
    002c24fcstr x1, [sp+72]
    002c2500ldr x0, [sp+448]
    002c2504bl crypto.Hash.Size
    002c2508str x0, [sp+64]
    002c250cldr x1, [sp+72]
    002c2510subs xzr, x0, x1
    002c2514b.ne 0x2c251c
    002c2518b 0x2c2564
    002c251c
    002c251cloc_2c251c:
    002c251cadrp x0, 0x402000
    002c2520add x0, x0, 1619
    002c2524movz x1, 40
    002c2528bl errors.New
    002c252cstr x0, [sp+288]
    002c2530str x1, [sp+296]
    002c2534str xzr, [sp+96]
    002c2538stp xzr, xzr, [sp+104]
    002c253cldr x3, [sp+288]
    002c2540ldr x4, [sp+296]
    002c2544str x3, [sp+80]
    002c2548str x4, [sp+88]
    002c254cldr x0, [sp+96]
    002c2550ldr x1, [sp+104]
    002c2554ldr x2, [sp+112]
    002c2558ldp x29, x30, [sp-8]
    002c255cadd sp, sp, 416
    002c2560ret x30
    002c2564
    002c2564loc_2c2564:
    002c2564ldr x0, [sp+448]
    002c2568bl crypto.Hash.String
    002c256cstr x0, [sp+128]
    002c2570str x1, [sp+136]
    002c2574b 0x2c257c
    002c2578
    002c2578loc_2c2578:
    002c2578b 0x2c257c
    002c257c
    002c257cloc_2c257c:
    002c257cldr x0, [sp+440]
    002c2580ldrsb x27, [x0]
    002c2584str x0, [sp+192]
    002c2588bl crypto/rsa.checkPublicKeySize
    002c258cstr x0, [sp+176]
    002c2590str x1, [sp+184]
    002c2594cbnz x0, 0x2c259c
    002c2598b 0x2c25cc
    002c259c
    002c259cloc_2c259c:
    002c259cstr xzr, [sp+96]
    002c25a0stp xzr, xzr, [sp+104]
    002c25a4ldr x3, [sp+176]
    002c25a8ldr x4, [sp+184]
    002c25acstr x3, [sp+80]
    002c25b0str x4, [sp+88]
    002c25b4ldr x0, [sp+96]
    002c25b8ldr x1, [sp+104]
    002c25bcldr x2, [sp+112]
    002c25c0ldp x29, x30, [sp-8]
    002c25c4add sp, sp, 416
    002c25c8ret x30
    002c25cc
    002c25ccloc_2c25cc:
    002c25ccldr x0, [sp+440]
    002c25d0bl crypto/rsa.checkFIPS140OnlyPrivateKey
    002c25d4str x0, [sp+160]
    002c25d8str x1, [sp+168]
    002c25dccbnz x0, 0x2c25e4
    002c25e0b 0x2c2614
    002c25e4
    002c25e4loc_2c25e4:
    002c25e4str xzr, [sp+96]
    002c25e8stp xzr, xzr, [sp+104]
    002c25ecldr x3, [sp+160]
    002c25f0ldr x4, [sp+168]
    002c25f4str x3, [sp+80]
    002c25f8str x4, [sp+88]
    002c25fcldr x0, [sp+96]
    002c2600ldr x1, [sp+104]
    002c2604ldr x2, [sp+112]
    002c2608ldp x29, x30, [sp-8]
    002c260cadd sp, sp, 416
    002c2610ret x30
    002c2614
    002c2614loc_2c2614:
    002c2614adrp x27, 0x789000
    002c2618ldrb w2, [x27+1551]
    002c261cstrb w2, [sp+63]
    002c2620tbnz w2, 0, 0x2c2628
    002c2624b 0x2c2658
    002c2628
    002c2628loc_2c2628:
    002c2628ldr x0, [sp+448]
    002c262cbl crypto.Hash.New
    002c2630str x0, [sp+272]
    002c2634str x1, [sp+280]
    002c2638bl crypto/internal/fips140hash.Unwrap
    002c263cstr x0, [sp+256]
    002c2640str x1, [sp+264]
    002c2644bl crypto/internal/fips140only.ApprovedHash
    002c2648strb w0, [sp+62]
    002c264ceor x1, x0, 1
    002c2650strb w1, [sp+63]
    002c2654b 0x2c265c
    002c2658
    002c2658loc_2c2658:
    002c2658b 0x2c265c
    002c265c
    002c265cloc_2c265c:
    002c265cldrb w2, [sp+63]
    002c2660tbnz w2, 0, 0x2c2668
    002c2664b 0x2c26b0
    002c2668
    002c2668loc_2c2668:
    002c2668adrp x0, 0x40e000
    002c266cadd x0, x0, 2236
    002c2670orr x1, xzr, 96
    002c2674bl errors.New
    002c2678str x0, [sp+288]
    002c267cstr x1, [sp+296]
    002c2680str xzr, [sp+96]
    002c2684stp xzr, xzr, [sp+104]
    002c2688ldr x3, [sp+288]
    002c268cldr x4, [sp+296]
    002c2690str x3, [sp+80]
    002c2694str x4, [sp+88]
    002c2698ldr x0, [sp+96]
    002c269cldr x1, [sp+104]
    002c26a0ldr x2, [sp+112]
    002c26a4ldp x29, x30, [sp-8]
    002c26a8add sp, sp, 416
    002c26acret x30
    002c26b0
    002c26b0loc_2c26b0:
    002c26b0str xzr, [sp+248]
    002c26b4stp xzr, xzr, [sp+288]
    002c26b8ldr x0, [sp+440]
    002c26bcbl crypto/rsa.fipsPrivateKey
    002c26c0str x0, [sp+248]
    002c26c4str x1, [sp+288]
    002c26c8str x2, [sp+296]
    002c26ccldr x1, [sp+248]
    002c26d0str x1, [sp+400]
    002c26d4ldr x1, [sp+288]
    002c26d8ldr x2, [sp+296]
    002c26dcstr x1, [sp+384]
    002c26e0str x2, [sp+392]
    002c26e4ldr x1, [sp+400]
    002c26e8str x1, [sp+120]
    002c26ecldr x1, [sp+392]
    002c26f0ldr x2, [sp+384]
    002c26f4str x2, [sp+144]
    002c26f8str x1, [sp+152]
    002c26fccbnz x2, 0x2c2704
    002c2700b 0x2c2734
    002c2704
    002c2704loc_2c2704:
    002c2704str xzr, [sp+96]
    002c2708stp xzr, xzr, [sp+104]
    002c270cldr x3, [sp+144]
    002c2710ldr x4, [sp+152]
    002c2714str x3, [sp+80]
    002c2718str x4, [sp+88]
    002c271cldr x0, [sp+96]
    002c2720ldr x1, [sp+104]
    002c2724ldr x2, [sp+112]
    002c2728ldp x29, x30, [sp-8]
    002c272cadd sp, sp, 416
    002c2730ret x30
    002c2734
    002c2734loc_2c2734:
    002c2734str xzr, [sp+224]
    002c2738stp xzr, xzr, [sp+232]
    002c273cstp xzr, xzr, [sp+288]
    002c2740ldr x1, [sp+128]
    002c2744ldr x3, [sp+456]
    002c2748ldr x2, [sp+136]
    002c274cldr x4, [sp+464]
    002c2750ldr x5, [sp+472]
    002c2754ldr x0, [sp+120]
    002c2758bl crypto/internal/fips140/rsa.SignPKCS1v15
    002c275cstr x0, [sp+224]
    002c2760str x1, [sp+232]
    002c2764str x2, [sp+240]
    002c2768str x3, [sp+288]
    002c276cstr x4, [sp+296]
    002c2770ldr x6, [sp+224]
    002c2774ldr x7, [sp+232]
    002c2778ldr x8, [sp+240]
    002c277cstr x6, [sp+360]
    002c2780str x7, [sp+368]
    002c2784str x8, [sp+376]
    002c2788ldr x6, [sp+288]
    002c278cldr x7, [sp+296]
    002c2790str x6, [sp+344]
    002c2794str x7, [sp+352]
    002c2798str xzr, [sp+200]
    002c279cstp xzr, xzr, [sp+208]
    002c27a0stp xzr, xzr, [sp+288]
    002c27a4ldr x1, [sp+360]
    002c27a8ldr x2, [sp+368]
    002c27acldr x3, [sp+376]
    002c27b0ldr x4, [sp+344]
    002c27b4ldr x5, [sp+352]
    002c27b8adrp x0, 0x44e000
    002c27bcadd x0, x0, 3760
    002c27c0bl crypto/rsa.fipsError2[go.shape.[]uint8]
    002c27c4str x0, [sp+200]
    002c27c8str x1, [sp+208]
    002c27ccstr x2, [sp+216]
    002c27d0str x3, [sp+288]
    002c27d4str x4, [sp+296]
    002c27d8ldr x6, [sp+200]
    002c27dcldr x7, [sp+208]
    002c27e0ldr x8, [sp+216]
    002c27e4str x6, [sp+320]
    002c27e8str x7, [sp+328]
    002c27ecstr x8, [sp+336]
    002c27f0ldr x6, [sp+288]
    002c27f4ldr x7, [sp+296]
    002c27f8str x6, [sp+304]
    002c27fcstr x7, [sp+312]
    002c2800ldr x6, [sp+320]
    002c2804ldr x7, [sp+328]
    002c2808ldr x8, [sp+336]
    002c280cstr x6, [sp+96]
    002c2810str x7, [sp+104]
    002c2814str x8, [sp+112]
    002c2818ldr x3, [sp+304]
    002c281cldr x4, [sp+312]
    002c2820str x3, [sp+80]
    002c2824str x4, [sp+88]
    002c2828ldr x0, [sp+96]
    002c282cldr x1, [sp+104]
    002c2830ldr x2, [sp+112]
    002c2834ldp x29, x30, [sp-8]
    002c2838add sp, sp, 416
    002c283cret x30
    002c2840
    002c2840loc_2c2840:
    002c2840stp x0, x1, [sp+8]
    002c2844stp x2, x3, [sp+24]
    002c2848stp x4, x5, [sp+40]
    002c284cstr x6, [sp+56]
    002c2850mov x3, x30
    002c2854bl runtime.morestack_noctxt.abi0
    002c2858ldp x0, x1, [sp+8]
    002c285cldp x2, x3, [sp+24]
    002c2860ldp x4, x5, [sp+40]
    002c2864ldr x6, [sp+56]
    002c2868b 0x2c24a0
    002c286cudf 0
    002c24a0