File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    00394560
    00394560crypto/tls.sha1Hash: ; void crypto/tls.sha1Hash(struct [][]uint8 slices)
    00394560ldr x16, [x28+16]
    00394564sub x17, sp, 64
    00394568subs xzr, x17, x16
    0039456cb.ls 0x394678
    00394570str x30, [sp-192]!
    00394574stur x29, [sp-8]
    00394578sub x29, sp, 8
    0039457cstr x0, [sp+200]
    00394580str x1, [sp+208]
    00394584str x2, [sp+216]
    00394588str xzr, [sp+64]
    0039458cstp xzr, xzr, [sp+72]
    00394590bl crypto/sha1.New
    00394594str x0, [sp+112]
    00394598str x1, [sp+120]
    0039459cldr x0, [sp+208]
    003945a0ldr x1, [sp+200]
    003945a4ldr x2, [sp+216]
    003945a8str x1, [sp+160]
    003945acstr x0, [sp+168]
    003945b0str x2, [sp+176]
    003945b4str xzr, [sp+56]
    003945b8str x0, [sp+48]
    003945bcldr x0, [sp+160]
    003945c0str x0, [sp+40]
    003945c4b 0x3945c8
    003945c8
    003945c8loc_3945c8:
    003945c8ldr x4, [sp+48]
    003945ccldr x5, [sp+56]
    003945d0subs xzr, x4, x5
    003945d4b.gt 0x3945dc
    003945d8b 0x394634
    003945dc
    003945dcloc_3945dc:
    003945dcldr x4, [sp+40]
    003945e0str x4, [sp+128]
    003945e4ldr x4, [sp+128]
    003945e8ldr x1, [x4]
    003945ecldr x2, [x4+8]
    003945f0ldr x3, [x4+16]
    003945f4str x1, [sp+88]
    003945f8str x2, [sp+96]
    003945fcstr x3, [sp+104]
    00394600ldr x4, [sp+112]
    00394604ldrsb x27, [x4]
    00394608ldr x4, [x4+56]
    0039460cldr x0, [sp+120]
    00394610blr x4
    00394614b 0x394618
    00394618
    00394618loc_394618:
    00394618ldr x4, [sp+56]
    0039461cadd x4, x4, 1
    00394620str x4, [sp+56]
    00394624ldr x4, [sp+128]
    00394628add x4, x4, 24
    0039462cstr x4, [sp+40]
    00394630b 0x3945c8
    00394634
    00394634loc_394634:
    00394634ldr x4, [sp+112]
    00394638ldrsb x27, [x4]
    0039463cldr x4, [x4+48]
    00394640ldr x0, [sp+120]
    00394644mov x1, xzr
    00394648mov x2, xzr
    0039464cmov x3, x2
    00394650blr x4
    00394654str x0, [sp+136]
    00394658str x1, [sp+144]
    0039465cstr x2, [sp+152]
    00394660str x0, [sp+64]
    00394664str x1, [sp+72]
    00394668str x2, [sp+80]
    0039466cldur x29, [sp-8]
    00394670ldr x30, [sp], 192
    00394674ret x30
    00394678
    00394678loc_394678:
    00394678stp x0, x1, [sp+8]
    0039467cstr x2, [sp+24]
    00394680mov x3, x30
    00394684bl runtime.morestack_noctxt.abi0
    00394688ldp x0, x1, [sp+8]
    0039468cldr x2, [sp+24]
    00394690b 0x394560
    00394694udf 0
    00394698udf 0
    0039469cudf 0
    00394560
    003946a0
    003946a0crypto/tls.md5SHA1Hash: ; void crypto/tls.md5SHA1Hash(struct [][]uint8 slices)
    003946a0ldr x16, [x28+16]
    003946a4sub x17, sp, 240
    003946a8subs xzr, x17, x16
    003946acb.ls 0x39495c
    003946b0sub x20, sp, 368
    003946b4stp x29, x30, [x20-8]
    003946b8add sp, x20, 0
    003946bcsub x29, sp, 8
    003946c0str x0, [sp+376]
    003946c4str x1, [sp+384]
    003946c8str x2, [sp+392]
    003946ccstr xzr, [sp+96]
    003946d0stp xzr, xzr, [sp+104]
    003946d4adrp x0, 0x261000
    003946d8add x0, x0, 3072
    003946dcmovz x1, 36
    003946e0mov x2, x1
    003946e4bl runtime.makeslice
    003946e8str x0, [sp+144]
    003946ecmovz x3, 36
    003946f0str x3, [sp+152]
    003946f4str x3, [sp+160]
    003946f8bl crypto/md5.New
    003946fcstr x0, [sp+168]
    00394700str x1, [sp+176]
    00394704ldr x3, [sp+384]
    00394708ldr x4, [sp+376]
    0039470cldr x5, [sp+392]
    00394710str x4, [sp+232]
    00394714str x3, [sp+240]
    00394718str x5, [sp+248]
    0039471cstr xzr, [sp+48]
    00394720str x3, [sp+40]
    00394724ldr x3, [sp+232]
    00394728str x3, [sp+88]
    0039472cb 0x394730
    00394730
    00394730loc_394730:
    00394730ldr x4, [sp+40]
    00394734ldr x5, [sp+48]
    00394738subs xzr, x4, x5
    0039473cb.gt 0x394744
    00394740b 0x39479c
    00394744
    00394744loc_394744:
    00394744ldr x4, [sp+88]
    00394748str x4, [sp+352]
    0039474cldr x4, [sp+352]
    00394750ldr x1, [x4]
    00394754ldr x2, [x4+8]
    00394758ldr x3, [x4+16]
    0039475cstr x1, [sp+120]
    00394760str x2, [sp+128]
    00394764str x3, [sp+136]
    00394768ldr x4, [sp+168]
    0039476cldrsb x27, [x4]
    00394770ldr x4, [x4+56]
    00394774ldr x0, [sp+176]
    00394778blr x4
    0039477cb 0x394780
    00394780
    00394780loc_394780:
    00394780ldr x4, [sp+48]
    00394784add x4, x4, 1
    00394788str x4, [sp+48]
    0039478cldr x4, [sp+352]
    00394790add x4, x4, 24
    00394794str x4, [sp+88]
    00394798b 0x394730
    0039479c
    0039479cloc_39479c:
    0039479cldr x4, [sp+168]
    003947a0ldrsb x27, [x4]
    003947a4ldr x4, [x4+48]
    003947a8ldr x0, [sp+176]
    003947acmov x1, xzr
    003947b0mov x2, xzr
    003947b4mov x3, x2
    003947b8blr x4
    003947bcstr x0, [sp+208]
    003947c0str x1, [sp+216]
    003947c4str x2, [sp+224]
    003947c8ldr x4, [sp+152]
    003947ccldr x5, [sp+160]
    003947d0ldr x6, [sp+144]
    003947d4str x6, [sp+328]
    003947d8str x4, [sp+336]
    003947dcstr x5, [sp+344]
    003947e0ldr x4, [sp+216]
    003947e4ldr x5, [sp+208]
    003947e8ldr x6, [sp+224]
    003947ecstr x5, [sp+304]
    003947f0str x4, [sp+312]
    003947f4str x6, [sp+320]
    003947f8ldr x5, [sp+336]
    003947fcstr x5, [sp+80]
    00394800subs xzr, x5, x4
    00394804b.gt 0x39480c
    00394808b 0x394814
    0039480c
    0039480cloc_39480c:
    0039480cstr x4, [sp+80]
    00394810b 0x394818
    00394814
    00394814loc_394814:
    00394814b 0x394818
    00394818
    00394818loc_394818:
    00394818ldr x3, [sp+304]
    0039481cldr x4, [sp+328]
    00394820subs xzr, x3, x4
    00394824b.ne 0x39482c
    00394828b 0x394848
    0039482c
    0039482cloc_39482c:
    0039482cldr x3, [sp+80]
    00394830str x3, [sp+72]
    00394834ldr x2, [sp+72]
    00394838ldr x1, [sp+304]
    0039483cldr x0, [sp+328]
    00394840bl runtime.memmove
    00394844b 0x39484c
    00394848
    00394848loc_394848:
    00394848b 0x39484c
    0039484c
    0039484cloc_39484c:
    0039484cldr x1, [sp+152]
    00394850ldr x3, [sp+144]
    00394854ldr x4, [sp+160]
    00394858b 0x39485c
    0039485c
    0039485cloc_39485c:
    0039485csubs xzr, x1, 16
    00394860b.hs 0x394868
    00394864b 0x394950
    00394868
    00394868loc_394868:
    00394868sub x4, x4, 16
    0039486csub x5, xzr, x4
    00394870sub x6, x1, 16
    00394874sbfm x5, x5, 63, 63
    00394878and x5, x5, 16
    0039487cadd x3, x3, x5
    00394880str x3, [sp+208]
    00394884str x6, [sp+216]
    00394888str x4, [sp+224]
    0039488cldr x0, [sp+376]
    00394890ldr x1, [sp+384]
    00394894ldr x2, [sp+392]
    00394898bl crypto/tls.sha1Hash
    0039489cstr x0, [sp+184]
    003948a0str x1, [sp+192]
    003948a4str x2, [sp+200]
    003948a8ldr x3, [sp+208]
    003948acldr x4, [sp+216]
    003948b0ldr x5, [sp+224]
    003948b4str x3, [sp+280]
    003948b8str x4, [sp+288]
    003948bcstr x5, [sp+296]
    003948c0ldr x3, [sp+192]
    003948c4ldr x4, [sp+184]
    003948c8ldr x5, [sp+200]
    003948ccstr x4, [sp+256]
    003948d0str x3, [sp+264]
    003948d4str x5, [sp+272]
    003948d8ldr x4, [sp+288]
    003948dcstr x4, [sp+64]
    003948e0subs xzr, x4, x3
    003948e4b.gt 0x3948ec
    003948e8b 0x3948f4
    003948ec
    003948ecloc_3948ec:
    003948ecstr x3, [sp+64]
    003948f0b 0x3948f8
    003948f4
    003948f4loc_3948f4:
    003948f4b 0x3948f8
    003948f8
    003948f8loc_3948f8:
    003948f8ldr x3, [sp+256]
    003948fcldr x4, [sp+280]
    00394900subs xzr, x3, x4
    00394904b.ne 0x39490c
    00394908b 0x394928
    0039490c
    0039490cloc_39490c:
    0039490cldr x3, [sp+64]
    00394910str x3, [sp+56]
    00394914ldr x2, [sp+56]
    00394918ldr x1, [sp+256]
    0039491cldr x0, [sp+280]
    00394920bl runtime.memmove
    00394924b 0x39492c
    00394928
    00394928loc_394928:
    00394928b 0x39492c
    0039492c
    0039492cloc_39492c:
    0039492cldr x0, [sp+144]
    00394930ldr x1, [sp+152]
    00394934ldr x2, [sp+160]
    00394938str x0, [sp+96]
    0039493cstr x1, [sp+104]
    00394940str x2, [sp+112]
    00394944ldp x29, x30, [sp-8]
    00394948add sp, sp, 368
    0039494cret x30
    00394950
    00394950loc_394950:
    00394950orr x0, xzr, 16
    00394954bl runtime.panicSliceB
    00394958hint
    0039495c
    0039495cloc_39495c:
    0039495cstp x0, x1, [sp+8]
    00394960str x2, [sp+24]
    00394964mov x3, x30
    00394968bl runtime.morestack_noctxt.abi0
    0039496cldp x0, x1, [sp+8]
    00394970ldr x2, [sp+24]
    00394974b 0x3946a0
    00394978udf 0
    0039497cudf 0
    003946a0
    00394980
    00394980crypto/tls.hashForServerKeyExchange: ; void crypto/tls.hashForServerKeyExchange(uint8 sigType, crypto.Hash hashFunc, uint16 version, struct [][]uint8 slices)
    00394980ldr x16, [x28+16]
    00394984sub x17, sp, 224
    00394988subs xzr, x17, x16
    0039498cb.ls 0x394c90
    00394990sub x20, sp, 352
    00394994stp x29, x30, [x20-8]
    00394998add sp, x20, 0
    0039499csub x29, sp, 8
    003949a0strb w0, [sp+360]
    003949a4str x1, [sp+368]
    003949a8strh w2, [sp+376]
    003949acstr x3, [sp+384]
    003949b0str x4, [sp+392]
    003949b4str x5, [sp+400]
    003949b8str xzr, [sp+112]
    003949bcstp xzr, xzr, [sp+120]
    003949c0ldrb w5, [sp+360]
    003949c4subs wzr, w5, 228
    003949c8b.eq 0x3949d0
    003949ccb 0x394a04
    003949d0
    003949d0loc_3949d0:
    003949d0str xzr, [sp+184]
    003949d4stp xzr, xzr, [sp+192]
    003949d8ldr x5, [sp+392]
    003949dcldr x6, [sp+384]
    003949e0ldr x7, [sp+400]
    003949e4str x6, [sp+320]
    003949e8str x5, [sp+328]
    003949ecstr x7, [sp+336]
    003949f0str xzr, [sp+104]
    003949f4str x5, [sp+96]
    003949f8ldr x5, [sp+320]
    003949fcstr x5, [sp+88]
    00394a00b 0x394b78
    00394a04
    00394a04loc_394a04:
    00394a04ldrh w3, [sp+376]
    00394a08subs wzr, w3, 771
    00394a0cb.hs 0x394a14
    00394a10b 0x394a50
    00394a14
    00394a14loc_394a14:
    00394a14ldr x0, [sp+368]
    00394a18bl crypto.Hash.New
    00394a1cstr x0, [sp+208]
    00394a20str x1, [sp+216]
    00394a24ldr x1, [sp+392]
    00394a28ldr x2, [sp+384]
    00394a2cldr x3, [sp+400]
    00394a30str x2, [sp+320]
    00394a34str x1, [sp+328]
    00394a38str x3, [sp+336]
    00394a3cstr xzr, [sp+64]
    00394a40str x1, [sp+56]
    00394a44ldr x1, [sp+320]
    00394a48str x1, [sp+48]
    00394a4cb 0x394ac8
    00394a50
    00394a50loc_394a50:
    00394a50ldrb w3, [sp+360]
    00394a54subs wzr, w3, 227
    00394a58b.eq 0x394a60
    00394a5cb 0x394a94
    00394a60
    00394a60loc_394a60:
    00394a60ldr x0, [sp+384]
    00394a64ldr x1, [sp+392]
    00394a68ldr x2, [sp+400]
    00394a6cbl crypto/tls.sha1Hash
    00394a70str x0, [sp+296]
    00394a74str x1, [sp+304]
    00394a78str x2, [sp+312]
    00394a7cstr x0, [sp+112]
    00394a80str x1, [sp+120]
    00394a84str x2, [sp+128]
    00394a88ldp x29, x30, [sp-8]
    00394a8cadd sp, sp, 352
    00394a90ret x30
    00394a94
    00394a94loc_394a94:
    00394a94ldr x0, [sp+384]
    00394a98ldr x1, [sp+392]
    00394a9cldr x2, [sp+400]
    00394aa0bl crypto/tls.md5SHA1Hash
    00394aa4str x0, [sp+296]
    00394aa8str x1, [sp+304]
    00394aacstr x2, [sp+312]
    00394ab0str x0, [sp+112]
    00394ab4str x1, [sp+120]
    00394ab8str x2, [sp+128]
    00394abcldp x29, x30, [sp-8]
    00394ac0add sp, sp, 352
    00394ac4ret x30
    00394ac8
    00394ac8loc_394ac8:
    00394ac8ldr x4, [sp+56]
    00394accldr x5, [sp+64]
    00394ad0subs xzr, x4, x5
    00394ad4b.gt 0x394adc
    00394ad8b 0x394b34
    00394adc
    00394adcloc_394adc:
    00394adcldr x4, [sp+48]
    00394ae0str x4, [sp+248]
    00394ae4ldr x4, [sp+248]
    00394ae8ldr x1, [x4]
    00394aecldr x2, [x4+8]
    00394af0ldr x3, [x4+16]
    00394af4str x1, [sp+136]
    00394af8str x2, [sp+144]
    00394afcstr x3, [sp+152]
    00394b00ldr x4, [sp+208]
    00394b04ldrsb x27, [x4]
    00394b08ldr x4, [x4+56]
    00394b0cldr x0, [sp+216]
    00394b10blr x4
    00394b14b 0x394b18
    00394b18
    00394b18loc_394b18:
    00394b18ldr x4, [sp+64]
    00394b1cadd x4, x4, 1
    00394b20str x4, [sp+64]
    00394b24ldr x4, [sp+248]
    00394b28add x4, x4, 24
    00394b2cstr x4, [sp+48]
    00394b30b 0x394ac8
    00394b34
    00394b34loc_394b34:
    00394b34ldr x4, [sp+208]
    00394b38ldrsb x27, [x4]
    00394b3cldr x4, [x4+48]
    00394b40ldr x0, [sp+216]
    00394b44mov x1, xzr
    00394b48mov x2, xzr
    00394b4cmov x3, x2
    00394b50blr x4
    00394b54str x0, [sp+224]
    00394b58str x1, [sp+232]
    00394b5cstr x2, [sp+240]
    00394b60str x0, [sp+112]
    00394b64str x1, [sp+120]
    00394b68str x2, [sp+128]
    00394b6cldp x29, x30, [sp-8]
    00394b70add sp, sp, 352
    00394b74ret x30
    00394b78
    00394b78loc_394b78:
    00394b78ldr x5, [sp+96]
    00394b7cldr x6, [sp+104]
    00394b80subs xzr, x5, x6
    00394b84b.gt 0x394b8c
    00394b88b 0x394c6c
    00394b8c
    00394b8cloc_394b8c:
    00394b8cldr x5, [sp+88]
    00394b90str x5, [sp+288]
    00394b94ldr x5, [sp+288]
    00394b98ldr x6, [x5]
    00394b9cldr x7, [x5+8]
    00394ba0ldr x5, [x5+16]
    00394ba4str x6, [sp+160]
    00394ba8str x7, [sp+168]
    00394bacstr x5, [sp+176]
    00394bb0ldr x2, [sp+200]
    00394bb4ldr x0, [sp+184]
    00394bb8ldr x5, [sp+192]
    00394bbcstr x0, [sp+264]
    00394bc0str x5, [sp+272]
    00394bc4str x2, [sp+280]
    00394bc8ldr x6, [sp+168]
    00394bccadd x1, x5, x6
    00394bd0str x1, [sp+80]
    00394bd4subs xzr, x2, x1
    00394bd8b.hs 0x394be0
    00394bdcb 0x394be8
    00394be0
    00394be0loc_394be0:
    00394be0str x1, [sp+272]
    00394be4b 0x394c08
    00394be8
    00394be8loc_394be8:
    00394be8ldr x3, [sp+168]
    00394becadrp x4, 0x261000
    00394bf0add x4, x4, 3072
    00394bf4bl runtime.growslice
    00394bf8str x0, [sp+264]
    00394bfcstr x1, [sp+272]
    00394c00str x2, [sp+280]
    00394c04b 0x394c08
    00394c08
    00394c08loc_394c08:
    00394c08ldr x3, [sp+168]
    00394c0cstr x3, [sp+72]
    00394c10ldr x3, [sp+80]
    00394c14ldr x4, [sp+168]
    00394c18sub x3, x3, x4
    00394c1cldr x4, [sp+264]
    00394c20add x0, x4, x3
    00394c24str x0, [sp+256]
    00394c28ldr x2, [sp+72]
    00394c2cldr x1, [sp+160]
    00394c30bl runtime.memmove
    00394c34ldr x3, [sp+264]
    00394c38ldr x4, [sp+272]
    00394c3cldr x5, [sp+280]
    00394c40str x3, [sp+184]
    00394c44str x4, [sp+192]
    00394c48str x5, [sp+200]
    00394c4cb 0x394c50
    00394c50
    00394c50loc_394c50:
    00394c50ldr x5, [sp+104]
    00394c54add x5, x5, 1
    00394c58str x5, [sp+104]
    00394c5cldr x5, [sp+288]
    00394c60add x5, x5, 24
    00394c64str x5, [sp+88]
    00394c68b 0x394b78
    00394c6c
    00394c6cloc_394c6c:
    00394c6cldr x0, [sp+184]
    00394c70ldr x1, [sp+192]
    00394c74ldr x2, [sp+200]
    00394c78str x0, [sp+112]
    00394c7cstr x1, [sp+120]
    00394c80str x2, [sp+128]
    00394c84ldp x29, x30, [sp-8]
    00394c88add sp, sp, 352
    00394c8cret x30
    00394c90
    00394c90loc_394c90:
    00394c90strb w0, [sp+8]
    00394c94str x1, [sp+16]
    00394c98strh w2, [sp+24]
    00394c9cstp x3, x4, [sp+32]
    00394ca0str x5, [sp+48]
    00394ca4mov x3, x30
    00394ca8bl runtime.morestack_noctxt.abi0
    00394cacldrb w0, [sp+8]
    00394cb0ldr x1, [sp+16]
    00394cb4ldrh w2, [sp+24]
    00394cb8ldp x3, x4, [sp+32]
    00394cbcldr x5, [sp+48]
    00394cc0b 0x394980
    00394cc4udf 0
    00394cc8udf 0
    00394cccudf 0
    00394980
    00394cd0
    00394cd0crypto/tls.(*ecdheKeyAgreement).processServerKeyExchange: ; void crypto/tls.(*ecdheKeyAgreement).processServerKeyExchange(crypto/tls.ecdheKeyAgreement * ka, crypto/tls.Config * config, crypto/tls.clientHelloMsg * clientHello, crypto/tls.serverHelloMsg * serverHello, crypto/x509.Certificate * cert, crypto/tls.serverKeyExchangeMsg * skx)
    00394cd0ldr x16, [x28+16]
    00394cd4sub x17, sp, 736
    00394cd8subs xzr, x17, x16
    00394cdcb.ls 0x3959b0
    00394ce0sub x20, sp, 864
    00394ce4stp x29, x30, [x20-8]
    00394ce8add sp, x20, 0
    00394cecsub x29, sp, 8
    00394cf0str x0, [sp+872]
    00394cf4str x1, [sp+880]
    00394cf8str x2, [sp+888]
    00394cfcstr x3, [sp+896]
    00394d00str x4, [sp+904]
    00394d04str x5, [sp+912]
    00394d08stp xzr, xzr, [sp+184]
    00394d0cldr x3, [sp+912]
    00394d10ldrsb x27, [x3]
    00394d14ldr x3, [x3+8]
    00394d18str x3, [sp+160]
    00394d1csubs xzr, x3, 4
    00394d20b.lt 0x394d28
    00394d24b 0x394d4c
    00394d28
    00394d28loc_394d28:
    00394d28adrp x27, 0x68d000
    00394d2cldr x0, [x27+2864]
    00394d30adrp x27, 0x68d000
    00394d34ldr x1, [x27+2872]
    00394d38str x0, [sp+184]
    00394d3cstr x1, [sp+192]
    00394d40ldp x29, x30, [sp-8]
    00394d44add sp, sp, 864
    00394d48ret x30
    00394d4c
    00394d4cloc_394d4c:
    00394d4cldr x3, [sp+912]
    00394d50ldrsb x27, [x3]
    00394d54ldr x1, [x3+8]
    00394d58ldr x3, [x3]
    00394d5csubs xzr, x1, 0
    00394d60b.hi 0x394d68
    00394d64b 0x3959a4
    00394d68
    00394d68loc_394d68:
    00394d68ldrb w3, [x3]
    00394d6csubs wzr, w3, 3
    00394d70b.ne 0x394d78
    00394d74b 0x394da4
    00394d78
    00394d78loc_394d78:
    00394d78adrp x0, 0x32e000
    00394d7cadd x0, x0, 3760
    00394d80movz x1, 38
    00394d84bl errors.New
    00394d88str x0, [sp+688]
    00394d8cstr x1, [sp+696]
    00394d90str x0, [sp+184]
    00394d94str x1, [sp+192]
    00394d98ldp x29, x30, [sp-8]
    00394d9cadd sp, sp, 864
    00394da0ret x30
    00394da4
    00394da4loc_394da4:
    00394da4ldr x3, [sp+912]
    00394da8ldrsb x27, [x3]
    00394dacldr x1, [x3+8]
    00394db0ldr x3, [x3]
    00394db4subs xzr, x1, 1
    00394db8b.hi 0x394dc0
    00394dbcb 0x39599c
    00394dc0
    00394dc0loc_394dc0:
    00394dc0ldrb w3, [x3+1]
    00394dc4ubfm x3, x3, 56, 7
    00394dc8ldr x4, [sp+912]
    00394dccldrsb x27, [x4]
    00394dd0ldr x1, [x4+8]
    00394dd4ldr x4, [x4]
    00394dd8subs xzr, x1, 2
    00394ddcb.hi 0x394de4
    00394de0b 0x395994
    00394de4
    00394de4loc_394de4:
    00394de4ldrb w4, [x4+2]
    00394de8orr x3, x3, x4
    00394decstrh w3, [sp+100]
    00394df0ldr x3, [sp+912]
    00394df4ldrsb x27, [x3]
    00394df8ldr x1, [x3+8]
    00394dfcldr x3, [x3]
    00394e00subs xzr, x1, 3
    00394e04b.hi 0x394e0c
    00394e08b 0x39598c
    00394e0c
    00394e0cloc_394e0c:
    00394e0cldrb w3, [x3+3]
    00394e10str x3, [sp+120]
    00394e14add x4, x3, 4
    00394e18ldr x5, [sp+912]
    00394e1cldrsb x27, [x5]
    00394e20ldr x5, [x5+8]
    00394e24str x5, [sp+160]
    00394e28subs xzr, x5, x4
    00394e2cb.lt 0x394e34
    00394e30b 0x394e58
    00394e34
    00394e34loc_394e34:
    00394e34adrp x27, 0x68d000
    00394e38ldr x0, [x27+2864]
    00394e3cadrp x27, 0x68d000
    00394e40ldr x1, [x27+2872]
    00394e44str x0, [sp+184]
    00394e48str x1, [sp+192]
    00394e4cldp x29, x30, [sp-8]
    00394e50add sp, sp, 864
    00394e54ret x30
    00394e58
    00394e58loc_394e58:
    00394e58add x1, x3, 4
    00394e5cstr x1, [sp+160]
    00394e60ldr x4, [sp+912]
    00394e64ldrsb x27, [x4]
    00394e68ldr x2, [x4+16]
    00394e6cldr x4, [x4]
    00394e70subs xzr, x2, x1
    00394e74b.hs 0x394e7c
    00394e78b 0x395988
    00394e7c
    00394e7cloc_394e7c:
    00394e7cb 0x394e80
    00394e80
    00394e80loc_394e80:
    00394e80str x4, [sp+248]
    00394e84str x1, [sp+256]
    00394e88str x2, [sp+264]
    00394e8cb 0x394e90
    00394e90
    00394e90loc_394e90:
    00394e90subs xzr, x1, 4
    00394e94b.hs 0x394e9c
    00394e98b 0x395980
    00394e9c
    00394e9cloc_394e9c:
    00394e9csub x2, x2, 4
    00394ea0sub x5, xzr, x2
    00394ea4sbfm x5, x5, 63, 63
    00394ea8and x5, x5, 4
    00394eacadd x4, x4, x5
    00394eb0str x4, [sp+272]
    00394eb4str x3, [sp+280]
    00394eb8str x2, [sp+288]
    00394ebcldr x2, [sp+120]
    00394ec0add x0, x2, 4
    00394ec4str x0, [sp+160]
    00394ec8ldr x3, [sp+912]
    00394eccldrsb x27, [x3]
    00394ed0ldr x1, [x3+8]
    00394ed4ldr x4, [x3]
    00394ed8ldr x3, [x3+16]
    00394edcb 0x394ee0
    00394ee0
    00394ee0loc_394ee0:
    00394ee0subs xzr, x1, x0
    00394ee4b.hs 0x394eec
    00394ee8b 0x39597c
    00394eec
    00394eecloc_394eec:
    00394eecsub x5, x1, x2
    00394ef0sub x2, x3, x2
    00394ef4sub x3, x5, 4
    00394ef8sub x2, x2, 4
    00394efcsub x5, xzr, x2
    00394f00and x5, x0, x5, asr #63
    00394f04add x4, x4, x5
    00394f08str x4, [sp+224]
    00394f0cstr x3, [sp+232]
    00394f10str x2, [sp+240]
    00394f14str x3, [sp+160]
    00394f18subs xzr, x3, 2
    00394f1cb.lt 0x394f24
    00394f20b 0x394f48
    00394f24
    00394f24loc_394f24:
    00394f24adrp x27, 0x68d000
    00394f28ldr x0, [x27+2864]
    00394f2cadrp x27, 0x68d000
    00394f30ldr x1, [x27+2872]
    00394f34str x0, [sp+184]
    00394f38str x1, [sp+192]
    00394f3cldp x29, x30, [sp-8]
    00394f40add sp, sp, 864
    00394f44ret x30
    00394f48
    00394f48loc_394f48:
    00394f48add x27, sp, 672
    00394f4cstp xzr, xzr, [x27]
    00394f50ldrh w0, [sp+100]
    00394f54bl crypto/tls.curveForCurveID
    00394f58str x0, [sp+672]
    00394f5cstr x1, [sp+680]
    00394f60strb w2, [sp+94]
    00394f64ldr x1, [sp+672]
    00394f68ldr x2, [sp+680]
    00394f6cstr x1, [sp+840]
    00394f70str x2, [sp+848]
    00394f74ldrb w1, [sp+94]
    00394f78strb w1, [sp+97]
    00394f7cstrb w1, [sp+92]
    00394f80tbnz w1, 0, 0x394f88
    00394f84b 0x395910
    00394f88
    00394f88loc_394f88:
    00394f88ldr x0, [sp+880]
    00394f8cbl crypto/tls.(*Config).rand
    00394f90str x0, [sp+656]
    00394f94str x1, [sp+664]
    00394f98str xzr, [sp+648]
    00394f9cadd x27, sp, 688
    00394fa0stp xzr, xzr, [x27]
    00394fa4ldrh w2, [sp+100]
    00394fa8ldr x0, [sp+656]
    00394facldr x1, [sp+664]
    00394fb0bl crypto/tls.generateECDHEKey
    00394fb4str x0, [sp+648]
    00394fb8str x1, [sp+688]
    00394fbcstr x2, [sp+696]
    00394fc0ldr x1, [sp+648]
    00394fc4str x1, [sp+832]
    00394fc8ldr x1, [sp+688]
    00394fccldr x2, [sp+696]
    00394fd0str x1, [sp+816]
    00394fd4str x2, [sp+824]
    00394fd8ldr x1, [sp+832]
    00394fdcstr x1, [sp+328]
    00394fe0ldr x1, [sp+824]
    00394fe4ldr x0, [sp+816]
    00394fe8str x0, [sp+352]
    00394fecstr x1, [sp+360]
    00394ff0cbnz x0, 0x394ff8
    00394ff4b 0x39500c
    00394ff8
    00394ff8loc_394ff8:
    00394ff8str x0, [sp+184]
    00394ffcstr x1, [sp+192]
    00395000ldp x29, x30, [sp-8]
    00395004add sp, sp, 864
    00395008ret x30
    0039500c
    0039500cloc_39500c:
    0039500cldr x1, [sp+872]
    00395010ldrsb x27, [x1]
    00395014ldr x2, [sp+328]
    00395018adrp x27, 0x6b6000
    0039501cldr w3, [x27+3056]
    00395020cbz w3, 0x395028
    00395024b 0x39502c
    00395028
    00395028loc_395028:
    00395028b 0x395040
    0039502c
    0039502cloc_39502c:
    0039502cbl runtime.gcWriteBarrier2
    00395030str x2, [x25]
    00395034ldr x3, [x1+8]
    00395038str x3, [x25+8]
    0039503cb 0x395040
    00395040
    00395040loc_395040:
    00395040str x2, [x1+8]
    00395044ldr x0, [sp+328]
    00395048bl crypto/ecdh.(*PrivateKey).Curve
    0039504cstr x0, [sp+800]
    00395050str x1, [sp+808]
    00395054str xzr, [sp+640]
    00395058add x27, sp, 688
    0039505cstp xzr, xzr, [x27]
    00395060ldr x1, [sp+272]
    00395064ldr x2, [sp+280]
    00395068ldr x3, [sp+288]
    0039506cldr x4, [sp+800]
    00395070ldrsb x27, [x4]
    00395074ldr x0, [sp+808]
    00395078ldr x4, [x4+40]
    0039507cblr x4
    00395080str x0, [sp+640]
    00395084str x1, [sp+688]
    00395088str x2, [sp+696]
    0039508cldr x1, [sp+640]
    00395090str x1, [sp+792]
    00395094ldr x1, [sp+688]
    00395098ldr x2, [sp+696]
    0039509cstr x1, [sp+776]
    003950a0str x2, [sp+784]
    003950a4ldr x1, [sp+792]
    003950a8str x1, [sp+296]
    003950acldr x1, [sp+784]
    003950b0ldr x2, [sp+776]
    003950b4str x2, [sp+352]
    003950b8str x1, [sp+360]
    003950bccbnz x2, 0x3950c4
    003950c0b 0x3950e8
    003950c4
    003950c4loc_3950c4:
    003950c4adrp x27, 0x68c000
    003950c8ldr x0, [x27+2864]
    003950ccadrp x27, 0x68c000
    003950d0ldr x1, [x27+2872]
    003950d4str x0, [sp+184]
    003950d8str x1, [sp+192]
    003950dcldp x29, x30, [sp-8]
    003950e0add sp, sp, 864
    003950e4ret x30
    003950e8
    003950e8loc_3950e8:
    003950e8add x27, sp, 616
    003950ecstp xzr, xzr, [x27]
    003950f0str xzr, [sp+632]
    003950f4add x27, sp, 688
    003950f8stp xzr, xzr, [x27]
    003950fcldr x1, [sp+296]
    00395100ldr x0, [sp+328]
    00395104bl crypto/ecdh.(*PrivateKey).ECDH
    00395108str x0, [sp+616]
    0039510cstr x1, [sp+624]
    00395110str x2, [sp+632]
    00395114str x3, [sp+688]
    00395118str x4, [sp+696]
    0039511cldr x2, [sp+616]
    00395120ldr x3, [sp+624]
    00395124ldr x4, [sp+632]
    00395128str x2, [sp+752]
    0039512cstr x3, [sp+760]
    00395130str x4, [sp+768]
    00395134ldr x2, [sp+688]
    00395138ldr x3, [sp+696]
    0039513cstr x2, [sp+736]
    00395140str x3, [sp+744]
    00395144ldr x2, [sp+872]
    00395148ldrsb x27, [x2]
    0039514cldr x3, [sp+752]
    00395150ldr x4, [sp+760]
    00395154ldr x5, [sp+768]
    00395158str x4, [x2+32]
    0039515cstr x5, [x2+40]
    00395160adrp x27, 0x6b6000
    00395164ldr w4, [x27+3056]
    00395168cbz w4, 0x395170
    0039516cb 0x395174
    00395170
    00395170loc_395170:
    00395170b 0x395188
    00395174
    00395174loc_395174:
    00395174bl runtime.gcWriteBarrier2
    00395178str x3, [x25]
    0039517cldr x4, [x2+24]
    00395180str x4, [x25+8]
    00395184b 0x395188
    00395188
    00395188loc_395188:
    00395188str x3, [x2+24]
    0039518cldr x2, [sp+744]
    00395190ldr x3, [sp+736]
    00395194str x3, [sp+352]
    00395198str x2, [sp+360]
    0039519ccbnz x3, 0x3951a4
    003951a0b 0x3951c8
    003951a4
    003951a4loc_3951a4:
    003951a4adrp x27, 0x68c000
    003951a8ldr x0, [x27+2864]
    003951acadrp x27, 0x68c000
    003951b0ldr x1, [x27+2872]
    003951b4str x0, [sp+184]
    003951b8str x1, [sp+192]
    003951bcldp x29, x30, [sp-8]
    003951c0add sp, sp, 864
    003951c4ret x30
    003951c8
    003951c8loc_3951c8:
    003951c8ldr x0, [sp+328]
    003951ccbl crypto/ecdh.(*PrivateKey).PublicKey
    003951d0str x0, [sp+640]
    003951d4bl crypto/ecdh.(*PublicKey).Bytes
    003951d8str x0, [sp+304]
    003951dcstr x1, [sp+312]
    003951e0str x2, [sp+320]
    003951e4adrp x0, 0x295000
    003951e8add x0, x0, 3552
    003951ecbl runtime.newobject
    003951f0str x0, [sp+608]
    003951f4ldr x1, [sp+872]
    003951f8ldrsb x27, [x1]
    003951fcadrp x27, 0x6b6000
    00395200ldr w2, [x27+3056]
    00395204cbz w2, 0x39520c
    00395208b 0x395210
    0039520c
    0039520cloc_39520c:
    0039520cb 0x395224
    00395210
    00395210loc_395210:
    00395210bl runtime.gcWriteBarrier2
    00395214str x0, [x25]
    00395218ldr x3, [x1+16]
    0039521cstr x3, [x25+8]
    00395220b 0x395224
    00395224
    00395224loc_395224:
    00395224str x0, [x1+16]
    00395228ldr x3, [sp+312]
    0039522cstr x3, [sp+160]
    00395230add x2, x3, 1
    00395234str x2, [sp+144]
    00395238adrp x0, 0x260000
    0039523cadd x0, x0, 3072
    00395240mov x1, x2
    00395244bl runtime.makeslice
    00395248ldr x3, [sp+144]
    0039524cldr x4, [sp+144]
    00395250str x0, [sp+616]
    00395254str x3, [sp+624]
    00395258str x4, [sp+632]
    0039525cldr x5, [sp+872]
    00395260ldrsb x27, [x5]
    00395264ldr x5, [x5+16]
    00395268ldrsb x27, [x5]
    0039526cstr x3, [x5+8]
    00395270str x4, [x5+16]
    00395274adrp x27, 0x6b6000
    00395278ldr w3, [x27+3056]
    0039527ccbz w3, 0x395284
    00395280b 0x395288
    00395284
    00395284loc_395284:
    00395284b 0x39529c
    00395288
    00395288loc_395288:
    00395288bl runtime.gcWriteBarrier2
    0039528cstr x0, [x25]
    00395290ldr x4, [x5]
    00395294str x4, [x25+8]
    00395298b 0x39529c
    0039529c
    0039529cloc_39529c:
    0039529cstr x0, [x5]
    003952a0ldr x4, [sp+312]
    003952a4str x4, [sp+160]
    003952a8ldr x5, [sp+872]
    003952acldrsb x27, [x5]
    003952b0ldr x5, [x5+16]
    003952b4ldrsb x27, [x5]
    003952b8ldr x1, [x5+8]
    003952bcldr x5, [x5]
    003952c0subs xzr, x1, 0
    003952c4b.hi 0x3952cc
    003952c8b 0x395974
    003952cc
    003952ccloc_3952cc:
    003952ccstrb w4, [x5]
    003952d0ldr x4, [sp+872]
    003952d4ldrsb x27, [x4]
    003952d8ldr x4, [x4+16]
    003952dcldrsb x27, [x4]
    003952e0ldr x1, [x4+8]
    003952e4ldr x5, [x4]
    003952e8ldr x4, [x4+16]
    003952ecb 0x3952f0
    003952f0
    003952f0loc_3952f0:
    003952f0subs xzr, x1, 1
    003952f4b.hs 0x3952fc
    003952f8b 0x39596c
    003952fc
    003952fcloc_3952fc:
    003952fcsub x4, x4, 1
    00395300sub x6, x1, 1
    00395304sub x7, xzr, x4
    00395308sbfm x7, x7, 63, 63
    0039530cand x7, x7, 1
    00395310add x5, x5, x7
    00395314str x5, [sp+616]
    00395318str x6, [sp+624]
    0039531cstr x4, [sp+632]
    00395320str x5, [sp+496]
    00395324str x6, [sp+504]
    00395328str x4, [sp+512]
    0039532cldr x4, [sp+312]
    00395330ldr x5, [sp+304]
    00395334ldr x6, [sp+320]
    00395338str x5, [sp+472]
    0039533cstr x4, [sp+480]
    00395340str x6, [sp+488]
    00395344ldr x5, [sp+504]
    00395348str x5, [sp+136]
    0039534csubs xzr, x5, x4
    00395350b.gt 0x395358
    00395354b 0x395360
    00395358
    00395358loc_395358:
    00395358str x4, [sp+136]
    0039535cb 0x395364
    00395360
    00395360loc_395360:
    00395360b 0x395364
    00395364
    00395364loc_395364:
    00395364ldr x4, [sp+472]
    00395368ldr x5, [sp+496]
    0039536csubs xzr, x4, x5
    00395370b.ne 0x395378
    00395374b 0x395394
    00395378
    00395378loc_395378:
    00395378ldr x3, [sp+136]
    0039537cstr x3, [sp+128]
    00395380ldr x2, [sp+128]
    00395384ldr x1, [sp+472]
    00395388ldr x0, [sp+496]
    0039538cbl runtime.memmove
    00395390b 0x395398
    00395394
    00395394loc_395394:
    00395394b 0x395398
    00395398
    00395398loc_395398:
    00395398strb wzr, [sp+91]
    0039539cstr xzr, [sp+112]
    003953a0ldr x4, [sp+872]
    003953a4ldrsb x27, [x4]
    003953a8ldrh w4, [x4]
    003953acsubs wzr, w4, 771
    003953b0b.hs 0x3953b8
    003953b4b 0x395540
    003953b8
    003953b8loc_3953b8:
    003953b8ldr x1, [sp+232]
    003953bcldr x4, [sp+224]
    003953c0subs xzr, x1, 0
    003953c4b.hi 0x3953cc
    003953c8b 0x395964
    003953cc
    003953ccloc_3953cc:
    003953ccldrb w4, [x4]
    003953d0ubfm x4, x4, 56, 7
    003953d4ldr x1, [sp+232]
    003953d8ldr x5, [sp+224]
    003953dcsubs xzr, x1, 1
    003953e0b.hi 0x3953e8
    003953e4b 0x39595c
    003953e8
    003953e8loc_3953e8:
    003953e8ldrb w5, [x5+1]
    003953ecorr x4, x4, x5
    003953f0strh w4, [sp+98]
    003953f4ldr x1, [sp+232]
    003953f8ldr x4, [sp+224]
    003953fcldr x5, [sp+240]
    00395400b 0x395404
    00395404
    00395404loc_395404:
    00395404subs xzr, x1, 2
    00395408b.hs 0x395410
    0039540cb 0x395954
    00395410
    00395410loc_395410:
    00395410sub x6, x1, 2
    00395414sub x5, x5, 2
    00395418sub x7, xzr, x5
    0039541csbfm x7, x7, 63, 63
    00395420and x7, x7, 2
    00395424add x4, x4, x7
    00395428str x4, [sp+224]
    0039542cstr x6, [sp+232]
    00395430str x5, [sp+240]
    00395434str x6, [sp+160]
    00395438subs xzr, x6, 2
    0039543cb.lt 0x395444
    00395440b 0x395468
    00395444
    00395444loc_395444:
    00395444adrp x27, 0x68c000
    00395448ldr x0, [x27+2864]
    0039544cadrp x27, 0x68c000
    00395450ldr x1, [x27+2872]
    00395454str x0, [sp+184]
    00395458str x1, [sp+192]
    0039545cldp x29, x30, [sp-8]
    00395460add sp, sp, 864
    00395464ret x30
    00395468
    00395468loc_395468:
    00395468ldr x4, [sp+888]
    0039546cldrsb x27, [x4]
    00395470ldr x1, [x4+232]
    00395474ldr x2, [x4+240]
    00395478ldr x3, [x4+248]
    0039547cstr x1, [sp+448]
    00395480str x2, [sp+456]
    00395484str x3, [sp+464]
    00395488ldrh w0, [sp+98]
    0039548cbl crypto/tls.isSupportedSignatureAlgorithm
    00395490strb w0, [sp+94]
    00395494tbnz w0, 0, 0x39549c
    00395498b 0x395514
    0039549c
    0039549cloc_39549c:
    0039549cadd x27, sp, 688
    003954a0stp xzr, xzr, [x27]
    003954a4ldrh w0, [sp+98]
    003954a8bl crypto/tls.typeAndHashFromSignatureScheme
    003954acstrb w0, [sp+93]
    003954b0str x1, [sp+152]
    003954b4str x2, [sp+688]
    003954b8str x3, [sp+696]
    003954bcldrb w1, [sp+93]
    003954c0strb w1, [sp+96]
    003954c4ldr x1, [sp+152]
    003954c8str x1, [sp+176]
    003954ccstr x2, [sp+720]
    003954d0str x3, [sp+728]
    003954d4ldrb w1, [sp+96]
    003954d8strb w1, [sp+91]
    003954dcldr x1, [sp+176]
    003954e0str x1, [sp+112]
    003954e4str x2, [sp+352]
    003954e8str x3, [sp+360]
    003954eccbnz x2, 0x3954f4
    003954f0b 0x395510
    003954f4
    003954f4loc_3954f4:
    003954f4str x2, [sp+184]
    003954f8str x3, [sp+192]
    003954fcmov x0, x2
    00395500mov x1, x3
    00395504ldp x29, x30, [sp-8]
    00395508add sp, sp, 864
    0039550cret x30
    00395510
    00395510loc_395510:
    00395510b 0x3955cc
    00395514
    00395514loc_395514:
    00395514adrp x0, 0x335000
    00395518add x0, x0, 2662
    0039551cmovz x1, 54
    00395520bl errors.New
    00395524str x0, [sp+688]
    00395528str x1, [sp+696]
    0039552cstr x0, [sp+184]
    00395530str x1, [sp+192]
    00395534ldp x29, x30, [sp-8]
    00395538add sp, sp, 864
    0039553cret x30
    00395540
    00395540loc_395540:
    00395540add x27, sp, 688
    00395544stp xzr, xzr, [x27]
    00395548ldr x2, [sp+904]
    0039554cldrsb x27, [x2]
    00395550ldr x0, [x2+160]
    00395554ldr x1, [x2+168]
    00395558str x0, [sp+432]
    0039555cstr x1, [sp+440]
    00395560bl crypto/tls.legacyTypeAndHashFromPublicKey
    00395564strb w0, [sp+93]
    00395568str x1, [sp+152]
    0039556cstr x2, [sp+688]
    00395570str x3, [sp+696]
    00395574ldrb w4, [sp+93]
    00395578strb w4, [sp+95]
    0039557cldr x4, [sp+152]
    00395580str x4, [sp+168]
    00395584str x2, [sp+704]
    00395588str x3, [sp+712]
    0039558cldrb w4, [sp+95]
    00395590strb w4, [sp+91]
    00395594ldr x4, [sp+168]
    00395598str x4, [sp+112]
    0039559cstr x2, [sp+352]
    003955a0str x3, [sp+360]
    003955a4cbnz x2, 0x3955ac
    003955a8b 0x3955c8
    003955ac
    003955acloc_3955ac:
    003955acstr x2, [sp+184]
    003955b0str x3, [sp+192]
    003955b4mov x0, x2
    003955b8mov x1, x3
    003955bcldp x29, x30, [sp-8]
    003955c0add sp, sp, 864
    003955c4ret x30
    003955c8
    003955c8loc_3955c8:
    003955c8b 0x3955cc
    003955cc
    003955ccloc_3955cc:
    003955ccldrb w6, [sp+91]
    003955d0subs wzr, w6, 225
    003955d4cset x6, eq
    003955d8strb w6, [sp+94]
    003955dcb.eq 0x3955e4
    003955e0b 0x3955e8
    003955e4
    003955e4loc_3955e4:
    003955e4b 0x3955fc
    003955e8
    003955e8loc_3955e8:
    003955e8ldrb w6, [sp+91]
    003955ecsubs wzr, w6, 226
    003955f0cset x6, eq
    003955f4strb w6, [sp+94]
    003955f8b 0x3955fc
    003955fc
    003955fcloc_3955fc:
    003955fcldrb w6, [sp+94]
    00395600ldr x7, [sp+872]
    00395604ldrsb x27, [x7]
    00395608ldrb w7, [x7+2]
    0039560ceor x6, x6, x7
    00395610tbnz w6, 0, 0x395618
    00395614b 0x39563c
    00395618
    00395618loc_395618:
    00395618adrp x27, 0x68c000
    0039561cldr x0, [x27+2864]
    00395620adrp x27, 0x68c000
    00395624ldr x1, [x27+2872]
    00395628str x0, [sp+184]
    0039562cstr x1, [sp+192]
    00395630ldp x29, x30, [sp-8]
    00395634add sp, sp, 864
    00395638ret x30
    0039563c
    0039563cloc_39563c:
    0039563cldr x1, [sp+232]
    00395640ldr x6, [sp+224]
    00395644subs xzr, x1, 0
    00395648b.hi 0x395650
    0039564cb 0x39594c
    00395650
    00395650loc_395650:
    00395650ldrb w6, [x6]
    00395654ubfm x6, x6, 56, 7
    00395658ldr x1, [sp+232]
    0039565cldr x7, [sp+224]
    00395660subs xzr, x1, 1
    00395664b.hi 0x39566c
    00395668b 0x395944
    0039566c
    0039566cloc_39566c:
    0039566cldrb w7, [x7+1]
    00395670orr x6, x6, x7
    00395674str x6, [sp+104]
    00395678add x6, x6, 2
    0039567cldr x7, [sp+232]
    00395680str x7, [sp+160]
    00395684subs xzr, x7, x6
    00395688b.ne 0x395690
    0039568cb 0x3956b4
    00395690
    00395690loc_395690:
    00395690adrp x27, 0x68c000
    00395694ldr x0, [x27+2864]
    00395698adrp x27, 0x68c000
    0039569cldr x1, [x27+2872]
    003956a0str x0, [sp+184]
    003956a4str x1, [sp+192]
    003956a8ldp x29, x30, [sp-8]
    003956acadd sp, sp, 864
    003956b0ret x30
    003956b4
    003956b4loc_3956b4:
    003956b4ldr x1, [sp+232]
    003956b8ldr x6, [sp+224]
    003956bcldr x7, [sp+240]
    003956c0b 0x3956c4
    003956c4
    003956c4loc_3956c4:
    003956c4subs xzr, x1, 2
    003956c8b.hs 0x3956d0
    003956ccb 0x39593c
    003956d0
    003956d0loc_3956d0:
    003956d0sub x7, x7, 2
    003956d4sub x8, xzr, x7
    003956d8sub x9, x1, 2
    003956dcsbfm x8, x8, 63, 63
    003956e0and x8, x8, 2
    003956e4add x6, x6, x8
    003956e8str x6, [sp+224]
    003956ecstr x9, [sp+232]
    003956f0str x7, [sp+240]
    003956f4add x27, sp, 536
    003956f8stp xzr, xzr, [x27]
    003956fcadd x27, sp, 552
    00395700stp xzr, xzr, [x27]
    00395704add x27, sp, 568
    00395708stp xzr, xzr, [x27]
    0039570cadd x27, sp, 584
    00395710stp xzr, xzr, [x27]
    00395714str xzr, [sp+600]
    00395718add x6, sp, 536
    0039571cstr x6, [sp+400]
    00395720ldrsb x27, [x6]
    00395724ldr x7, [sp+888]
    00395728ldrsb x27, [x7]
    0039572cldr x8, [x7+32]
    00395730ldr x9, [x7+40]
    00395734ldr x7, [x7+48]
    00395738str x9, [x6+8]
    0039573cstr x7, [x6+16]
    00395740adrp x27, 0x6b6000
    00395744ldr w7, [x27+3056]
    00395748cbz w7, 0x395750
    0039574cb 0x395754
    00395750
    00395750loc_395750:
    00395750b 0x395768
    00395754
    00395754loc_395754:
    00395754bl runtime.gcWriteBarrier2
    00395758str x8, [x25]
    0039575cldr x7, [x6]
    00395760str x7, [x25+8]
    00395764b 0x395768
    00395768
    00395768loc_395768:
    00395768str x8, [x6]
    0039576cldrsb x27, [x6]
    00395770ldr x7, [sp+896]
    00395774ldrsb x27, [x7]
    00395778ldr x8, [x7+32]
    0039577cldr x9, [x7+40]
    00395780ldr x7, [x7+48]
    00395784str x9, [x6+32]
    00395788str x7, [x6+40]
    0039578cadrp x27, 0x6b6000
    00395790ldr w7, [x27+3056]
    00395794cbz w7, 0x39579c
    00395798b 0x3957a0
    0039579c
    0039579cloc_39579c:
    0039579cb 0x3957b4
    003957a0
    003957a0loc_3957a0:
    003957a0bl runtime.gcWriteBarrier2
    003957a4str x8, [x25]
    003957a8ldr x7, [x6+24]
    003957acstr x7, [x25+8]
    003957b0b 0x3957b4
    003957b4
    003957b4loc_3957b4:
    003957b4str x8, [x6+24]
    003957b8ldr x6, [sp+248]
    003957bcldr x7, [sp+256]
    003957c0ldr x8, [sp+264]
    003957c4ldr x9, [sp+400]
    003957c8ldrsb x27, [x9]
    003957ccstr x7, [x9+56]
    003957d0str x8, [x9+64]
    003957d4adrp x27, 0x6b6000
    003957d8ldr w7, [x27+3056]
    003957dccbz w7, 0x3957e4
    003957e0b 0x3957e8
    003957e4
    003957e4loc_3957e4:
    003957e4b 0x3957fc
    003957e8
    003957e8loc_3957e8:
    003957e8bl runtime.gcWriteBarrier2
    003957ecstr x6, [x25]
    003957f0ldr x7, [x9+48]
    003957f4str x7, [x25+8]
    003957f8b 0x3957fc
    003957fc
    003957fcloc_3957fc:
    003957fcstr x6, [x9+48]
    00395800ldr x6, [sp+400]
    00395804ldrsb x27, [x6]
    00395808b 0x39580c
    0039580c
    0039580cloc_39580c:
    0039580cstr x6, [sp+408]
    00395810orr x6, xzr, 3
    00395814str x6, [sp+416]
    00395818str x6, [sp+424]
    0039581cldr x6, [sp+872]
    00395820ldrsb x27, [x6]
    00395824ldrh w2, [x6]
    00395828strh w2, [sp+102]
    0039582cldrb w0, [sp+91]
    00395830ldr x1, [sp+112]
    00395834ldr x3, [sp+408]
    00395838ldr x4, [sp+416]
    0039583cldr x5, [sp+424]
    00395840bl crypto/tls.hashForServerKeyExchange
    00395844str x0, [sp+200]
    00395848str x1, [sp+208]
    0039584cstr x2, [sp+216]
    00395850ldr x6, [sp+904]
    00395854ldrsb x27, [x6]
    00395858ldr x1, [x6+160]
    0039585cldr x2, [x6+168]
    00395860str x1, [sp+384]
    00395864str x2, [sp+392]
    00395868ldrb w0, [sp+91]
    0039586cldr x3, [sp+112]
    00395870ldr x4, [sp+200]
    00395874ldr x7, [sp+224]
    00395878ldr x5, [sp+208]
    0039587cldr x8, [sp+232]
    00395880ldr x6, [sp+216]
    00395884ldr x9, [sp+240]
    00395888bl crypto/tls.verifyHandshakeSignature
    0039588cstr x0, [sp+336]
    00395890str x1, [sp+344]
    00395894cbnz x0, 0x39589c
    00395898b 0x3958f8
    0039589c
    0039589cloc_39589c:
    0039589cldrsb x27, [x0]
    003958a0ldr x2, [x0+24]
    003958a4mov x0, x1
    003958a8blr x2
    003958acstr x0, [sp+520]
    003958b0str x1, [sp+528]
    003958b4movz x2, 50
    003958b8mov x3, x0
    003958bcmov x4, x1
    003958c0mov x0, xzr
    003958c4adrp x1, 0x334000
    003958c8add x1, x1, 1258
    003958ccbl runtime.concatstring2
    003958d0str x0, [sp+368]
    003958d4str x1, [sp+376]
    003958d8bl errors.New
    003958dcstr x0, [sp+688]
    003958e0str x1, [sp+696]
    003958e4str x0, [sp+184]
    003958e8str x1, [sp+192]
    003958ecldp x29, x30, [sp-8]
    003958f0add sp, sp, 864
    003958f4ret x30
    003958f8
    003958f8loc_3958f8:
    003958f8stp xzr, xzr, [sp+184]
    003958fcmov x0, xzr
    00395900mov x1, xzr
    00395904ldp x29, x30, [sp-8]
    00395908add sp, sp, 864
    0039590cret x30
    00395910
    00395910loc_395910:
    00395910adrp x0, 0x32d000
    00395914add x0, x0, 3760
    00395918movz x1, 38
    0039591cbl errors.New
    00395920str x0, [sp+688]
    00395924str x1, [sp+696]
    00395928str x0, [sp+184]
    0039592cstr x1, [sp+192]
    00395930ldp x29, x30, [sp-8]
    00395934add sp, sp, 864
    00395938ret x30
    0039593c
    0039593cloc_39593c:
    0039593corr x0, xzr, 2
    00395940bl runtime.panicSliceB
    00395944
    00395944loc_395944:
    00395944orr x0, xzr, 1
    00395948bl runtime.panicIndex
    0039594c
    0039594cloc_39594c:
    0039594cmov x0, xzr
    00395950bl runtime.panicIndex
    00395954
    00395954loc_395954:
    00395954orr x0, xzr, 2
    00395958bl runtime.panicSliceB
    0039595c
    0039595cloc_39595c:
    0039595corr x0, xzr, 1
    00395960bl runtime.panicIndex
    00395964
    00395964loc_395964:
    00395964mov x0, xzr
    00395968bl runtime.panicIndex
    0039596c
    0039596cloc_39596c:
    0039596corr x0, xzr, 1
    00395970bl runtime.panicSliceB
    00395974
    00395974loc_395974:
    00395974mov x0, xzr
    00395978bl runtime.panicIndex
    0039597c
    0039597cloc_39597c:
    0039597cbl runtime.panicSliceB
    00395980
    00395980loc_395980:
    00395980orr x0, xzr, 4
    00395984bl runtime.panicSliceB
    00395988
    00395988loc_395988:
    00395988bl runtime.panicSliceAcap
    0039598c
    0039598cloc_39598c:
    0039598corr x0, xzr, 3
    00395990bl runtime.panicIndex
    00395994
    00395994loc_395994:
    00395994orr x0, xzr, 2
    00395998bl runtime.panicIndex
    0039599c
    0039599cloc_39599c:
    0039599corr x0, xzr, 1
    003959a0bl runtime.panicIndex
    003959a4
    003959a4loc_3959a4:
    003959a4mov x0, xzr
    003959a8bl runtime.panicIndex
    003959achint
    003959b0
    003959b0loc_3959b0:
    003959b0stp x0, x1, [sp+8]
    003959b4stp x2, x3, [sp+24]
    003959b8stp x4, x5, [sp+40]
    003959bcmov x3, x30
    003959c0bl runtime.morestack_noctxt.abi0
    003959c4ldp x0, x1, [sp+8]
    003959c8ldp x2, x3, [sp+24]
    003959ccldp x4, x5, [sp+40]
    003959d0b 0x394cd0
    003959d4udf 0
    003959d8udf 0
    003959dcudf 0
    00394cd0
    003959e0
    003959e0crypto/tls.(*ecdheKeyAgreement).generateClientKeyExchange: ; void crypto/tls.(*ecdheKeyAgreement).generateClientKeyExchange(crypto/tls.ecdheKeyAgreement * ka, crypto/tls.Config * config, crypto/tls.clientHelloMsg * clientHello, crypto/x509.Certificate * cert)
    003959e0ldr x16, [x28+16]
    003959e4subs xzr, sp, x16
    003959e8b.ls 0x395ad4
    003959ecstr x30, [sp-96]!
    003959f0stur x29, [sp-8]
    003959f4sub x29, sp, 8
    003959f8str x0, [sp+104]
    003959fcstr x1, [sp+112]
    00395a00str x2, [sp+120]
    00395a04str x3, [sp+128]
    00395a08str xzr, [sp+48]
    00395a0cstp xzr, xzr, [sp+56]
    00395a10str xzr, [sp+40]
    00395a14stp xzr, xzr, [sp+24]
    00395a18ldr x6, [sp+104]
    00395a1cldrsb x27, [x6]
    00395a20ldr x6, [x6+16]
    00395a24cbnz x6, 0x395a2c
    00395a28b 0x395a84
    00395a2c
    00395a2cloc_395a2c:
    00395a2cldr x6, [sp+104]
    00395a30ldrsb x27, [x6]
    00395a34ldr x7, [x6+24]
    00395a38ldr x8, [x6+32]
    00395a3cldr x6, [x6+40]
    00395a40str x7, [sp+48]
    00395a44str x8, [sp+56]
    00395a48str x6, [sp+64]
    00395a4cldr x6, [sp+104]
    00395a50ldrsb x27, [x6]
    00395a54ldr x6, [x6+16]
    00395a58str x6, [sp+40]
    00395a5cstp xzr, xzr, [sp+24]
    00395a60ldr x0, [sp+48]
    00395a64ldr x3, [sp+40]
    00395a68ldr x1, [sp+56]
    00395a6cldr x2, [sp+64]
    00395a70mov x4, xzr
    00395a74mov x5, xzr
    00395a78ldur x29, [sp-8]
    00395a7cldr x30, [sp], 96
    00395a80ret x30
    00395a84
    00395a84loc_395a84:
    00395a84adrp x0, 0x32d000
    00395a88add x0, x0, 3798
    00395a8cmovz x1, 38
    00395a90bl errors.New
    00395a94str x0, [sp+72]
    00395a98str x1, [sp+80]
    00395a9cstr xzr, [sp+48]
    00395aa0stp xzr, xzr, [sp+56]
    00395aa4str xzr, [sp+40]
    00395aa8ldr x4, [sp+72]
    00395aacldr x5, [sp+80]
    00395ab0str x4, [sp+24]
    00395ab4str x5, [sp+32]
    00395ab8ldr x0, [sp+48]
    00395abcldr x3, [sp+40]
    00395ac0ldr x1, [sp+56]
    00395ac4ldr x2, [sp+64]
    00395ac8ldur x29, [sp-8]
    00395accldr x30, [sp], 96
    00395ad0ret x30
    00395ad4
    00395ad4loc_395ad4:
    00395ad4stp x0, x1, [sp+8]
    00395ad8stp x2, x3, [sp+24]
    00395adcmov x3, x30
    00395ae0bl runtime.morestack_noctxt.abi0
    00395ae4ldp x0, x1, [sp+8]
    00395ae8ldp x2, x3, [sp+24]
    00395aecb 0x3959e0
    003959e0
    00395af0
    00395af0crypto/tls.(*cipherSuiteTLS13).nextTrafficSecret: ; void crypto/tls.(*cipherSuiteTLS13).nextTrafficSecret(crypto/tls.cipherSuiteTLS13 * c, struct []uint8 trafficSecret)
    00395af0ldr x16, [x28+16]
    00395af4sub x17, sp, 64
    00395af8subs xzr, x17, x16
    00395afcb.ls 0x395bc4
    00395b00str x30, [sp-192]!
    00395b04stur x29, [sp-8]
    00395b08sub x29, sp, 8
    00395b0cstr x0, [sp+200]
    00395b10str x1, [sp+208]
    00395b14str x2, [sp+216]
    00395b18str x3, [sp+224]
    00395b1cstr xzr, [sp+128]
    00395b20stp xzr, xzr, [sp+136]
    00395b24ldr x1, [sp+200]
    00395b28ldrsb x27, [x1]
    00395b2cldr x0, [x1+24]
    00395b30str x0, [sp+96]
    00395b34bl crypto.Hash.Size
    00395b38str x0, [sp+104]
    00395b3cstp xzr, xzr, [sp+112]
    00395b40add x1, sp, 112
    00395b44str x1, [sp+152]
    00395b48ldrsb x27, [x1]
    00395b4cadrp x2, 0xfffffffffff2a000
    00395b50add x2, x2, 3360
    00395b54str x2, [x1]
    00395b58ldrsb x27, [x1]
    00395b5cldr x2, [sp+200]
    00395b60ldrsb x27, [x2]
    00395b64ldr x2, [x2+24]
    00395b68str x2, [x1+8]
    00395b6cldr x10, [sp+104]
    00395b70ldr x2, [sp+208]
    00395b74ldr x3, [sp+216]
    00395b78ldr x4, [sp+224]
    00395b7cadrp x0, 0x37d000
    00395b80add x0, x0, 128
    00395b84adrp x5, 0x31d000
    00395b88add x5, x5, 2857
    00395b8cmovz x6, 11
    00395b90mov x7, xzr
    00395b94mov x8, xzr
    00395b98mov x9, x8
    00395b9cbl crypto/internal/fips140/tls13.ExpandLabel[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    00395ba0str x0, [sp+160]
    00395ba4str x1, [sp+168]
    00395ba8str x2, [sp+176]
    00395bacstr x0, [sp+128]
    00395bb0str x1, [sp+136]
    00395bb4str x2, [sp+144]
    00395bb8ldur x29, [sp-8]
    00395bbcldr x30, [sp], 192
    00395bc0ret x30
    00395bc4
    00395bc4loc_395bc4:
    00395bc4stp x0, x1, [sp+8]
    00395bc8stp x2, x3, [sp+24]
    00395bccmov x3, x30
    00395bd0bl runtime.morestack_noctxt.abi0
    00395bd4ldp x0, x1, [sp+8]
    00395bd8ldp x2, x3, [sp+24]
    00395bdcb 0x395af0
    00395af0
    00395be0
    00395be0crypto/tls.(*cipherSuiteTLS13).trafficKey: ; void crypto/tls.(*cipherSuiteTLS13).trafficKey(crypto/tls.cipherSuiteTLS13 * c, struct []uint8 trafficSecret)
    00395be0ldr x16, [x28+16]
    00395be4sub x17, sp, 64
    00395be8subs xzr, x17, x16
    00395becb.ls 0x395d38
    00395bf0str x30, [sp-192]!
    00395bf4stur x29, [sp-8]
    00395bf8sub x29, sp, 8
    00395bfcstr x0, [sp+200]
    00395c00str x1, [sp+208]
    00395c04str x2, [sp+216]
    00395c08str x3, [sp+224]
    00395c0cstr xzr, [sp+120]
    00395c10stp xzr, xzr, [sp+128]
    00395c14str xzr, [sp+144]
    00395c18stp xzr, xzr, [sp+152]
    00395c1cstp xzr, xzr, [sp+104]
    00395c20add x1, sp, 104
    00395c24str x1, [sp+176]
    00395c28ldrsb x27, [x1]
    00395c2cadrp x11, 0xfffffffffff2a000
    00395c30add x11, x11, 3360
    00395c34str x11, [x1]
    00395c38ldrsb x27, [x1]
    00395c3cldr x11, [sp+200]
    00395c40ldrsb x27, [x11]
    00395c44ldr x11, [x11+24]
    00395c48str x11, [x1+8]
    00395c4cldr x11, [sp+200]
    00395c50ldrsb x27, [x11]
    00395c54ldr x10, [x11+8]
    00395c58str x10, [sp+96]
    00395c5cldr x2, [sp+208]
    00395c60ldr x3, [sp+216]
    00395c64ldr x4, [sp+224]
    00395c68adrp x0, 0x37d000
    00395c6cadd x0, x0, 128
    00395c70adrp x5, 0x31b000
    00395c74add x5, x5, 561
    00395c78orr x6, xzr, 3
    00395c7cmov x7, xzr
    00395c80mov x8, xzr
    00395c84mov x9, x8
    00395c88bl crypto/internal/fips140/tls13.ExpandLabel[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    00395c8cstr x0, [sp+120]
    00395c90str x1, [sp+128]
    00395c94str x2, [sp+136]
    00395c98stp xzr, xzr, [sp+104]
    00395c9cadd x1, sp, 104
    00395ca0str x1, [sp+168]
    00395ca4ldrsb x27, [x1]
    00395ca8adrp x11, 0xfffffffffff2a000
    00395cacadd x11, x11, 3360
    00395cb0str x11, [x1]
    00395cb4ldrsb x27, [x1]
    00395cb8ldr x11, [sp+200]
    00395cbcldrsb x27, [x11]
    00395cc0ldr x11, [x11+24]
    00395cc4str x11, [x1+8]
    00395cc8ldr x2, [sp+208]
    00395cccldr x3, [sp+216]
    00395cd0ldr x4, [sp+224]
    00395cd4adrp x0, 0x37d000
    00395cd8add x0, x0, 128
    00395cdcadrp x5, 0x31b000
    00395ce0add x5, x5, 103
    00395ce4orr x6, xzr, 2
    00395ce8mov x7, xzr
    00395cecmov x8, xzr
    00395cf0mov x9, x8
    00395cf4orr x10, xzr, 12
    00395cf8bl crypto/internal/fips140/tls13.ExpandLabel[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    00395cfcstr x0, [sp+144]
    00395d00str x1, [sp+152]
    00395d04str x2, [sp+160]
    00395d08ldr x11, [sp+120]
    00395d0cldr x12, [sp+128]
    00395d10ldr x13, [sp+136]
    00395d14mov x3, x0
    00395d18mov x4, x1
    00395d1cmov x5, x2
    00395d20mov x0, x11
    00395d24mov x1, x12
    00395d28mov x2, x13
    00395d2cldur x29, [sp-8]
    00395d30ldr x30, [sp], 192
    00395d34ret x30
    00395d38
    00395d38loc_395d38:
    00395d38stp x0, x1, [sp+8]
    00395d3cstp x2, x3, [sp+24]
    00395d40mov x3, x30
    00395d44bl runtime.morestack_noctxt.abi0
    00395d48ldp x0, x1, [sp+8]
    00395d4cldp x2, x3, [sp+24]
    00395d50b 0x395be0
    00395d54udf 0
    00395d58udf 0
    00395d5cudf 0
    00395be0
    00395d60
    00395d60crypto/tls.(*cipherSuiteTLS13).finishedHash: ; void crypto/tls.(*cipherSuiteTLS13).finishedHash(crypto/tls.cipherSuiteTLS13 * c, struct []uint8 baseKey, hash.Hash transcript)
    00395d60ldr x16, [x28+16]
    00395d64sub x17, sp, 112
    00395d68subs xzr, x17, x16
    00395d6cb.ls 0x395f1c
    00395d70str x30, [sp-240]!
    00395d74stur x29, [sp-8]
    00395d78sub x29, sp, 8
    00395d7cstr x0, [sp+248]
    00395d80str x1, [sp+256]
    00395d84str x2, [sp+264]
    00395d88str x3, [sp+272]
    00395d8cstr x4, [sp+280]
    00395d90str x5, [sp+288]
    00395d94str xzr, [sp+128]
    00395d98stp xzr, xzr, [sp+136]
    00395d9cldr x1, [sp+248]
    00395da0ldrsb x27, [x1]
    00395da4ldr x0, [x1+24]
    00395da8str x0, [sp+96]
    00395dacbl crypto.Hash.Size
    00395db0str x0, [sp+104]
    00395db4stp xzr, xzr, [sp+112]
    00395db8add x1, sp, 112
    00395dbcstr x1, [sp+224]
    00395dc0ldrsb x27, [x1]
    00395dc4adrp x2, 0xfffffffffff2a000
    00395dc8add x2, x2, 3360
    00395dccstr x2, [x1]
    00395dd0ldrsb x27, [x1]
    00395dd4ldr x2, [sp+248]
    00395dd8ldrsb x27, [x2]
    00395ddcldr x2, [x2+24]
    00395de0str x2, [x1+8]
    00395de4ldr x10, [sp+104]
    00395de8ldr x2, [sp+256]
    00395decldr x3, [sp+264]
    00395df0ldr x4, [sp+272]
    00395df4adrp x0, 0x37d000
    00395df8add x0, x0, 128
    00395dfcadrp x5, 0x31c000
    00395e00add x5, x5, 1612
    00395e04orr x6, xzr, 8
    00395e08mov x7, xzr
    00395e0cmov x8, xzr
    00395e10mov x9, x8
    00395e14bl crypto/internal/fips140/tls13.ExpandLabel[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    00395e18str x0, [sp+168]
    00395e1cstr x1, [sp+176]
    00395e20str x2, [sp+184]
    00395e24adrp x0, 0x29f000
    00395e28add x0, x0, 2112
    00395e2cbl runtime.newobject
    00395e30str x0, [sp+216]
    00395e34adrp x1, 0xfffffffffff2a000
    00395e38add x1, x1, 3360
    00395e3cstr x1, [x0]
    00395e40ldr x1, [sp+248]
    00395e44ldrsb x27, [x1]
    00395e48ldr x1, [x1+24]
    00395e4cldr x2, [sp+216]
    00395e50ldrsb x27, [x2]
    00395e54str x1, [x2+8]
    00395e58ldr x1, [sp+168]
    00395e5cldr x2, [sp+176]
    00395e60ldr x3, [sp+184]
    00395e64ldr x0, [sp+216]
    00395e68bl crypto/hmac.New
    00395e6cstr x0, [sp+152]
    00395e70str x1, [sp+160]
    00395e74ldr x1, [sp+280]
    00395e78ldrsb x27, [x1]
    00395e7cldr x1, [x1+48]
    00395e80ldr x0, [sp+288]
    00395e84mov x2, xzr
    00395e88mov x3, x2
    00395e8cmov x4, x1
    00395e90mov x1, xzr
    00395e94blr x4
    00395e98str x0, [sp+192]
    00395e9cstr x1, [sp+200]
    00395ea0str x2, [sp+208]
    00395ea4ldr x3, [sp+160]
    00395ea8ldr x4, [sp+152]
    00395eacldrsb x27, [x4]
    00395eb0ldr x4, [x4+56]
    00395eb4mov x5, x0
    00395eb8mov x0, x3
    00395ebcmov x6, x1
    00395ec0mov x1, x5
    00395ec4mov x7, x2
    00395ec8mov x2, x6
    00395eccmov x3, x7
    00395ed0blr x4
    00395ed4ldr x1, [sp+152]
    00395ed8ldrsb x27, [x1]
    00395edcldr x1, [x1+48]
    00395ee0ldr x0, [sp+160]
    00395ee4mov x2, xzr
    00395ee8mov x3, x2
    00395eecmov x4, x1
    00395ef0mov x1, xzr
    00395ef4blr x4
    00395ef8str x0, [sp+192]
    00395efcstr x1, [sp+200]
    00395f00str x2, [sp+208]
    00395f04str x0, [sp+128]
    00395f08str x1, [sp+136]
    00395f0cstr x2, [sp+144]
    00395f10ldur x29, [sp-8]
    00395f14ldr x30, [sp], 240
    00395f18ret x30
    00395f1c
    00395f1cloc_395f1c:
    00395f1cstp x0, x1, [sp+8]
    00395f20stp x2, x3, [sp+24]
    00395f24stp x4, x5, [sp+40]
    00395f28mov x3, x30
    00395f2cbl runtime.morestack_noctxt.abi0
    00395f30ldp x0, x1, [sp+8]
    00395f34ldp x2, x3, [sp+24]
    00395f38ldp x4, x5, [sp+40]
    00395f3cb 0x395d60
    00395d60
    00395f40
    00395f40crypto/tls.(*cipherSuiteTLS13).exportKeyingMaterial: ; void crypto/tls.(*cipherSuiteTLS13).exportKeyingMaterial(crypto/tls.cipherSuiteTLS13 * c, crypto/internal/fips140/tls13.MasterSecret * s, hash.Hash transcript)
    00395f40ldr x16, [x28+16]
    00395f44subs xzr, sp, x16
    00395f48b.ls 0x39602c
    00395f4cstr x30, [sp-112]!
    00395f50stur x29, [sp-8]
    00395f54sub x29, sp, 8
    00395f58str x0, [sp+120]
    00395f5cstr x1, [sp+128]
    00395f60str x2, [sp+136]
    00395f64str x3, [sp+144]
    00395f68str xzr, [sp+40]
    00395f6cldr x2, [sp+144]
    00395f70ldr x3, [sp+136]
    00395f74str x3, [sp+88]
    00395f78str x2, [sp+96]
    00395f7ccbnz x3, 0x395f84
    00395f80b 0x395fa4
    00395f84
    00395f84loc_395f84:
    00395f84str x2, [sp+56]
    00395f88ldr x1, [x3+8]
    00395f8cadrp x0, 0x67a000
    00395f90add x0, x0, 1360
    00395f94bl runtime.typeAssert
    00395f98ldr x2, [sp+56]
    00395f9cmov x3, x0
    00395fa0b 0x395fa8
    00395fa4
    00395fa4loc_395fa4:
    00395fa4b 0x395fa8
    00395fa8
    00395fa8loc_395fa8:
    00395fa8str x3, [sp+72]
    00395facstr x2, [sp+80]
    00395fb0ldr x0, [sp+128]
    00395fb4mov x1, x3
    00395fb8bl crypto/internal/fips140/tls13.(*MasterSecret).ExporterMasterSecret
    00395fbcstr x0, [sp+48]
    00395fc0adrp x0, 0x29f000
    00395fc4add x0, x0, 2240
    00395fc8bl runtime.newobject
    00395fccstr x0, [sp+64]
    00395fd0adrp x3, 4096
    00395fd4add x3, x3, 80
    00395fd8str x3, [x0]
    00395fdcldr x3, [sp+48]
    00395fe0ldr x4, [sp+64]
    00395fe4ldrsb x27, [x4]
    00395fe8adrp x27, 0x6b6000
    00395fecldr w5, [x27+3056]
    00395ff0cbz w5, 0x395ff8
    00395ff4b 0x395ffc
    00395ff8
    00395ff8loc_395ff8:
    00395ff8b 0x396010
    00395ffc
    00395ffcloc_395ffc:
    00395ffcbl runtime.gcWriteBarrier2
    00396000str x3, [x25]
    00396004ldr x1, [x4+8]
    00396008str x1, [x25+8]
    0039600cb 0x396010
    00396010
    00396010loc_396010:
    00396010str x3, [x4+8]
    00396014ldr x1, [sp+64]
    00396018str x1, [sp+40]
    0039601cldr x0, [sp+40]
    00396020ldur x29, [sp-8]
    00396024ldr x30, [sp], 112
    00396028ret x30
    0039602c
    0039602cloc_39602c:
    0039602cstp x0, x1, [sp+8]
    00396030stp x2, x3, [sp+24]
    00396034mov x3, x30
    00396038bl runtime.morestack_noctxt.abi0
    0039603cldp x0, x1, [sp+8]
    00396040ldp x2, x3, [sp+24]
    00396044b 0x395f40
    00396048udf 0
    0039604cudf 0
    00395f40
    00396050
    00396050crypto/tls.(*cipherSuiteTLS13).exportKeyingMaterial.func1: ; void crypto/tls.(*cipherSuiteTLS13).exportKeyingMaterial.func1(struct string label, struct []uint8 context, int length)
    00396050ldr x16, [x28+16]
    00396054sub x17, sp, 16
    00396058subs xzr, x17, x16
    0039605cb.ls 0x3960f4
    00396060str x30, [sp-144]!
    00396064stur x29, [sp-8]
    00396068sub x29, sp, 8
    0039606cstr x0, [sp+152]
    00396070str x1, [sp+160]
    00396074str x2, [sp+168]
    00396078str x3, [sp+176]
    0039607cstr x4, [sp+184]
    00396080str x5, [sp+192]
    00396084ldr x7, [x26+8]
    00396088str x7, [sp+104]
    0039608cstr xzr, [sp+80]
    00396090stp xzr, xzr, [sp+88]
    00396094stp xzr, xzr, [sp+64]
    00396098ldr x6, [sp+192]
    0039609cldr x1, [sp+152]
    003960a0ldr x3, [sp+168]
    003960a4ldr x2, [sp+160]
    003960a8ldr x4, [sp+176]
    003960acldr x5, [sp+184]
    003960b0ldr x0, [sp+104]
    003960b4bl crypto/internal/fips140/tls13.(*ExporterMasterSecret).Exporter
    003960b8str x0, [sp+112]
    003960bcstr x1, [sp+120]
    003960c0str x2, [sp+128]
    003960c4str x0, [sp+80]
    003960c8str x1, [sp+88]
    003960ccstr x2, [sp+96]
    003960d0stp xzr, xzr, [sp+64]
    003960d4ldr x0, [sp+80]
    003960d8ldr x1, [sp+88]
    003960dcldr x2, [sp+96]
    003960e0mov x3, xzr
    003960e4mov x4, xzr
    003960e8ldur x29, [sp-8]
    003960ecldr x30, [sp], 144
    003960f0ret x30
    003960f4
    003960f4loc_3960f4:
    003960f4stp x0, x1, [sp+8]
    003960f8stp x2, x3, [sp+24]
    003960fcstp x4, x5, [sp+40]
    00396100mov x3, x30
    00396104bl runtime.morestack.abi0
    00396108ldp x0, x1, [sp+8]
    0039610cldp x2, x3, [sp+24]
    00396110ldp x4, x5, [sp+40]
    00396114b 0x396050
    00396118udf 0
    0039611cudf 0
    00396050
    00396120
    00396120crypto/tls.generateECDHEKey: ; void crypto/tls.generateECDHEKey(io.Reader rand, crypto/tls.CurveID curveID)
    00396120ldr x16, [x28+16]
    00396124sub x17, sp, 48
    00396128subs xzr, x17, x16
    0039612cb.ls 0x39624c
    00396130str x30, [sp-176]!
    00396134stur x29, [sp-8]
    00396138sub x29, sp, 8
    0039613cstr x0, [sp+184]
    00396140str x1, [sp+192]
    00396144strh w2, [sp+200]
    00396148str xzr, [sp+64]
    0039614cstp xzr, xzr, [sp+48]
    00396150stp xzr, xzr, [sp+152]
    00396154ldrh w0, [sp+200]
    00396158bl crypto/tls.curveForCurveID
    0039615cstr x0, [sp+152]
    00396160str x1, [sp+160]
    00396164strb w2, [sp+47]
    00396168ldr x1, [sp+152]
    0039616cldr x2, [sp+160]
    00396170str x1, [sp+112]
    00396174str x2, [sp+120]
    00396178ldrb w1, [sp+47]
    0039617cstrb w1, [sp+46]
    00396180ldr x1, [sp+112]
    00396184ldr x2, [sp+120]
    00396188str x1, [sp+72]
    0039618cstr x2, [sp+80]
    00396190ldrb w1, [sp+46]
    00396194strb w1, [sp+45]
    00396198tbnz w1, 0, 0x3961a0
    0039619cb 0x396210
    003961a0
    003961a0loc_3961a0:
    003961a0str xzr, [sp+128]
    003961a4stp xzr, xzr, [sp+136]
    003961a8ldr x2, [sp+192]
    003961acldr x3, [sp+72]
    003961b0ldrsb x27, [x3]
    003961b4ldr x3, [x3+24]
    003961b8ldr x1, [sp+184]
    003961bcldr x0, [sp+80]
    003961c0blr x3
    003961c4str x0, [sp+128]
    003961c8str x1, [sp+136]
    003961ccstr x2, [sp+144]
    003961d0ldr x3, [sp+128]
    003961d4str x3, [sp+104]
    003961d8ldr x3, [sp+136]
    003961dcldr x4, [sp+144]
    003961e0str x3, [sp+88]
    003961e4str x4, [sp+96]
    003961e8ldr x3, [sp+104]
    003961ecstr x3, [sp+64]
    003961f0ldr x1, [sp+88]
    003961f4ldr x2, [sp+96]
    003961f8str x1, [sp+48]
    003961fcstr x2, [sp+56]
    00396200ldr x0, [sp+64]
    00396204ldur x29, [sp-8]
    00396208ldr x30, [sp], 176
    0039620cret x30
    00396210
    00396210loc_396210:
    00396210adrp x0, 0x32c000
    00396214add x0, x0, 3836
    00396218movz x1, 38
    0039621cbl errors.New
    00396220str x0, [sp+136]
    00396224str x1, [sp+144]
    00396228str xzr, [sp+64]
    0039622cldr x1, [sp+136]
    00396230ldr x2, [sp+144]
    00396234str x1, [sp+48]
    00396238str x2, [sp+56]
    0039623cldr x0, [sp+64]
    00396240ldur x29, [sp-8]
    00396244ldr x30, [sp], 176
    00396248ret x30
    0039624c
    0039624cloc_39624c:
    0039624cstp x0, x1, [sp+8]
    00396250strh w2, [sp+24]
    00396254mov x3, x30
    00396258bl runtime.morestack_noctxt.abi0
    0039625cldp x0, x1, [sp+8]
    00396260ldrh w2, [sp+24]
    00396264b 0x396120
    00396268udf 0
    0039626cudf 0
    00396120
    00396270
    00396270crypto/tls.curveForCurveID: ; void crypto/tls.curveForCurveID(crypto/tls.CurveID id)
    00396270ldr x16, [x28+16]
    00396274subs xzr, sp, x16
    00396278b.ls 0x3963e8
    0039627cstr x30, [sp-64]!
    00396280stur x29, [sp-8]
    00396284sub x29, sp, 8
    00396288strh w0, [sp+72]
    0039628cstp xzr, xzr, [sp+24]
    00396290strb wzr, [sp+21]
    00396294ldrh w3, [sp+72]
    00396298strh w3, [sp+22]
    0039629cmov x4, x3
    003962a0subs wzr, w4, 24
    003962a4b.ls 0x3962ac
    003962a8b 0x396338
    003962ac
    003962acloc_3962ac:
    003962acmov x4, x3
    003962b0subs wzr, w4, 23
    003962b4b.eq 0x3962bc
    003962b8b 0x3962f0
    003962bc
    003962bcloc_3962bc:
    003962bcb 0x3962c0
    003962c0
    003962c0loc_3962c0:
    003962c0bl crypto/ecdh.P256
    003962c4str x0, [sp+40]
    003962c8str x1, [sp+48]
    003962ccstr x0, [sp+24]
    003962d0str x1, [sp+32]
    003962d4orr x2, xzr, 1
    003962d8strb w2, [sp+21]
    003962dcldr x0, [sp+24]
    003962e0ldr x1, [sp+32]
    003962e4ldur x29, [sp-8]
    003962e8ldr x30, [sp], 64
    003962ecret x30
    003962f0
    003962f0loc_3962f0:
    003962f0subs wzr, w3, 24
    003962f4b.eq 0x3962fc
    003962f8b 0x396330
    003962fc
    003962fcloc_3962fc:
    003962fcb 0x396300
    00396300
    00396300loc_396300:
    00396300bl crypto/ecdh.P384
    00396304str x0, [sp+40]
    00396308str x1, [sp+48]
    0039630cstr x0, [sp+24]
    00396310str x1, [sp+32]
    00396314orr x2, xzr, 1
    00396318strb w2, [sp+21]
    0039631cldr x0, [sp+24]
    00396320ldr x1, [sp+32]
    00396324ldur x29, [sp-8]
    00396328ldr x30, [sp], 64
    0039632cret x30
    00396330
    00396330loc_396330:
    00396330b 0x396334
    00396334
    00396334loc_396334:
    00396334b 0x3963c4
    00396338
    00396338loc_396338:
    00396338mov x4, x3
    0039633csubs wzr, w4, 25
    00396340b.eq 0x396348
    00396344b 0x39637c
    00396348
    00396348loc_396348:
    00396348b 0x39634c
    0039634c
    0039634cloc_39634c:
    0039634cbl crypto/ecdh.P521
    00396350str x0, [sp+40]
    00396354str x1, [sp+48]
    00396358str x0, [sp+24]
    0039635cstr x1, [sp+32]
    00396360orr x2, xzr, 1
    00396364strb w2, [sp+21]
    00396368ldr x0, [sp+24]
    0039636cldr x1, [sp+32]
    00396370ldur x29, [sp-8]
    00396374ldr x30, [sp], 64
    00396378ret x30
    0039637c
    0039637cloc_39637c:
    0039637csubs wzr, w3, 29
    00396380b.eq 0x396388
    00396384b 0x3963bc
    00396388
    00396388loc_396388:
    00396388b 0x39638c
    0039638c
    0039638cloc_39638c:
    0039638cbl crypto/ecdh.X25519
    00396390str x0, [sp+40]
    00396394str x1, [sp+48]
    00396398str x0, [sp+24]
    0039639cstr x1, [sp+32]
    003963a0orr x2, xzr, 1
    003963a4strb w2, [sp+21]
    003963a8ldr x0, [sp+24]
    003963acldr x1, [sp+32]
    003963b0ldur x29, [sp-8]
    003963b4ldr x30, [sp], 64
    003963b8ret x30
    003963bc
    003963bcloc_3963bc:
    003963bcb 0x3963c0
    003963c0
    003963c0loc_3963c0:
    003963c0b 0x3963c4
    003963c4
    003963c4loc_3963c4:
    003963c4b 0x3963c8
    003963c8
    003963c8loc_3963c8:
    003963c8stp xzr, xzr, [sp+24]
    003963ccstrb wzr, [sp+21]
    003963d0ldr x1, [sp+32]
    003963d4ldr x0, [sp+24]
    003963d8mov x2, xzr
    003963dcldur x29, [sp-8]
    003963e0ldr x30, [sp], 64
    003963e4ret x30
    003963e8
    003963e8loc_3963e8:
    003963e8strh w0, [sp+8]
    003963ecmov x3, x30
    003963f0bl runtime.morestack_noctxt.abi0
    003963f4ldrh w0, [sp+8]
    003963f8b 0x396270
    003963fcudf 0
    00396270
    00396400
    00396400crypto/tls.splitPreMasterSecret: ; void crypto/tls.splitPreMasterSecret(struct []uint8 secret)
    00396400ldr x16, [x28+16]
    00396404subs xzr, sp, x16
    00396408b.ls 0x3964e4
    0039640cstr x30, [sp-96]!
    00396410stur x29, [sp-8]
    00396414sub x29, sp, 8
    00396418str x0, [sp+104]
    0039641cstr x1, [sp+112]
    00396420str x2, [sp+120]
    00396424str xzr, [sp+64]
    00396428stp xzr, xzr, [sp+72]
    0039642cstr xzr, [sp+40]
    00396430stp xzr, xzr, [sp+48]
    00396434ldr x6, [sp+112]
    00396438str x6, [sp+32]
    0039643cadd x7, x6, 1
    00396440add x6, x6, x7, lsr #63
    00396444add x6, x6, 1
    00396448sbfm x1, x6, 1, 63
    0039644cstr x1, [sp+24]
    00396450ldr x2, [sp+120]
    00396454ldr x7, [sp+104]
    00396458subs xzr, x2, x6, asr #1
    0039645cb.hs 0x396464
    00396460b 0x3964dc
    00396464
    00396464loc_396464:
    00396464b 0x396468
    00396468
    00396468loc_396468:
    00396468str x7, [sp+64]
    0039646cstr x1, [sp+72]
    00396470str x2, [sp+80]
    00396474ldr x6, [sp+112]
    00396478str x6, [sp+24]
    0039647cubfm x0, x6, 1, 63
    00396480str x0, [sp+32]
    00396484ldr x1, [sp+112]
    00396488ldr x7, [sp+120]
    0039648cldr x8, [sp+104]
    00396490b 0x396494
    00396494
    00396494loc_396494:
    00396494subs xzr, x1, x6, lsr #1
    00396498b.hs 0x3964a0
    0039649cb 0x3964d8
    003964a0
    003964a0loc_3964a0:
    003964a0sub x5, x7, x6, lsr #1
    003964a4sub x4, x1, x6, lsr #1
    003964a8sub x6, xzr, x5
    003964acand x6, x0, x6, asr #63
    003964b0add x3, x8, x6
    003964b4str x3, [sp+40]
    003964b8str x4, [sp+48]
    003964bcstr x5, [sp+56]
    003964c0ldr x0, [sp+64]
    003964c4ldr x1, [sp+72]
    003964c8ldr x2, [sp+80]
    003964ccldur x29, [sp-8]
    003964d0ldr x30, [sp], 96
    003964d4ret x30
    003964d8
    003964d8loc_3964d8:
    003964d8bl runtime.panicSliceB
    003964dc
    003964dcloc_3964dc:
    003964dcbl runtime.panicSliceAcap
    003964e0hint
    003964e4
    003964e4loc_3964e4:
    003964e4stp x0, x1, [sp+8]
    003964e8str x2, [sp+24]
    003964ecmov x3, x30
    003964f0bl runtime.morestack_noctxt.abi0
    003964f4ldp x0, x1, [sp+8]
    003964f8ldr x2, [sp+24]
    003964fcb 0x396400
    00396400
    00396500
    00396500crypto/tls.pHash: ; void crypto/tls.pHash(struct []uint8 result, struct []uint8 secret, struct []uint8 seed, func() hash.Hash hash)
    00396500ldr x16, [x28+16]
    00396504sub x17, sp, 96
    00396508subs xzr, x17, x16
    0039650cb.ls 0x3967b4
    00396510str x30, [sp-224]!
    00396514stur x29, [sp-8]
    00396518sub x29, sp, 8
    0039651cstr x0, [sp+232]
    00396520str x1, [sp+240]
    00396524str x2, [sp+248]
    00396528str x3, [sp+256]
    0039652cstr x4, [sp+264]
    00396530str x5, [sp+272]
    00396534str x6, [sp+280]
    00396538str x7, [sp+288]
    0039653cstr x8, [sp+296]
    00396540str x9, [sp+304]
    00396544ldr x2, [sp+264]
    00396548ldr x3, [sp+272]
    0039654cldr x1, [sp+256]
    00396550mov x0, x9
    00396554bl crypto/hmac.New
    00396558str x0, [sp+80]
    0039655cstr x1, [sp+88]
    00396560ldrsb x27, [x0]
    00396564ldr x4, [sp+280]
    00396568ldr x2, [sp+288]
    0039656cldr x3, [sp+296]
    00396570ldr x5, [x0+56]
    00396574mov x0, x1
    00396578mov x1, x4
    0039657cblr x5
    00396580ldr x4, [sp+80]
    00396584ldrsb x27, [x4]
    00396588ldr x4, [x4+48]
    0039658cldr x0, [sp+88]
    00396590mov x1, xzr
    00396594mov x2, xzr
    00396598mov x3, x2
    0039659cblr x4
    003965a0str x0, [sp+120]
    003965a4str x1, [sp+128]
    003965a8str x2, [sp+136]
    003965acstr xzr, [sp+40]
    003965b0b 0x3965b4
    003965b4
    003965b4loc_3965b4:
    003965b4ldr x1, [sp+240]
    003965b8str x1, [sp+48]
    003965bcldr x2, [sp+40]
    003965c0subs xzr, x1, x2
    003965c4b.gt 0x3965cc
    003965c8b 0x3967a0
    003965cc
    003965ccloc_3965cc:
    003965ccldr x1, [sp+80]
    003965d0ldrsb x27, [x1]
    003965d4ldr x1, [x1+32]
    003965d8ldr x0, [sp+88]
    003965dcblr x1
    003965e0ldr x2, [sp+128]
    003965e4ldr x3, [sp+136]
    003965e8ldr x1, [sp+80]
    003965ecldrsb x27, [x1]
    003965f0ldr x1, [x1+56]
    003965f4ldr x4, [sp+120]
    003965f8ldr x0, [sp+88]
    003965fcmov x5, x1
    00396600mov x1, x4
    00396604blr x5
    00396608ldr x2, [sp+288]
    0039660cldr x3, [sp+296]
    00396610ldr x1, [sp+80]
    00396614ldrsb x27, [x1]
    00396618ldr x1, [x1+56]
    0039661cldr x4, [sp+280]
    00396620ldr x0, [sp+88]
    00396624mov x5, x1
    00396628mov x1, x4
    0039662cblr x5
    00396630ldr x1, [sp+80]
    00396634ldrsb x27, [x1]
    00396638ldr x1, [x1+48]
    0039663cldr x0, [sp+88]
    00396640mov x2, xzr
    00396644mov x3, x2
    00396648mov x4, x1
    0039664cmov x1, xzr
    00396650blr x4
    00396654str x0, [sp+96]
    00396658str x1, [sp+104]
    0039665cstr x2, [sp+112]
    00396660ldr x0, [sp+40]
    00396664ldr x1, [sp+240]
    00396668ldr x2, [sp+232]
    0039666cldr x3, [sp+248]
    00396670b 0x396674
    00396674
    00396674loc_396674:
    00396674subs xzr, x1, x0
    00396678b.hs 0x396680
    0039667cb 0x3967ac
    00396680
    00396680loc_396680:
    00396680sub x3, x3, x0
    00396684sub x4, x1, x0
    00396688sub x5, xzr, x3
    0039668cand x5, x0, x5, asr #63
    00396690add x5, x2, x5
    00396694str x5, [sp+144]
    00396698str x4, [sp+152]
    0039669cstr x3, [sp+160]
    003966a0str x5, [sp+192]
    003966a4str x4, [sp+200]
    003966a8str x3, [sp+208]
    003966acldr x3, [sp+104]
    003966b0ldr x4, [sp+96]
    003966b4ldr x5, [sp+112]
    003966b8str x4, [sp+168]
    003966bcstr x3, [sp+176]
    003966c0str x5, [sp+184]
    003966c4ldr x4, [sp+200]
    003966c8str x4, [sp+64]
    003966ccsubs xzr, x4, x3
    003966d0b.gt 0x3966d8
    003966d4b 0x3966e0
    003966d8
    003966d8loc_3966d8:
    003966d8str x3, [sp+64]
    003966dcb 0x3966e4
    003966e0
    003966e0loc_3966e0:
    003966e0b 0x3966e4
    003966e4
    003966e4loc_3966e4:
    003966e4ldr x3, [sp+168]
    003966e8ldr x4, [sp+192]
    003966ecsubs xzr, x3, x4
    003966f0b.ne 0x3966f8
    003966f4b 0x396714
    003966f8
    003966f8loc_3966f8:
    003966f8ldr x3, [sp+64]
    003966fcstr x3, [sp+56]
    00396700ldr x2, [sp+56]
    00396704ldr x1, [sp+168]
    00396708ldr x0, [sp+192]
    0039670cbl runtime.memmove
    00396710b 0x396718
    00396714
    00396714loc_396714:
    00396714b 0x396718
    00396718
    00396718loc_396718:
    00396718ldr x1, [sp+104]
    0039671cstr x1, [sp+72]
    00396720ldr x2, [sp+40]
    00396724add x1, x2, x1
    00396728str x1, [sp+40]
    0039672cldr x1, [sp+80]
    00396730ldrsb x27, [x1]
    00396734ldr x1, [x1+32]
    00396738ldr x0, [sp+88]
    0039673cblr x1
    00396740ldr x2, [sp+128]
    00396744ldr x3, [sp+136]
    00396748ldr x1, [sp+80]
    0039674cldrsb x27, [x1]
    00396750ldr x1, [x1+56]
    00396754ldr x4, [sp+120]
    00396758ldr x0, [sp+88]
    0039675cmov x5, x1
    00396760mov x1, x4
    00396764blr x5
    00396768ldr x1, [sp+80]
    0039676cldrsb x27, [x1]
    00396770ldr x1, [x1+48]
    00396774ldr x0, [sp+88]
    00396778mov x2, xzr
    0039677cmov x3, x2
    00396780mov x4, x1
    00396784mov x1, xzr
    00396788blr x4
    0039678cstr x0, [sp+120]
    00396790str x1, [sp+128]
    00396794str x2, [sp+136]
    00396798b 0x39679c
    0039679c
    0039679cloc_39679c:
    0039679cb 0x3965b4
    003967a0
    003967a0loc_3967a0:
    003967a0ldur x29, [sp-8]
    003967a4ldr x30, [sp], 224
    003967a8ret x30
    003967ac
    003967acloc_3967ac:
    003967acbl runtime.panicSliceB
    003967b0hint
    003967b4
    003967b4loc_3967b4:
    003967b4stp x0, x1, [sp+8]
    003967b8stp x2, x3, [sp+24]
    003967bcstp x4, x5, [sp+40]
    003967c0stp x6, x7, [sp+56]
    003967c4stp x8, x9, [sp+72]
    003967c8mov x3, x30
    003967ccbl runtime.morestack_noctxt.abi0
    003967d0ldp x0, x1, [sp+8]
    003967d4ldp x2, x3, [sp+24]
    003967d8ldp x4, x5, [sp+40]
    003967dcldp x6, x7, [sp+56]
    003967e0ldp x8, x9, [sp+72]
    003967e4b 0x396500
    003967e8udf 0
    003967ecudf 0
    00396500