File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    00387a80
    00387a80crypto/tls.(*clientHelloMsg).marshalWithoutBinders: ; void crypto/tls.(*clientHelloMsg).marshalWithoutBinders(crypto/tls.clientHelloMsg * m)
    00387a80ldr x16, [x28+16]
    00387a84sub x17, sp, 176
    00387a88subs xzr, x17, x16
    00387a8cb.ls 0x387cc8
    00387a90sub x20, sp, 304
    00387a94stp x29, x30, [x20-8]
    00387a98add sp, x20, 0
    00387a9csub x29, sp, 8
    00387aa0str x0, [sp+312]
    00387aa4str xzr, [sp+96]
    00387aa8stp xzr, xzr, [sp+104]
    00387aacstp xzr, xzr, [sp+80]
    00387ab0orr x5, xzr, 2
    00387ab4str x5, [sp+32]
    00387ab8ldr x5, [sp+312]
    00387abcldrsb x27, [x5]
    00387ac0ldr x6, [x5+488]
    00387ac4ldr x7, [x5+480]
    00387ac8ldr x5, [x5+496]
    00387accstr x7, [sp+184]
    00387ad0str x6, [sp+192]
    00387ad4str x5, [sp+200]
    00387ad8str xzr, [sp+56]
    00387adcstr x6, [sp+48]
    00387ae0ldr x5, [sp+184]
    00387ae4str x5, [sp+40]
    00387ae8b 0x387aec
    00387aec
    00387aecloc_387aec:
    00387aecldr x5, [sp+48]
    00387af0ldr x6, [sp+56]
    00387af4subs xzr, x5, x6
    00387af8b.gt 0x387b00
    00387afcb 0x387b60
    00387b00
    00387b00loc_387b00:
    00387b00ldr x5, [sp+40]
    00387b04str x5, [sp+248]
    00387b08ldr x5, [sp+248]
    00387b0cldr x6, [x5+8]
    00387b10ldr x7, [x5]
    00387b14ldr x5, [x5+16]
    00387b18str x7, [sp+160]
    00387b1cstr x6, [sp+168]
    00387b20str x5, [sp+176]
    00387b24ldr x5, [sp+32]
    00387b28add x7, x5, 1
    00387b2cstr x7, [sp+32]
    00387b30str x6, [sp+72]
    00387b34add x5, x5, x6
    00387b38add x5, x5, 1
    00387b3cstr x5, [sp+32]
    00387b40b 0x387b44
    00387b44
    00387b44loc_387b44:
    00387b44ldr x5, [sp+56]
    00387b48add x5, x5, 1
    00387b4cstr x5, [sp+56]
    00387b50ldr x5, [sp+248]
    00387b54add x5, x5, 24
    00387b58str x5, [sp+40]
    00387b5cb 0x387aec
    00387b60
    00387b60loc_387b60:
    00387b60str xzr, [sp+120]
    00387b64stp xzr, xzr, [sp+128]
    00387b68ldr x5, [sp+312]
    00387b6cldrsb x27, [x5]
    00387b70ldr x5, [x5]
    00387b74cbnz x5, 0x387b7c
    00387b78b 0x387ba0
    00387b7c
    00387b7cloc_387b7c:
    00387b7cldr x5, [sp+312]
    00387b80ldrsb x27, [x5]
    00387b84ldr x6, [x5]
    00387b88ldr x7, [x5+8]
    00387b8cldr x5, [x5+16]
    00387b90str x6, [sp+120]
    00387b94str x7, [sp+128]
    00387b98str x5, [sp+136]
    00387b9cb 0x387c58
    00387ba0
    00387ba0loc_387ba0:
    00387ba0stp xzr, xzr, [sp+144]
    00387ba4str xzr, [sp+272]
    00387ba8stp xzr, xzr, [sp+280]
    00387bacstp xzr, xzr, [sp+256]
    00387bb0ldr x0, [sp+312]
    00387bb4bl crypto/tls.(*clientHelloMsg).marshal
    00387bb8str x0, [sp+272]
    00387bbcstr x1, [sp+280]
    00387bc0str x2, [sp+288]
    00387bc4str x3, [sp+256]
    00387bc8str x4, [sp+264]
    00387bccldr x1, [sp+272]
    00387bd0ldr x2, [sp+280]
    00387bd4ldr x3, [sp+288]
    00387bd8str x1, [sp+224]
    00387bdcstr x2, [sp+232]
    00387be0str x3, [sp+240]
    00387be4ldr x1, [sp+256]
    00387be8ldr x2, [sp+264]
    00387becstr x1, [sp+208]
    00387bf0str x2, [sp+216]
    00387bf4ldr x1, [sp+224]
    00387bf8ldr x2, [sp+232]
    00387bfcldr x3, [sp+240]
    00387c00str x1, [sp+120]
    00387c04str x2, [sp+128]
    00387c08str x3, [sp+136]
    00387c0cldr x1, [sp+216]
    00387c10ldr x2, [sp+208]
    00387c14str x2, [sp+144]
    00387c18str x1, [sp+152]
    00387c1ccbnz x2, 0x387c24
    00387c20b 0x387c54
    00387c24
    00387c24loc_387c24:
    00387c24str xzr, [sp+96]
    00387c28stp xzr, xzr, [sp+104]
    00387c2cldr x3, [sp+144]
    00387c30ldr x4, [sp+152]
    00387c34str x3, [sp+80]
    00387c38str x4, [sp+88]
    00387c3cldr x0, [sp+96]
    00387c40ldr x1, [sp+104]
    00387c44ldr x2, [sp+112]
    00387c48ldp x29, x30, [sp-8]
    00387c4cadd sp, sp, 304
    00387c50ret x30
    00387c54
    00387c54loc_387c54:
    00387c54b 0x387c58
    00387c58
    00387c58loc_387c58:
    00387c58ldr x5, [sp+128]
    00387c5cstr x5, [sp+72]
    00387c60ldr x6, [sp+32]
    00387c64sub x1, x5, x6
    00387c68str x1, [sp+64]
    00387c6cldr x2, [sp+136]
    00387c70ldr x5, [sp+120]
    00387c74subs xzr, x2, x1
    00387c78b.hs 0x387c80
    00387c7cb 0x387cc0
    00387c80
    00387c80loc_387c80:
    00387c80b 0x387c84
    00387c84
    00387c84loc_387c84:
    00387c84str x5, [sp+272]
    00387c88str x1, [sp+280]
    00387c8cstr x2, [sp+288]
    00387c90str x5, [sp+96]
    00387c94str x1, [sp+104]
    00387c98str x2, [sp+112]
    00387c9cstp xzr, xzr, [sp+80]
    00387ca0ldr x0, [sp+96]
    00387ca4ldr x1, [sp+104]
    00387ca8ldr x2, [sp+112]
    00387cacmov x3, xzr
    00387cb0mov x4, xzr
    00387cb4ldp x29, x30, [sp-8]
    00387cb8add sp, sp, 304
    00387cbcret x30
    00387cc0
    00387cc0loc_387cc0:
    00387cc0bl runtime.panicSliceAcap
    00387cc4hint
    00387cc8
    00387cc8loc_387cc8:
    00387cc8str x0, [sp+8]
    00387cccmov x3, x30
    00387cd0bl runtime.morestack_noctxt.abi0
    00387cd4ldr x0, [sp+8]
    00387cd8b 0x387a80
    00387cdcudf 0
    00387a80
    00387ce0
    00387ce0crypto/tls.(*clientHelloMsg).updateBinders: ; void crypto/tls.(*clientHelloMsg).updateBinders(crypto/tls.clientHelloMsg * m, struct [][]uint8 pskBinders)
    00387ce0ldr x16, [x28+16]
    00387ce4subs xzr, sp, x16
    00387ce8b.ls 0x387e98
    00387cecstr x30, [sp-112]!
    00387cf0stur x29, [sp-8]
    00387cf4sub x29, sp, 8
    00387cf8str x0, [sp+120]
    00387cfcstr x1, [sp+128]
    00387d00str x2, [sp+136]
    00387d04str x3, [sp+144]
    00387d08stp xzr, xzr, [sp+72]
    00387d0cldr x2, [sp+136]
    00387d10str x2, [sp+64]
    00387d14ldr x3, [sp+120]
    00387d18ldrsb x27, [x3]
    00387d1cldr x3, [x3+488]
    00387d20str x3, [sp+56]
    00387d24subs xzr, x3, x2
    00387d28b.ne 0x387d30
    00387d2cb 0x387d5c
    00387d30
    00387d30loc_387d30:
    00387d30adrp x0, 0x341000
    00387d34add x0, x0, 42
    00387d38movz x1, 47
    00387d3cbl errors.New
    00387d40str x0, [sp+88]
    00387d44str x1, [sp+96]
    00387d48str x0, [sp+72]
    00387d4cstr x1, [sp+80]
    00387d50ldur x29, [sp-8]
    00387d54ldr x30, [sp], 112
    00387d58ret x30
    00387d5c
    00387d5cloc_387d5c:
    00387d5cstr xzr, [sp+48]
    00387d60ldr x2, [sp+120]
    00387d64ldrsb x27, [x2]
    00387d68ldr x2, [x2+488]
    00387d6cstr x2, [sp+40]
    00387d70b 0x387d74
    00387d74
    00387d74loc_387d74:
    00387d74ldr x2, [sp+40]
    00387d78ldr x3, [sp+48]
    00387d7csubs xzr, x2, x3
    00387d80b.gt 0x387d88
    00387d84b 0x387e2c
    00387d88
    00387d88loc_387d88:
    00387d88ldr x0, [sp+48]
    00387d8cstr x0, [sp+32]
    00387d90ldr x1, [sp+136]
    00387d94ldr x2, [sp+128]
    00387d98subs xzr, x1, x0
    00387d9cb.hi 0x387da4
    00387da0b 0x387e90
    00387da4
    00387da4loc_387da4:
    00387da4sub x3, x0, x0, lsl #2
    00387da8sub x2, x2, x3, lsl #3
    00387dacldr x2, [x2+8]
    00387db0str x2, [sp+56]
    00387db4ldr x3, [sp+120]
    00387db8ldrsb x27, [x3]
    00387dbcldr x1, [x3+488]
    00387dc0ldr x3, [x3+480]
    00387dc4subs xzr, x1, x0
    00387dc8b.hi 0x387dd0
    00387dccb 0x387e8c
    00387dd0
    00387dd0loc_387dd0:
    00387dd0sub x4, x0, x0, lsl #2
    00387dd4sub x3, x3, x4, lsl #3
    00387dd8ldr x3, [x3+8]
    00387ddcstr x3, [sp+64]
    00387de0subs xzr, x3, x2
    00387de4b.ne 0x387dec
    00387de8b 0x387e18
    00387dec
    00387decloc_387dec:
    00387decadrp x0, 0x341000
    00387df0add x0, x0, 42
    00387df4movz x1, 47
    00387df8bl errors.New
    00387dfcstr x0, [sp+88]
    00387e00str x1, [sp+96]
    00387e04str x0, [sp+72]
    00387e08str x1, [sp+80]
    00387e0cldur x29, [sp-8]
    00387e10ldr x30, [sp], 112
    00387e14ret x30
    00387e18
    00387e18loc_387e18:
    00387e18b 0x387e1c
    00387e1c
    00387e1cloc_387e1c:
    00387e1cldr x2, [sp+48]
    00387e20add x2, x2, 1
    00387e24str x2, [sp+48]
    00387e28b 0x387d74
    00387e2c
    00387e2cloc_387e2c:
    00387e2cldr x2, [sp+120]
    00387e30ldrsb x27, [x2]
    00387e34ldr x3, [sp+128]
    00387e38ldr x4, [sp+136]
    00387e3cldr x5, [sp+144]
    00387e40str x4, [x2+488]
    00387e44str x5, [x2+496]
    00387e48adrp x27, 0x6c4000
    00387e4cldr w4, [x27+3056]
    00387e50cbz w4, 0x387e58
    00387e54b 0x387e5c
    00387e58
    00387e58loc_387e58:
    00387e58b 0x387e70
    00387e5c
    00387e5cloc_387e5c:
    00387e5cbl runtime.gcWriteBarrier2
    00387e60str x3, [x25]
    00387e64ldr x4, [x2+480]
    00387e68str x4, [x25+8]
    00387e6cb 0x387e70
    00387e70
    00387e70loc_387e70:
    00387e70str x3, [x2+480]
    00387e74stp xzr, xzr, [sp+72]
    00387e78mov x0, xzr
    00387e7cmov x1, xzr
    00387e80ldur x29, [sp-8]
    00387e84ldr x30, [sp], 112
    00387e88ret x30
    00387e8c
    00387e8cloc_387e8c:
    00387e8cbl runtime.panicIndex
    00387e90
    00387e90loc_387e90:
    00387e90bl runtime.panicIndex
    00387e94hint
    00387e98
    00387e98loc_387e98:
    00387e98stp x0, x1, [sp+8]
    00387e9cstp x2, x3, [sp+24]
    00387ea0mov x3, x30
    00387ea4bl runtime.morestack_noctxt.abi0
    00387ea8ldp x0, x1, [sp+8]
    00387eacldp x2, x3, [sp+24]
    00387eb0b 0x387ce0
    00387eb4udf 0
    00387eb8udf 0
    00387ebcudf 0
    00387ce0
    00387ec0
    00387ec0crypto/tls.(*clientHelloMsg).unmarshal: ; void crypto/tls.(*clientHelloMsg).unmarshal(crypto/tls.clientHelloMsg * m, struct []uint8 data)
    00387ec0ldr x16, [x28+16]
    00387ec4sub x17, sp, 1408
    00387ec8subs xzr, x17, x16
    00387eccb.ls 0x389a04
    00387ed0sub x20, sp, 1536
    00387ed4stp x29, x30, [x20-8]
    00387ed8add sp, x20, 0
    00387edcsub x29, sp, 8
    00387ee0str x0, [sp+1544]
    00387ee4str x1, [sp+1552]
    00387ee8str x2, [sp+1560]
    00387eecstr x3, [sp+1568]
    00387ef0strb wzr, [sp+91]
    00387ef4add x20, sp, 928
    00387ef8adr x27, 16
    00387efcstp x29, x27, [sp-24]
    00387f00sub x29, sp, 24
    00387f04bl fn_87c80
    00387f08sub x29, sp, 8
    00387f0cldr x2, [sp+1552]
    00387f10ldr x3, [sp+1560]
    00387f14ldr x4, [sp+1568]
    00387f18str x2, [sp+928]
    00387f1cstr x3, [sp+936]
    00387f20str x4, [sp+944]
    00387f24ldr x20, [sp+1544]
    00387f28str x20, [sp+672]
    00387f2cldrsb x27, [x20]
    00387f30adrp x27, 0x6c4000
    00387f34ldr w5, [x27+3056]
    00387f38cbz w5, 0x387f40
    00387f3cb 0x387f44
    00387f40
    00387f40loc_387f40:
    00387f40b 0x387f84
    00387f44
    00387f44loc_387f44:
    00387f44str x4, [sp+128]
    00387f48str x3, [sp+120]
    00387f4cstr x2, [sp+664]
    00387f50bl runtime.gcWriteBarrier2
    00387f54str x2, [x25]
    00387f58ldr x2, [x20]
    00387f5cstr x2, [x25+8]
    00387f60adrp x0, 0x322000
    00387f64add x0, x0, 1728
    00387f68mov x1, x20
    00387f6cbl runtime.wbZero
    00387f70ldr x2, [sp+664]
    00387f74ldr x3, [sp+120]
    00387f78ldr x4, [sp+128]
    00387f7cldr x20, [sp+672]
    00387f80b 0x387f84
    00387f84
    00387f84loc_387f84:
    00387f84adr x27, 16
    00387f88stp x29, x27, [sp-24]
    00387f8csub x29, sp, 24
    00387f90bl fn_87c80
    00387f94sub x29, sp, 8
    00387f98ldr x5, [sp+672]
    00387f9cstr x2, [x5]
    00387fa0str x3, [x5+8]
    00387fa4str x4, [x5+16]
    00387fa8ldr x2, [sp+1552]
    00387facldr x3, [sp+1560]
    00387fb0ldr x4, [sp+1568]
    00387fb4str x2, [sp+288]
    00387fb8str x3, [sp+296]
    00387fbcstr x4, [sp+304]
    00387fc0add x0, sp, 288
    00387fc4orr x1, xzr, 4
    00387fc8bl vendor/golang.org/x/crypto/cryptobyte.(*String).Skip
    00387fccstrb w0, [sp+96]
    00387fd0eor x2, x0, 1
    00387fd4strb w2, [sp+97]
    00387fd8tbnz w0, 0, 0x387fe0
    00387fdcb 0x388008
    00387fe0
    00387fe0loc_387fe0:
    00387fe0ldr x2, [sp+1544]
    00387fe4ldrsb x27, [x2]
    00387fe8add x1, x2, 24
    00387fecstr x1, [sp+920]
    00387ff0add x0, sp, 288
    00387ff4bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16
    00387ff8strb w0, [sp+95]
    00387ffceor x2, x0, 1
    00388000strb w2, [sp+97]
    00388004b 0x38800c
    00388008
    00388008loc_388008:
    00388008b 0x38800c
    0038800c
    0038800cloc_38800c:
    0038800cldrb w3, [sp+97]
    00388010strb w3, [sp+98]
    00388014tbnz w3, 0, 0x38801c
    00388018b 0x388020
    0038801c
    0038801cloc_38801c:
    0038801cb 0x38804c
    00388020
    00388020loc_388020:
    00388020ldr x3, [sp+1544]
    00388024ldrsb x27, [x3]
    00388028add x1, x3, 32
    0038802cstr x1, [sp+912]
    00388030add x0, sp, 288
    00388034orr x2, xzr, 32
    00388038bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadBytes
    0038803cstrb w0, [sp+95]
    00388040eor x3, x0, 1
    00388044strb w3, [sp+98]
    00388048b 0x38804c
    0038804c
    0038804cloc_38804c:
    0038804cldrb w2, [sp+98]
    00388050strb w2, [sp+99]
    00388054tbnz w2, 0, 0x38805c
    00388058b 0x388060
    0038805c
    0038805cloc_38805c:
    0038805cb 0x388088
    00388060
    00388060loc_388060:
    00388060ldr x2, [sp+1544]
    00388064ldrsb x27, [x2]
    00388068add x1, x2, 56
    0038806cstr x1, [sp+904]
    00388070add x0, sp, 288
    00388074bl crypto/tls.readUint8LengthPrefixed
    00388078strb w0, [sp+95]
    0038807ceor x2, x0, 1
    00388080strb w2, [sp+99]
    00388084b 0x388088
    00388088
    00388088loc_388088:
    00388088ldrb w2, [sp+99]
    0038808ctbnz w2, 0, 0x388094
    00388090b 0x3880a8
    00388094
    00388094loc_388094:
    00388094strb wzr, [sp+91]
    00388098mov x0, xzr
    0038809cldp x29, x30, [sp-8]
    003880a0add sp, sp, 1536
    003880a4ret x30
    003880a8
    003880a8loc_3880a8:
    003880a8str xzr, [sp+592]
    003880acadd x27, sp, 600
    003880b0stp xzr, xzr, [x27]
    003880b4add x0, sp, 288
    003880b8add x1, sp, 592
    003880bcbl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    003880c0strb w0, [sp+96]
    003880c4tbnz w0, 0, 0x3880cc
    003880c8b 0x38812c
    003880cc
    003880ccloc_3880cc:
    003880ccadrp x3, 0x6c3000
    003880d0add x3, x3, 1504
    003880d4str x3, [sp+872]
    003880d8b 0x3880dc
    003880dc
    003880dcloc_3880dc:
    003880dcstr x3, [sp+880]
    003880e0add x27, sp, 888
    003880e4stp xzr, xzr, [x27]
    003880e8ldr x4, [sp+1544]
    003880ecldrsb x27, [x4]
    003880f0stp xzr, xzr, [x4+88]
    003880f4adrp x27, 0x6c3000
    003880f8ldr w5, [x27+3056]
    003880fccbz w5, 0x388104
    00388100b 0x388108
    00388104
    00388104loc_388104:
    00388104b 0x388118
    00388108
    00388108loc_388108:
    00388108ldr x5, [x4+80]
    0038810cbl runtime.gcWriteBarrier1
    00388110str x5, [x25]
    00388114b 0x388118
    00388118
    00388118loc_388118:
    00388118str x3, [x4+80]
    0038811cldr x3, [sp+1544]
    00388120ldrsb x27, [x3]
    00388124strb wzr, [x3+280]
    00388128b 0x388140
    0038812c
    0038812cloc_38812c:
    0038812cstrb wzr, [sp+91]
    00388130mov x0, xzr
    00388134ldp x29, x30, [sp-8]
    00388138add sp, sp, 1536
    0038813cret x30
    00388140
    00388140loc_388140:
    00388140ldr x0, [sp+592]
    00388144ldr x1, [sp+600]
    00388148ldr x2, [sp+608]
    0038814cbl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00388150strb w0, [sp+96]
    00388154tbz w0, 0, 0x38815c
    00388158b 0x388248
    0038815c
    0038815cloc_38815c:
    0038815cstrh wzr, [sp+102]
    00388160add x0, sp, 592
    00388164add x1, sp, 102
    00388168bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16
    0038816cstrb w0, [sp+97]
    00388170tbnz w0, 0, 0x388178
    00388174b 0x388234
    00388178
    00388178loc_388178:
    00388178ldrh w5, [sp+102]
    0038817csubs wzr, w5, 255
    00388180b.eq 0x388188
    00388184b 0x38819c
    00388188
    00388188loc_388188:
    00388188ldr x5, [sp+1544]
    0038818cldrsb x27, [x5]
    00388190orr x6, xzr, 1
    00388194strb w6, [x5+280]
    00388198b 0x3881a4
    0038819c
    0038819cloc_38819c:
    0038819corr x6, xzr, 1
    003881a0b 0x3881a4
    003881a4
    003881a4loc_3881a4:
    003881a4ldr x5, [sp+1544]
    003881a8ldrsb x27, [x5]
    003881acldr x2, [x5+96]
    003881b0ldr x0, [x5+80]
    003881b4ldr x5, [x5+88]
    003881b8add x1, x5, 1
    003881bcsubs xzr, x2, x1
    003881c0b.hs 0x3881c8
    003881c4b 0x3881cc
    003881c8
    003881c8loc_3881c8:
    003881c8b 0x3881e4
    003881cc
    003881ccloc_3881cc:
    003881ccorr x3, xzr, 1
    003881d0adrp x4, 0x26d000
    003881d4add x4, x4, 3200
    003881d8bl runtime.growslice
    003881dcorr x6, xzr, 1
    003881e0b 0x3881e4
    003881e4
    003881e4loc_3881e4:
    003881e4ldrh w3, [sp+102]
    003881e8sub x4, x1, 1
    003881ecstrh w3, [x0+x4]
    003881f0ldr x3, [sp+1544]
    003881f4ldrsb x27, [x3]
    003881f8str x1, [x3+88]
    003881fcstr x2, [x3+96]
    00388200adrp x27, 0x6c3000
    00388204ldr w4, [x27+3056]
    00388208cbz w4, 0x388210
    0038820cb 0x388214
    00388210
    00388210loc_388210:
    00388210b 0x388228
    00388214
    00388214loc_388214:
    00388214bl runtime.gcWriteBarrier2
    00388218str x0, [x25]
    0038821cldr x4, [x3+80]
    00388220str x4, [x25+8]
    00388224b 0x388228
    00388228
    00388228loc_388228:
    00388228str x0, [x3+80]
    0038822cb 0x388230
    00388230
    00388230loc_388230:
    00388230b 0x388140
    00388234
    00388234loc_388234:
    00388234strb wzr, [sp+91]
    00388238mov x0, xzr
    0038823cldp x29, x30, [sp-8]
    00388240add sp, sp, 1536
    00388244ret x30
    00388248
    00388248loc_388248:
    00388248ldr x2, [sp+1544]
    0038824cldrsb x27, [x2]
    00388250add x1, x2, 104
    00388254str x1, [sp+864]
    00388258add x0, sp, 288
    0038825cbl crypto/tls.readUint8LengthPrefixed
    00388260strb w0, [sp+96]
    00388264tbnz w0, 0, 0x38826c
    00388268b 0x3883ac
    0038826c
    0038826cloc_38826c:
    0038826cldr x0, [sp+288]
    00388270ldr x1, [sp+296]
    00388274ldr x2, [sp+304]
    00388278bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    0038827cstrb w0, [sp+96]
    00388280tbnz w0, 0, 0x388288
    00388284b 0x38829c
    00388288
    00388288loc_388288:
    00388288orr x0, xzr, 1
    0038828cstrb w0, [sp+91]
    00388290ldp x29, x30, [sp-8]
    00388294add sp, sp, 1536
    00388298ret x30
    0038829c
    0038829cloc_38829c:
    0038829cstr xzr, [sp+496]
    003882a0stp xzr, xzr, [sp+504]
    003882a4add x0, sp, 288
    003882a8add x1, sp, 496
    003882acbl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    003882b0strb w0, [sp+97]
    003882b4eor x2, x0, 1
    003882b8strb w2, [sp+96]
    003882bctbnz w0, 0, 0x3882c4
    003882c0b 0x3882e4
    003882c4
    003882c4loc_3882c4:
    003882c4ldr x0, [sp+288]
    003882c8ldr x1, [sp+296]
    003882ccldr x2, [sp+304]
    003882d0bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    003882d4strb w0, [sp+98]
    003882d8eor x3, x0, 1
    003882dcstrb w3, [sp+96]
    003882e0b 0x3882e8
    003882e4
    003882e4loc_3882e4:
    003882e4b 0x3882e8
    003882e8
    003882e8loc_3882e8:
    003882e8ldrb w1, [sp+96]
    003882ectbnz w1, 0, 0x3882f4
    003882f0b 0x388308
    003882f4
    003882f4loc_3882f4:
    003882f4strb wzr, [sp+91]
    003882f8mov x0, xzr
    003882fcldp x29, x30, [sp-8]
    00388300add sp, sp, 1536
    00388304ret x30
    00388308
    00388308loc_388308:
    00388308add x27, sp, 816
    0038830cstp xzr, xzr, [x27]
    00388310add x27, sp, 832
    00388314stp xzr, xzr, [x27]
    00388318add x27, sp, 848
    0038831cstp xzr, xzr, [x27]
    00388320b 0x388324
    00388324
    00388324loc_388324:
    00388324stp xzr, xzr, [sp+136]
    00388328stp xzr, xzr, [sp+152]
    0038832cstr xzr, [sp+168]
    00388330add x0, sp, 136
    00388334str x0, [sp+808]
    00388338ldrsb x27, [x0]
    0038833corr x1, xzr, 0x8080808080808080
    00388340str x1, [x0]
    00388344add x0, sp, 816
    00388348str x0, [sp+800]
    0038834cldrsb x27, [x0]
    00388350adrp x27, 0x6c3000
    00388354ldr w1, [x27+3056]
    00388358cbz w1, 0x388360
    0038835cb 0x388364
    00388360
    00388360loc_388360:
    00388360b 0x38837c
    00388364
    00388364loc_388364:
    00388364bl runtime.gcWriteBarrier2
    00388368add x1, sp, 136
    0038836cstr x1, [x25]
    00388370ldr x2, [x0+16]
    00388374str x2, [x25+8]
    00388378b 0x38837c
    0038837c
    0038837cloc_38837c:
    0038837cadd x1, sp, 136
    00388380str x1, [x0+16]
    00388384b 0x388388
    00388388
    00388388loc_388388:
    00388388add x0, sp, 816
    0038838cstr x0, [sp+792]
    00388390bl runtime.rand
    00388394ldr x1, [sp+792]
    00388398ldrsb x27, [x1]
    0038839cstr x0, [x1+8]
    003883a0add x0, sp, 816
    003883a4str x0, [sp+280]
    003883a8b 0x3883c0
    003883ac
    003883acloc_3883ac:
    003883acstrb wzr, [sp+91]
    003883b0mov x0, xzr
    003883b4ldp x29, x30, [sp-8]
    003883b8add sp, sp, 1536
    003883bcret x30
    003883c0
    003883c0loc_3883c0:
    003883c0ldr x0, [sp+496]
    003883c4ldr x1, [sp+504]
    003883c8ldr x2, [sp+512]
    003883ccbl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    003883d0strb w0, [sp+97]
    003883d4tbz w0, 0, 0x3883dc
    003883d8b 0x388e5c
    003883dc
    003883dcloc_3883dc:
    003883dcstrh wzr, [sp+108]
    003883e0str xzr, [sp+520]
    003883e4add x27, sp, 528
    003883e8stp xzr, xzr, [x27]
    003883ecadd x0, sp, 496
    003883f0add x1, sp, 108
    003883f4bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16
    003883f8strb w0, [sp+98]
    003883fceor x2, x0, 1
    00388400strb w2, [sp+96]
    00388404tbnz w0, 0, 0x38840c
    00388408b 0x388428
    0038840c
    0038840cloc_38840c:
    0038840cadd x0, sp, 496
    00388410add x1, sp, 520
    00388414bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    00388418strb w0, [sp+99]
    0038841ceor x2, x0, 1
    00388420strb w2, [sp+96]
    00388424b 0x38842c
    00388428
    00388428loc_388428:
    00388428b 0x38842c
    0038842c
    0038842cloc_38842c:
    0038842cldrb w3, [sp+96]
    00388430tbnz w3, 0, 0x388438
    00388434b 0x38844c
    00388438
    00388438loc_388438:
    00388438strb wzr, [sp+91]
    0038843cmov x0, xzr
    00388440ldp x29, x30, [sp-8]
    00388444add sp, sp, 1536
    00388448ret x30
    0038844c
    0038844cloc_38844c:
    0038844cldr x1, [sp+280]
    00388450adrp x0, 0x29c000
    00388454add x0, x0, 3232
    00388458add x2, sp, 108
    0038845cbl runtime.mapaccess1
    00388460ldrb w3, [x0]
    00388464tbnz w3, 0, 0x38846c
    00388468b 0x388480
    0038846c
    0038846cloc_38846c:
    0038846cstrb wzr, [sp+91]
    00388470mov x0, xzr
    00388474ldp x29, x30, [sp-8]
    00388478add sp, sp, 1536
    0038847cret x30
    00388480
    00388480loc_388480:
    00388480ldr x1, [sp+280]
    00388484adrp x0, 0x29c000
    00388488add x0, x0, 3232
    0038848cadd x2, sp, 108
    00388490bl runtime.mapassign
    00388494str x0, [sp+784]
    00388498ldrsb x27, [x0]
    0038849corr x3, xzr, 1
    003884a0strb w3, [x0]
    003884a4ldr x4, [sp+1544]
    003884a8ldrsb x27, [x4]
    003884acldr x2, [x4+568]
    003884b0ldr x0, [x4+552]
    003884b4ldr x4, [x4+560]
    003884b8add x1, x4, 1
    003884bcsubs xzr, x2, x1
    003884c0b.hs 0x3884c8
    003884c4b 0x3884cc
    003884c8
    003884c8loc_3884c8:
    003884c8b 0x3884e4
    003884cc
    003884ccloc_3884cc:
    003884ccorr x3, xzr, 1
    003884d0adrp x4, 0x26d000
    003884d4add x4, x4, 3200
    003884d8bl runtime.growslice
    003884dcorr x3, xzr, 1
    003884e0b 0x3884e4
    003884e4
    003884e4loc_3884e4:
    003884e4ldrh w4, [sp+108]
    003884e8sub x5, x1, 1
    003884ecstrh w4, [x0+x5]
    003884f0ldr x4, [sp+1544]
    003884f4ldrsb x27, [x4]
    003884f8str x1, [x4+560]
    003884fcstr x2, [x4+568]
    00388500adrp x27, 0x6c3000
    00388504ldr w5, [x27+3056]
    00388508cbz w5, 0x388510
    0038850cb 0x388514
    00388510
    00388510loc_388510:
    00388510b 0x388528
    00388514
    00388514loc_388514:
    00388514bl runtime.gcWriteBarrier2
    00388518str x0, [x25]
    0038851cldr x5, [x4+552]
    00388520str x5, [x25+8]
    00388524b 0x388528
    00388528
    00388528loc_388528:
    00388528str x0, [x4+552]
    0038852cldrh w4, [sp+108]
    00388530strh w4, [sp+118]
    00388534mov x5, x4
    00388538subs wzr, w5, 35
    0038853cb.ls 0x388544
    00388540b 0x388978
    00388544
    00388544loc_388544:
    00388544mov x5, x4
    00388548subs wzr, w5, 11
    0038854cb.ls 0x388554
    00388550b 0x3887c4
    00388554
    00388554loc_388554:
    00388554mov x5, x4
    00388558subs wzr, w5, 5
    0038855cb.ls 0x388564
    00388560b 0x3886b0
    00388564
    00388564loc_388564:
    00388564mov x5, x4
    00388568cbz w5, 0x388570
    0038856cb 0x3885e0
    00388570
    00388570loc_388570:
    00388570b 0x388574
    00388574
    00388574loc_388574:
    00388574str xzr, [sp+392]
    00388578stp xzr, xzr, [sp+400]
    0038857cadd x0, sp, 520
    00388580add x1, sp, 392
    00388584bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    00388588strb w0, [sp+96]
    0038858ceor x2, x0, 1
    00388590strb w2, [sp+98]
    00388594tbnz w0, 0, 0x38859c
    00388598b 0x3885b8
    0038859c
    0038859cloc_38859c:
    0038859cldr x0, [sp+392]
    003885a0ldr x1, [sp+400]
    003885a4ldr x2, [sp+408]
    003885a8bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    003885acstrb w0, [sp+99]
    003885b0strb w0, [sp+98]
    003885b4b 0x3885bc
    003885b8
    003885b8loc_3885b8:
    003885b8b 0x3885bc
    003885bc
    003885bcloc_3885bc:
    003885bcldrb w3, [sp+98]
    003885c0tbnz w3, 0, 0x3885c8
    003885c4b 0x3885dc
    003885c8
    003885c8loc_3885c8:
    003885c8strb wzr, [sp+91]
    003885ccmov x0, xzr
    003885d0ldp x29, x30, [sp-8]
    003885d4add sp, sp, 1536
    003885d8ret x30
    003885dc
    003885dcloc_3885dc:
    003885dcb 0x389874
    003885e0
    003885e0loc_3885e0:
    003885e0subs wzr, w4, 5
    003885e4b.eq 0x3885ec
    003885e8b 0x3886a8
    003885ec
    003885ecloc_3885ec:
    003885ecb 0x3885f0
    003885f0
    003885f0loc_3885f0:
    003885f0strb wzr, [sp+92]
    003885f4str xzr, [sp+448]
    003885f8stp xzr, xzr, [sp+456]
    003885fcadd x0, sp, 520
    00388600add x1, sp, 92
    00388604bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint8
    00388608strb w0, [sp+99]
    0038860ceor x2, x0, 1
    00388610strb w2, [sp+95]
    00388614tbnz w0, 0, 0x38861c
    00388618b 0x388638
    0038861c
    0038861cloc_38861c:
    0038861cadd x0, sp, 520
    00388620add x1, sp, 448
    00388624bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    00388628strb w0, [sp+98]
    0038862ceor x2, x0, 1
    00388630strb w2, [sp+95]
    00388634b 0x38863c
    00388638
    00388638loc_388638:
    00388638b 0x38863c
    0038863c
    0038863cloc_38863c:
    0038863cldrb w3, [sp+95]
    00388640strb w3, [sp+96]
    00388644tbnz w3, 0, 0x38864c
    00388648b 0x388650
    0038864c
    0038864cloc_38864c:
    0038864cb 0x38866c
    00388650
    00388650loc_388650:
    00388650add x0, sp, 520
    00388654add x1, sp, 448
    00388658bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    0038865cstrb w0, [sp+98]
    00388660eor x2, x0, 1
    00388664strb w2, [sp+96]
    00388668b 0x38866c
    0038866c
    0038866cloc_38866c:
    0038866cldrb w3, [sp+96]
    00388670tbnz w3, 0, 0x388678
    00388674b 0x38868c
    00388678
    00388678loc_388678:
    00388678strb wzr, [sp+91]
    0038867cmov x0, xzr
    00388680ldp x29, x30, [sp-8]
    00388684add sp, sp, 1536
    00388688ret x30
    0038868c
    0038868cloc_38868c:
    0038868cldr x3, [sp+1544]
    00388690ldrsb x27, [x3]
    00388694ldrb w4, [sp+92]
    00388698subs wzr, w4, 1
    0038869ccset x4, eq
    003886a0strb w4, [x3+144]
    003886a4b 0x388e74
    003886a8
    003886a8loc_3886a8:
    003886a8b 0x3886ac
    003886ac
    003886acloc_3886ac:
    003886acb 0x3887c0
    003886b0
    003886b0loc_3886b0:
    003886b0mov x5, x4
    003886b4subs wzr, w5, 10
    003886b8b.eq 0x3886c0
    003886bcb 0x388734
    003886c0
    003886c0loc_3886c0:
    003886c0b 0x3886c4
    003886c4
    003886c4loc_3886c4:
    003886c4str xzr, [sp+544]
    003886c8add x27, sp, 552
    003886ccstp xzr, xzr, [x27]
    003886d0add x0, sp, 520
    003886d4add x1, sp, 544
    003886d8bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    003886dcstrb w0, [sp+95]
    003886e0eor x2, x0, 1
    003886e4strb w2, [sp+99]
    003886e8tbnz w0, 0, 0x3886f0
    003886ecb 0x38870c
    003886f0
    003886f0loc_3886f0:
    003886f0ldr x0, [sp+544]
    003886f4ldr x1, [sp+552]
    003886f8ldr x2, [sp+560]
    003886fcbl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00388700strb w0, [sp+96]
    00388704strb w0, [sp+99]
    00388708b 0x388710
    0038870c
    0038870cloc_38870c:
    0038870cb 0x388710
    00388710
    00388710loc_388710:
    00388710ldrb w3, [sp+99]
    00388714tbnz w3, 0, 0x38871c
    00388718b 0x388730
    0038871c
    0038871cloc_38871c:
    0038871cstrb wzr, [sp+91]
    00388720mov x0, xzr
    00388724ldp x29, x30, [sp-8]
    00388728add sp, sp, 1536
    0038872cret x30
    00388730
    00388730loc_388730:
    00388730b 0x389790
    00388734
    00388734loc_388734:
    00388734subs wzr, w4, 11
    00388738b.eq 0x388740
    0038873cb 0x3887b8
    00388740
    00388740loc_388740:
    00388740b 0x388744
    00388744
    00388744loc_388744:
    00388744ldr x2, [sp+1544]
    00388748ldrsb x27, [x2]
    0038874cadd x1, x2, 176
    00388750str x1, [sp+760]
    00388754add x0, sp, 520
    00388758bl crypto/tls.readUint8LengthPrefixed
    0038875cstrb w0, [sp+99]
    00388760eor x2, x0, 1
    00388764strb w2, [sp+95]
    00388768tbnz w0, 0, 0x388770
    0038876cb 0x388790
    00388770
    00388770loc_388770:
    00388770ldr x3, [sp+1544]
    00388774ldrsb x27, [x3]
    00388778ldr x3, [x3+184]
    0038877cstr x3, [sp+176]
    00388780subs xzr, x3, 0
    00388784cset x3, eq
    00388788strb w3, [sp+95]
    0038878cb 0x388794
    00388790
    00388790loc_388790:
    00388790b 0x388794
    00388794
    00388794loc_388794:
    00388794ldrb w3, [sp+95]
    00388798tbnz w3, 0, 0x3887a0
    0038879cb 0x3887b4
    003887a0
    003887a0loc_3887a0:
    003887a0strb wzr, [sp+91]
    003887a4mov x0, xzr
    003887a8ldp x29, x30, [sp-8]
    003887acadd sp, sp, 1536
    003887b0ret x30
    003887b4
    003887b4loc_3887b4:
    003887b4b 0x388e74
    003887b8
    003887b8loc_3887b8:
    003887b8b 0x3887bc
    003887bc
    003887bcloc_3887bc:
    003887bcb 0x3887c0
    003887c0
    003887c0loc_3887c0:
    003887c0b 0x388974
    003887c4
    003887c4loc_3887c4:
    003887c4mov x5, x4
    003887c8subs wzr, w5, 16
    003887ccb.ls 0x3887d4
    003887d0b 0x3888d8
    003887d4
    003887d4loc_3887d4:
    003887d4mov x5, x4
    003887d8subs wzr, w5, 13
    003887dcb.eq 0x3887e4
    003887e0b 0x388854
    003887e4
    003887e4loc_3887e4:
    003887e4b 0x3887e8
    003887e8
    003887e8loc_3887e8:
    003887e8str xzr, [sp+232]
    003887ecstp xzr, xzr, [sp+240]
    003887f0add x0, sp, 520
    003887f4add x1, sp, 232
    003887f8bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    003887fcstrb w0, [sp+95]
    00388800eor x2, x0, 1
    00388804strb w2, [sp+99]
    00388808tbnz w0, 0, 0x388810
    0038880cb 0x38882c
    00388810
    00388810loc_388810:
    00388810ldr x0, [sp+232]
    00388814ldr x1, [sp+240]
    00388818ldr x2, [sp+248]
    0038881cbl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00388820strb w0, [sp+96]
    00388824strb w0, [sp+99]
    00388828b 0x388830
    0038882c
    0038882cloc_38882c:
    0038882cb 0x388830
    00388830
    00388830loc_388830:
    00388830ldrb w3, [sp+99]
    00388834tbnz w3, 0, 0x38883c
    00388838b 0x388850
    0038883c
    0038883cloc_38883c:
    0038883cstrb wzr, [sp+91]
    00388840mov x0, xzr
    00388844ldp x29, x30, [sp-8]
    00388848add sp, sp, 1536
    0038884cret x30
    00388850
    00388850loc_388850:
    00388850b 0x3896ac
    00388854
    00388854loc_388854:
    00388854subs wzr, w4, 16
    00388858b.eq 0x388860
    0038885cb 0x3888d0
    00388860
    00388860loc_388860:
    00388860b 0x388864
    00388864
    00388864loc_388864:
    00388864str xzr, [sp+344]
    00388868stp xzr, xzr, [sp+352]
    0038886cadd x0, sp, 520
    00388870add x1, sp, 344
    00388874bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    00388878strb w0, [sp+95]
    0038887ceor x2, x0, 1
    00388880strb w2, [sp+99]
    00388884tbnz w0, 0, 0x38888c
    00388888b 0x3888a8
    0038888c
    0038888cloc_38888c:
    0038888cldr x0, [sp+344]
    00388890ldr x1, [sp+352]
    00388894ldr x2, [sp+360]
    00388898bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    0038889cstrb w0, [sp+96]
    003888a0strb w0, [sp+99]
    003888a4b 0x3888ac
    003888a8
    003888a8loc_3888a8:
    003888a8b 0x3888ac
    003888ac
    003888acloc_3888ac:
    003888acldrb w3, [sp+99]
    003888b0tbnz w3, 0, 0x3888b8
    003888b4b 0x3888cc
    003888b8
    003888b8loc_3888b8:
    003888b8strb wzr, [sp+91]
    003888bcmov x0, xzr
    003888c0ldp x29, x30, [sp-8]
    003888c4add sp, sp, 1536
    003888c8ret x30
    003888cc
    003888ccloc_3888cc:
    003888ccb 0x389548
    003888d0
    003888d0loc_3888d0:
    003888d0b 0x3888d4
    003888d4
    003888d4loc_3888d4:
    003888d4b 0x388970
    003888d8
    003888d8loc_3888d8:
    003888d8mov x5, x4
    003888dcsubs wzr, w5, 18
    003888e0b.eq 0x3888e8
    003888e4b 0x3888fc
    003888e8
    003888e8loc_3888e8:
    003888e8b 0x3888ec
    003888ec
    003888ecloc_3888ec:
    003888ecldr x4, [sp+1544]
    003888f0ldrsb x27, [x4]
    003888f4strb w3, [x4+344]
    003888f8b 0x388e74
    003888fc
    003888fcloc_3888fc:
    003888fcmov x5, x4
    00388900subs wzr, w5, 23
    00388904b.eq 0x38890c
    00388908b 0x388920
    0038890c
    0038890cloc_38890c:
    0038890cb 0x388910
    00388910
    00388910loc_388910:
    00388910ldr x4, [sp+1544]
    00388914ldrsb x27, [x4]
    00388918strb w3, [x4+312]
    0038891cb 0x388e74
    00388920
    00388920loc_388920:
    00388920subs wzr, w4, 35
    00388924b.eq 0x38892c
    00388928b 0x388964
    0038892c
    0038892cloc_38892c:
    0038892cb 0x388930
    00388930
    00388930loc_388930:
    00388930ldr x4, [sp+1544]
    00388934ldrsb x27, [x4]
    00388938strb w3, [x4+200]
    0038893cldr x3, [sp+528]
    00388940str x3, [sp+176]
    00388944ldr x3, [sp+1544]
    00388948ldrsb x27, [x3]
    0038894cadd x1, x3, 208
    00388950str x1, [sp+752]
    00388954ldr x2, [sp+176]
    00388958add x0, sp, 520
    0038895cbl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadBytes
    00388960b 0x388e74
    00388964
    00388964loc_388964:
    00388964b 0x388968
    00388968
    00388968loc_388968:
    00388968b 0x38896c
    0038896c
    0038896cloc_38896c:
    0038896cb 0x388970
    00388970
    00388970loc_388970:
    00388970b 0x388974
    00388974
    00388974loc_388974:
    00388974b 0x388e54
    00388978
    00388978loc_388978:
    00388978mov x5, x4
    0038897csubs wzr, w5, 45
    00388980b.ls 0x388988
    00388984b 0x388bd4
    00388988
    00388988loc_388988:
    00388988mov x5, x4
    0038898csubs wzr, w5, 42
    00388990b.ls 0x388998
    00388994b 0x388a70
    00388998
    00388998loc_388998:
    00388998mov x5, x4
    0038899csubs wzr, w5, 41
    003889a0b.eq 0x3889a8
    003889a4b 0x388a48
    003889a8
    003889a8loc_3889a8:
    003889a8b 0x3889ac
    003889ac
    003889acloc_3889ac:
    003889acldr x0, [sp+496]
    003889b0ldr x1, [sp+504]
    003889b4ldr x2, [sp+512]
    003889b8bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    003889bcstrb w0, [sp+95]
    003889c0tbnz w0, 0, 0x3889c8
    003889c4b 0x388a34
    003889c8
    003889c8loc_3889c8:
    003889c8str xzr, [sp+472]
    003889ccstp xzr, xzr, [sp+480]
    003889d0add x0, sp, 520
    003889d4add x1, sp, 472
    003889d8bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    003889dcstrb w0, [sp+98]
    003889e0eor x2, x0, 1
    003889e4strb w2, [sp+95]
    003889e8tbnz w0, 0, 0x3889f0
    003889ecb 0x388a0c
    003889f0
    003889f0loc_3889f0:
    003889f0ldr x0, [sp+472]
    003889f4ldr x1, [sp+480]
    003889f8ldr x2, [sp+488]
    003889fcbl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00388a00strb w0, [sp+99]
    00388a04strb w0, [sp+95]
    00388a08b 0x388a10
    00388a0c
    00388a0cloc_388a0c:
    00388a0cb 0x388a10
    00388a10
    00388a10loc_388a10:
    00388a10ldrb w3, [sp+95]
    00388a14tbnz w3, 0, 0x388a1c
    00388a18b 0x388a30
    00388a1c
    00388a1cloc_388a1c:
    00388a1cstrb wzr, [sp+91]
    00388a20mov x0, xzr
    00388a24ldp x29, x30, [sp-8]
    00388a28add sp, sp, 1536
    00388a2cret x30
    00388a30
    00388a30loc_388a30:
    00388a30b 0x3891f8
    00388a34
    00388a34loc_388a34:
    00388a34strb wzr, [sp+91]
    00388a38mov x0, xzr
    00388a3cldp x29, x30, [sp-8]
    00388a40add sp, sp, 1536
    00388a44ret x30
    00388a48
    00388a48loc_388a48:
    00388a48subs wzr, w4, 42
    00388a4cb.eq 0x388a54
    00388a50b 0x388a68
    00388a54
    00388a54loc_388a54:
    00388a54b 0x388a58
    00388a58
    00388a58loc_388a58:
    00388a58ldr x4, [sp+1544]
    00388a5cldrsb x27, [x4]
    00388a60strb w3, [x4+424]
    00388a64b 0x388e74
    00388a68
    00388a68loc_388a68:
    00388a68b 0x388a6c
    00388a6c
    00388a6cloc_388a6c:
    00388a6cb 0x388bd0
    00388a70
    00388a70loc_388a70:
    00388a70mov x5, x4
    00388a74subs wzr, w5, 43
    00388a78b.eq 0x388a80
    00388a7cb 0x388af0
    00388a80
    00388a80loc_388a80:
    00388a80b 0x388a84
    00388a84
    00388a84loc_388a84:
    00388a84str xzr, [sp+184]
    00388a88stp xzr, xzr, [sp+192]
    00388a8cadd x0, sp, 520
    00388a90add x1, sp, 184
    00388a94bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint8LengthPrefixed
    00388a98strb w0, [sp+96]
    00388a9ceor x2, x0, 1
    00388aa0strb w2, [sp+95]
    00388aa4tbnz w0, 0, 0x388aac
    00388aa8b 0x388ac8
    00388aac
    00388aacloc_388aac:
    00388aacldr x0, [sp+184]
    00388ab0ldr x1, [sp+192]
    00388ab4ldr x2, [sp+200]
    00388ab8bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00388abcstrb w0, [sp+99]
    00388ac0strb w0, [sp+95]
    00388ac4b 0x388acc
    00388ac8
    00388ac8loc_388ac8:
    00388ac8b 0x388acc
    00388acc
    00388accloc_388acc:
    00388accldrb w3, [sp+95]
    00388ad0tbnz w3, 0, 0x388ad8
    00388ad4b 0x388aec
    00388ad8
    00388ad8loc_388ad8:
    00388ad8strb wzr, [sp+91]
    00388adcmov x0, xzr
    00388ae0ldp x29, x30, [sp-8]
    00388ae4add sp, sp, 1536
    00388ae8ret x30
    00388aec
    00388aecloc_388aec:
    00388aecb 0x38911c
    00388af0
    00388af0loc_388af0:
    00388af0mov x5, x4
    00388af4subs wzr, w5, 44
    00388af8b.eq 0x388b00
    00388afcb 0x388b78
    00388b00
    00388b00loc_388b00:
    00388b00b 0x388b04
    00388b04
    00388b04loc_388b04:
    00388b04ldr x2, [sp+1544]
    00388b08ldrsb x27, [x2]
    00388b0cadd x1, x2, 376
    00388b10str x1, [sp+720]
    00388b14add x0, sp, 520
    00388b18bl crypto/tls.readUint16LengthPrefixed
    00388b1cstrb w0, [sp+95]
    00388b20eor x2, x0, 1
    00388b24strb w2, [sp+96]
    00388b28tbnz w0, 0, 0x388b30
    00388b2cb 0x388b50
    00388b30
    00388b30loc_388b30:
    00388b30ldr x3, [sp+1544]
    00388b34ldrsb x27, [x3]
    00388b38ldr x3, [x3+384]
    00388b3cstr x3, [sp+176]
    00388b40subs xzr, x3, 0
    00388b44cset x3, eq
    00388b48strb w3, [sp+96]
    00388b4cb 0x388b54
    00388b50
    00388b50loc_388b50:
    00388b50b 0x388b54
    00388b54
    00388b54loc_388b54:
    00388b54ldrb w3, [sp+96]
    00388b58tbnz w3, 0, 0x388b60
    00388b5cb 0x388b74
    00388b60
    00388b60loc_388b60:
    00388b60strb wzr, [sp+91]
    00388b64mov x0, xzr
    00388b68ldp x29, x30, [sp-8]
    00388b6cadd sp, sp, 1536
    00388b70ret x30
    00388b74
    00388b74loc_388b74:
    00388b74b 0x388e74
    00388b78
    00388b78loc_388b78:
    00388b78subs wzr, w4, 45
    00388b7cb.eq 0x388b84
    00388b80b 0x388bc4
    00388b84
    00388b84loc_388b84:
    00388b84b 0x388b88
    00388b88
    00388b88loc_388b88:
    00388b88ldr x2, [sp+1544]
    00388b8cldrsb x27, [x2]
    00388b90add x1, x2, 432
    00388b94str x1, [sp+712]
    00388b98add x0, sp, 520
    00388b9cbl crypto/tls.readUint8LengthPrefixed
    00388ba0strb w0, [sp+95]
    00388ba4tbnz w0, 0, 0x388bac
    00388ba8b 0x388bb0
    00388bac
    00388bacloc_388bac:
    00388bacb 0x388e74
    00388bb0
    00388bb0loc_388bb0:
    00388bb0strb wzr, [sp+91]
    00388bb4mov x0, xzr
    00388bb8ldp x29, x30, [sp-8]
    00388bbcadd sp, sp, 1536
    00388bc0ret x30
    00388bc4
    00388bc4loc_388bc4:
    00388bc4b 0x388bc8
    00388bc8
    00388bc8loc_388bc8:
    00388bc8b 0x388bcc
    00388bcc
    00388bccloc_388bcc:
    00388bccb 0x388bd0
    00388bd0
    00388bd0loc_388bd0:
    00388bd0b 0x388e50
    00388bd4
    00388bd4loc_388bd4:
    00388bd4mov x5, x4
    00388bd8subs wzr, w5, 51
    00388bdcb.ls 0x388be4
    00388be0b 0x388cb8
    00388be4
    00388be4loc_388be4:
    00388be4mov x5, x4
    00388be8subs wzr, w5, 50
    00388becb.eq 0x388bf4
    00388bf0b 0x388c64
    00388bf4
    00388bf4loc_388bf4:
    00388bf4b 0x388bf8
    00388bf8
    00388bf8loc_388bf8:
    00388bf8str xzr, [sp+208]
    00388bfcstp xzr, xzr, [sp+216]
    00388c00add x0, sp, 520
    00388c04add x1, sp, 208
    00388c08bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    00388c0cstrb w0, [sp+99]
    00388c10eor x2, x0, 1
    00388c14strb w2, [sp+95]
    00388c18tbnz w0, 0, 0x388c20
    00388c1cb 0x388c3c
    00388c20
    00388c20loc_388c20:
    00388c20ldr x0, [sp+208]
    00388c24ldr x1, [sp+216]
    00388c28ldr x2, [sp+224]
    00388c2cbl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00388c30strb w0, [sp+96]
    00388c34strb w0, [sp+95]
    00388c38b 0x388c40
    00388c3c
    00388c3cloc_388c3c:
    00388c3cb 0x388c40
    00388c40
    00388c40loc_388c40:
    00388c40ldrb w3, [sp+95]
    00388c44tbnz w3, 0, 0x388c4c
    00388c48b 0x388c60
    00388c4c
    00388c4cloc_388c4c:
    00388c4cstrb wzr, [sp+91]
    00388c50mov x0, xzr
    00388c54ldp x29, x30, [sp-8]
    00388c58add sp, sp, 1536
    00388c5cret x30
    00388c60
    00388c60loc_388c60:
    00388c60b 0x389038
    00388c64
    00388c64loc_388c64:
    00388c64subs wzr, w4, 51
    00388c68b.eq 0x388c70
    00388c6cb 0x388cb0
    00388c70
    00388c70loc_388c70:
    00388c70b 0x388c74
    00388c74
    00388c74loc_388c74:
    00388c74str xzr, [sp+568]
    00388c78add x27, sp, 576
    00388c7cstp xzr, xzr, [x27]
    00388c80add x0, sp, 520
    00388c84add x1, sp, 568
    00388c88bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    00388c8cstrb w0, [sp+95]
    00388c90tbnz w0, 0, 0x388c98
    00388c94b 0x388c9c
    00388c98
    00388c98loc_388c98:
    00388c98b 0x388eac
    00388c9c
    00388c9cloc_388c9c:
    00388c9cstrb wzr, [sp+91]
    00388ca0mov x0, xzr
    00388ca4ldp x29, x30, [sp-8]
    00388ca8add sp, sp, 1536
    00388cacret x30
    00388cb0
    00388cb0loc_388cb0:
    00388cb0b 0x388cb4
    00388cb4
    00388cb4loc_388cb4:
    00388cb4b 0x388e4c
    00388cb8
    00388cb8loc_388cb8:
    00388cb8mov x5, x4
    00388cbcsubs wzr, w5, 57
    00388cc0b.eq 0x388cc8
    00388cc4b 0x388d80
    00388cc8
    00388cc8loc_388cc8:
    00388cc8b 0x388ccc
    00388ccc
    00388cccloc_388ccc:
    00388cccldr x2, [sp+528]
    00388cd0str x2, [sp+176]
    00388cd4adrp x0, 0x26d000
    00388cd8add x0, x0, 3072
    00388cdcmov x1, x2
    00388ce0bl runtime.makeslice
    00388ce4ldr x3, [sp+176]
    00388ce8ldr x4, [sp+176]
    00388cecstr x0, [sp+1504]
    00388cf0str x3, [sp+1512]
    00388cf4str x4, [sp+1520]
    00388cf8ldr x5, [sp+1544]
    00388cfcldrsb x27, [x5]
    00388d00str x3, [x5+512]
    00388d04str x4, [x5+520]
    00388d08adrp x27, 0x6c3000
    00388d0cldr w3, [x27+3056]
    00388d10cbz w3, 0x388d18
    00388d14b 0x388d1c
    00388d18
    00388d18loc_388d18:
    00388d18b 0x388d30
    00388d1c
    00388d1cloc_388d1c:
    00388d1cbl runtime.gcWriteBarrier2
    00388d20str x0, [x25]
    00388d24ldr x4, [x5+504]
    00388d28str x4, [x25+8]
    00388d2cb 0x388d30
    00388d30
    00388d30loc_388d30:
    00388d30str x0, [x5+504]
    00388d34ldr x4, [sp+1544]
    00388d38ldrsb x27, [x4]
    00388d3cldr x1, [x4+504]
    00388d40ldr x2, [x4+512]
    00388d44ldr x3, [x4+520]
    00388d48str x1, [sp+688]
    00388d4cstr x2, [sp+696]
    00388d50str x3, [sp+704]
    00388d54add x0, sp, 520
    00388d58bl vendor/golang.org/x/crypto/cryptobyte.(*String).CopyBytes
    00388d5cstrb w0, [sp+95]
    00388d60tbnz w0, 0, 0x388d68
    00388d64b 0x388d6c
    00388d68
    00388d68loc_388d68:
    00388d68b 0x388e74
    00388d6c
    00388d6cloc_388d6c:
    00388d6cstrb wzr, [sp+91]
    00388d70mov x0, xzr
    00388d74ldp x29, x30, [sp-8]
    00388d78add sp, sp, 1536
    00388d7cret x30
    00388d80
    00388d80loc_388d80:
    00388d80mov x5, x4
    00388d84movz x6, 65037
    00388d88subs wzr, w5, w6
    00388d8cb.eq 0x388d94
    00388d90b 0x388de0
    00388d94
    00388d94loc_388d94:
    00388d94b 0x388d98
    00388d98
    00388d98loc_388d98:
    00388d98ldr x3, [sp+528]
    00388d9cstr x3, [sp+176]
    00388da0ldr x3, [sp+1544]
    00388da4ldrsb x27, [x3]
    00388da8add x1, x3, 528
    00388dacstr x1, [sp+680]
    00388db0ldr x2, [sp+176]
    00388db4add x0, sp, 520
    00388db8bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadBytes
    00388dbcstrb w0, [sp+96]
    00388dc0tbnz w0, 0, 0x388dc8
    00388dc4b 0x388dcc
    00388dc8
    00388dc8loc_388dc8:
    00388dc8b 0x388e74
    00388dcc
    00388dccloc_388dcc:
    00388dccstrb wzr, [sp+91]
    00388dd0mov x0, xzr
    00388dd4ldp x29, x30, [sp-8]
    00388dd8add sp, sp, 1536
    00388ddcret x30
    00388de0
    00388de0loc_388de0:
    00388de0movz x5, 65281
    00388de4subs wzr, w4, w5
    00388de8b.eq 0x388df0
    00388decb 0x388e40
    00388df0
    00388df0loc_388df0:
    00388df0b 0x388df4
    00388df4
    00388df4loc_388df4:
    00388df4ldr x2, [sp+1544]
    00388df8ldrsb x27, [x2]
    00388dfcadd x1, x2, 288
    00388e00str x1, [sp+744]
    00388e04add x0, sp, 520
    00388e08bl crypto/tls.readUint8LengthPrefixed
    00388e0cstrb w0, [sp+99]
    00388e10tbnz w0, 0, 0x388e18
    00388e14b 0x388e2c
    00388e18
    00388e18loc_388e18:
    00388e18ldr x3, [sp+1544]
    00388e1cldrsb x27, [x3]
    00388e20orr x4, xzr, 1
    00388e24strb w4, [x3+280]
    00388e28b 0x388e74
    00388e2c
    00388e2cloc_388e2c:
    00388e2cstrb wzr, [sp+91]
    00388e30mov x0, xzr
    00388e34ldp x29, x30, [sp-8]
    00388e38add sp, sp, 1536
    00388e3cret x30
    00388e40
    00388e40loc_388e40:
    00388e40b 0x388e44
    00388e44
    00388e44loc_388e44:
    00388e44b 0x388e48
    00388e48
    00388e48loc_388e48:
    00388e48b 0x388e4c
    00388e4c
    00388e4cloc_388e4c:
    00388e4cb 0x388e50
    00388e50
    00388e50loc_388e50:
    00388e50b 0x388e54
    00388e54
    00388e54loc_388e54:
    00388e54b 0x388e58
    00388e58
    00388e58loc_388e58:
    00388e58b 0x388e70
    00388e5c
    00388e5cloc_388e5c:
    00388e5corr x0, xzr, 1
    00388e60strb w0, [sp+91]
    00388e64ldp x29, x30, [sp-8]
    00388e68add sp, sp, 1536
    00388e6cret x30
    00388e70
    00388e70loc_388e70:
    00388e70b 0x3883c0
    00388e74
    00388e74loc_388e74:
    00388e74ldr x0, [sp+520]
    00388e78ldr x1, [sp+528]
    00388e7cldr x2, [sp+536]
    00388e80bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00388e84strb w0, [sp+96]
    00388e88tbnz w0, 0, 0x388e90
    00388e8cb 0x388e98
    00388e90
    00388e90loc_388e90:
    00388e90orr x3, xzr, 1
    00388e94b 0x388e70
    00388e98
    00388e98loc_388e98:
    00388e98strb wzr, [sp+91]
    00388e9cmov x0, xzr
    00388ea0ldp x29, x30, [sp-8]
    00388ea4add sp, sp, 1536
    00388ea8ret x30
    00388eac
    00388eacloc_388eac:
    00388eacldr x0, [sp+568]
    00388eb0ldr x1, [sp+576]
    00388eb4ldr x2, [sp+584]
    00388eb8bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00388ebcstrb w0, [sp+95]
    00388ec0tbz w0, 0, 0x388ec8
    00388ec4b 0x389034
    00388ec8
    00388ec8loc_388ec8:
    00388ec8strh wzr, [sp+416]
    00388eccstr xzr, [sp+424]
    00388ed0stp xzr, xzr, [sp+432]
    00388ed4add x0, sp, 568
    00388ed8add x1, sp, 416
    00388edcbl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16
    00388ee0strb w0, [sp+98]
    00388ee4eor x2, x0, 1
    00388ee8strb w2, [sp+99]
    00388eectbnz w0, 0, 0x388ef4
    00388ef0b 0x388f10
    00388ef4
    00388ef4loc_388ef4:
    00388ef4add x0, sp, 568
    00388ef8add x1, sp, 424
    00388efcbl crypto/tls.readUint16LengthPrefixed
    00388f00strb w0, [sp+94]
    00388f04eor x2, x0, 1
    00388f08strb w2, [sp+99]
    00388f0cb 0x388f14
    00388f10
    00388f10loc_388f10:
    00388f10b 0x388f14
    00388f14
    00388f14loc_388f14:
    00388f14ldrb w5, [sp+99]
    00388f18strb w5, [sp+96]
    00388f1ctbnz w5, 0, 0x388f24
    00388f20b 0x388f28
    00388f24
    00388f24loc_388f24:
    00388f24b 0x388f40
    00388f28
    00388f28loc_388f28:
    00388f28ldr x5, [sp+432]
    00388f2cstr x5, [sp+176]
    00388f30subs xzr, x5, 0
    00388f34cset x5, eq
    00388f38strb w5, [sp+96]
    00388f3cb 0x388f40
    00388f40
    00388f40loc_388f40:
    00388f40ldrb w5, [sp+96]
    00388f44tbnz w5, 0, 0x388f4c
    00388f48b 0x388f60
    00388f4c
    00388f4cloc_388f4c:
    00388f4cstrb wzr, [sp+91]
    00388f50mov x0, xzr
    00388f54ldp x29, x30, [sp-8]
    00388f58add sp, sp, 1536
    00388f5cret x30
    00388f60
    00388f60loc_388f60:
    00388f60ldr x5, [sp+1544]
    00388f64ldrsb x27, [x5]
    00388f68ldr x2, [x5+416]
    00388f6cldr x0, [x5+400]
    00388f70ldr x5, [x5+408]
    00388f74add x1, x5, 1
    00388f78subs xzr, x2, x1
    00388f7cb.hs 0x388f84
    00388f80b 0x388f88
    00388f84
    00388f84loc_388f84:
    00388f84b 0x388f9c
    00388f88
    00388f88loc_388f88:
    00388f88orr x3, xzr, 1
    00388f8cadrp x4, 0x2ba000
    00388f90add x4, x4, 3232
    00388f94bl runtime.growslice
    00388f98b 0x388f9c
    00388f9c
    00388f9cloc_388f9c:
    00388f9cldr x3, [sp+424]
    00388fa0ldrh w4, [sp+416]
    00388fa4ldr x5, [sp+432]
    00388fa8ldr x6, [sp+440]
    00388facsub x7, x1, 1
    00388fb0add x8, x0, x7, lsl #5
    00388fb4ubfm x7, x7, 59, 58
    00388fb8strh w4, [x0+x7]
    00388fbcstr x5, [x8+16]
    00388fc0str x6, [x8+24]
    00388fc4adrp x27, 0x6c3000
    00388fc8ldr w4, [x27+3056]
    00388fcccbz w4, 0x388fd4
    00388fd0b 0x388fd8
    00388fd4
    00388fd4loc_388fd4:
    00388fd4b 0x388fec
    00388fd8
    00388fd8loc_388fd8:
    00388fd8bl runtime.gcWriteBarrier2
    00388fdcstr x3, [x25]
    00388fe0ldr x4, [x8+8]
    00388fe4str x4, [x25+8]
    00388fe8b 0x388fec
    00388fec
    00388fecloc_388fec:
    00388fecstr x3, [x8+8]
    00388ff0ldr x3, [sp+1544]
    00388ff4ldrsb x27, [x3]
    00388ff8str x1, [x3+408]
    00388ffcstr x2, [x3+416]
    00389000adrp x27, 0x6c2000
    00389004ldr w4, [x27+3056]
    00389008cbz w4, 0x389010
    0038900cb 0x389014
    00389010
    00389010loc_389010:
    00389010b 0x389028
    00389014
    00389014loc_389014:
    00389014bl runtime.gcWriteBarrier2
    00389018str x0, [x25]
    0038901cldr x4, [x3+400]
    00389020str x4, [x25+8]
    00389024b 0x389028
    00389028
    00389028loc_389028:
    00389028str x0, [x3+400]
    0038902cb 0x389030
    00389030
    00389030loc_389030:
    00389030b 0x388eac
    00389034
    00389034loc_389034:
    00389034b 0x388e74
    00389038
    00389038loc_389038:
    00389038ldr x0, [sp+208]
    0038903cldr x1, [sp+216]
    00389040ldr x2, [sp+224]
    00389044bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00389048strb w0, [sp+99]
    0038904ctbz w0, 0, 0x389054
    00389050b 0x389118
    00389054
    00389054loc_389054:
    00389054strh wzr, [sp+104]
    00389058add x0, sp, 208
    0038905cadd x1, sp, 104
    00389060bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16
    00389064strb w0, [sp+95]
    00389068tbnz w0, 0, 0x389070
    0038906cb 0x389104
    00389070
    00389070loc_389070:
    00389070ldrh w5, [sp+104]
    00389074strh w5, [sp+112]
    00389078ldr x5, [sp+1544]
    0038907cldrsb x27, [x5]
    00389080ldr x2, [x5+272]
    00389084ldr x0, [x5+256]
    00389088ldr x5, [x5+264]
    0038908cadd x1, x5, 1
    00389090subs xzr, x2, x1
    00389094b.hs 0x38909c
    00389098b 0x3890a0
    0038909c
    0038909cloc_38909c:
    0038909cb 0x3890b4
    003890a0
    003890a0loc_3890a0:
    003890a0orr x3, xzr, 1
    003890a4adrp x4, 0x281000
    003890a8add x4, x4, 352
    003890acbl runtime.growslice
    003890b0b 0x3890b4
    003890b4
    003890b4loc_3890b4:
    003890b4sub x3, x1, 1
    003890b8ldrh w4, [sp+112]
    003890bcstrh w4, [x0+x3]
    003890c0ldr x3, [sp+1544]
    003890c4ldrsb x27, [x3]
    003890c8str x1, [x3+264]
    003890ccstr x2, [x3+272]
    003890d0adrp x27, 0x6c2000
    003890d4ldr w4, [x27+3056]
    003890d8cbz w4, 0x3890e0
    003890dcb 0x3890e4
    003890e0
    003890e0loc_3890e0:
    003890e0b 0x3890f8
    003890e4
    003890e4loc_3890e4:
    003890e4bl runtime.gcWriteBarrier2
    003890e8str x0, [x25]
    003890ecldr x4, [x3+256]
    003890f0str x4, [x25+8]
    003890f4b 0x3890f8
    003890f8
    003890f8loc_3890f8:
    003890f8str x0, [x3+256]
    003890fcb 0x389100
    00389100
    00389100loc_389100:
    00389100b 0x389038
    00389104
    00389104loc_389104:
    00389104strb wzr, [sp+91]
    00389108mov x0, xzr
    0038910cldp x29, x30, [sp-8]
    00389110add sp, sp, 1536
    00389114ret x30
    00389118
    00389118loc_389118:
    00389118b 0x388e74
    0038911c
    0038911cloc_38911c:
    0038911cldr x0, [sp+184]
    00389120ldr x1, [sp+192]
    00389124ldr x2, [sp+200]
    00389128bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    0038912cstrb w0, [sp+96]
    00389130tbz w0, 0, 0x389138
    00389134b 0x3891f4
    00389138
    00389138loc_389138:
    00389138strh wzr, [sp+100]
    0038913cadd x0, sp, 184
    00389140add x1, sp, 100
    00389144bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16
    00389148strb w0, [sp+95]
    0038914ctbnz w0, 0, 0x389154
    00389150b 0x3891e0
    00389154
    00389154loc_389154:
    00389154ldr x5, [sp+1544]
    00389158ldrsb x27, [x5]
    0038915cldr x2, [x5+368]
    00389160ldr x0, [x5+352]
    00389164ldr x5, [x5+360]
    00389168add x1, x5, 1
    0038916csubs xzr, x2, x1
    00389170b.hs 0x389178
    00389174b 0x38917c
    00389178
    00389178loc_389178:
    00389178b 0x389190
    0038917c
    0038917cloc_38917c:
    0038917corr x3, xzr, 1
    00389180adrp x4, 0x26c000
    00389184add x4, x4, 3200
    00389188bl runtime.growslice
    0038918cb 0x389190
    00389190
    00389190loc_389190:
    00389190ldrh w3, [sp+100]
    00389194sub x4, x1, 1
    00389198strh w3, [x0+x4]
    0038919cldr x3, [sp+1544]
    003891a0ldrsb x27, [x3]
    003891a4str x1, [x3+360]
    003891a8str x2, [x3+368]
    003891acadrp x27, 0x6c2000
    003891b0ldr w4, [x27+3056]
    003891b4cbz w4, 0x3891bc
    003891b8b 0x3891c0
    003891bc
    003891bcloc_3891bc:
    003891bcb 0x3891d4
    003891c0
    003891c0loc_3891c0:
    003891c0bl runtime.gcWriteBarrier2
    003891c4str x0, [x25]
    003891c8ldr x4, [x3+352]
    003891ccstr x4, [x25+8]
    003891d0b 0x3891d4
    003891d4
    003891d4loc_3891d4:
    003891d4str x0, [x3+352]
    003891d8b 0x3891dc
    003891dc
    003891dcloc_3891dc:
    003891dcb 0x38911c
    003891e0
    003891e0loc_3891e0:
    003891e0strb wzr, [sp+91]
    003891e4mov x0, xzr
    003891e8ldp x29, x30, [sp-8]
    003891ecadd sp, sp, 1536
    003891f0ret x30
    003891f4
    003891f4loc_3891f4:
    003891f4b 0x388e74
    003891f8
    003891f8loc_3891f8:
    003891f8ldr x0, [sp+472]
    003891fcldr x1, [sp+480]
    00389200ldr x2, [sp+488]
    00389204bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00389208strb w0, [sp+98]
    0038920ctbz w0, 0, 0x389214
    00389210b 0x389380
    00389214
    00389214loc_389214:
    00389214str xzr, [sp+312]
    00389218stp xzr, xzr, [sp+320]
    0038921cstr wzr, [sp+336]
    00389220add x0, sp, 472
    00389224add x1, sp, 312
    00389228bl crypto/tls.readUint16LengthPrefixed
    0038922cstrb w0, [sp+96]
    00389230eor x2, x0, 1
    00389234strb w2, [sp+99]
    00389238tbnz w0, 0, 0x389240
    0038923cb 0x38925c
    00389240
    00389240loc_389240:
    00389240add x0, sp, 472
    00389244add x1, sp, 336
    00389248bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint32
    0038924cstrb w0, [sp+94]
    00389250eor x2, x0, 1
    00389254strb w2, [sp+99]
    00389258b 0x389260
    0038925c
    0038925cloc_38925c:
    0038925cb 0x389260
    00389260
    00389260loc_389260:
    00389260ldrb w5, [sp+99]
    00389264strb w5, [sp+95]
    00389268tbnz w5, 0, 0x389270
    0038926cb 0x389274
    00389270
    00389270loc_389270:
    00389270b 0x38928c
    00389274
    00389274loc_389274:
    00389274ldr x5, [sp+320]
    00389278str x5, [sp+176]
    0038927csubs xzr, x5, 0
    00389280cset x5, eq
    00389284strb w5, [sp+95]
    00389288b 0x38928c
    0038928c
    0038928cloc_38928c:
    0038928cldrb w5, [sp+95]
    00389290tbnz w5, 0, 0x389298
    00389294b 0x3892ac
    00389298
    00389298loc_389298:
    00389298strb wzr, [sp+91]
    0038929cmov x0, xzr
    003892a0ldp x29, x30, [sp-8]
    003892a4add sp, sp, 1536
    003892a8ret x30
    003892ac
    003892acloc_3892ac:
    003892acldr x5, [sp+1544]
    003892b0ldrsb x27, [x5]
    003892b4ldr x2, [x5+472]
    003892b8ldr x0, [x5+456]
    003892bcldr x5, [x5+464]
    003892c0add x1, x5, 1
    003892c4subs xzr, x2, x1
    003892c8b.hs 0x3892d0
    003892ccb 0x3892d4
    003892d0
    003892d0loc_3892d0:
    003892d0b 0x3892e8
    003892d4
    003892d4loc_3892d4:
    003892d4orr x3, xzr, 1
    003892d8adrp x4, 0x2b9000
    003892dcadd x4, x4, 3392
    003892e0bl runtime.growslice
    003892e4b 0x3892e8
    003892e8
    003892e8loc_3892e8:
    003892e8ldr x3, [sp+312]
    003892ecldr x4, [sp+320]
    003892f0ldr x5, [sp+328]
    003892f4ldr w6, [sp+336]
    003892f8sub x7, x1, 1
    003892fcadd x8, x0, x7, lsl #5
    00389300str x4, [x8+8]
    00389304str x5, [x8+16]
    00389308str w6, [x8+24]
    0038930cubfm x4, x7, 59, 58
    00389310adrp x27, 0x6c2000
    00389314ldr w5, [x27+3056]
    00389318cbz w5, 0x389320
    0038931cb 0x389324
    00389320
    00389320loc_389320:
    00389320b 0x389338
    00389324
    00389324loc_389324:
    00389324bl runtime.gcWriteBarrier2
    00389328str x3, [x25]
    0038932cldr x5, [x0+x4]
    00389330str x5, [x25+8]
    00389334b 0x389338
    00389338
    00389338loc_389338:
    00389338str x3, [x0+x4]
    0038933cldr x3, [sp+1544]
    00389340ldrsb x27, [x3]
    00389344str x1, [x3+464]
    00389348str x2, [x3+472]
    0038934cadrp x27, 0x6c2000
    00389350ldr w4, [x27+3056]
    00389354cbz w4, 0x38935c
    00389358b 0x389360
    0038935c
    0038935cloc_38935c:
    0038935cb 0x389374
    00389360
    00389360loc_389360:
    00389360bl runtime.gcWriteBarrier2
    00389364str x0, [x25]
    00389368ldr x4, [x3+456]
    0038936cstr x4, [x25+8]
    00389370b 0x389374
    00389374
    00389374loc_389374:
    00389374str x0, [x3+456]
    00389378b 0x38937c
    0038937c
    0038937cloc_38937c:
    0038937cb 0x3891f8
    00389380
    00389380loc_389380:
    00389380str xzr, [sp+616]
    00389384add x27, sp, 624
    00389388stp xzr, xzr, [x27]
    0038938cadd x0, sp, 520
    00389390add x1, sp, 616
    00389394bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    00389398strb w0, [sp+96]
    0038939ceor x2, x0, 1
    003893a0strb w2, [sp+98]
    003893a4tbnz w0, 0, 0x3893ac
    003893a8b 0x3893c8
    003893ac
    003893acloc_3893ac:
    003893acldr x0, [sp+616]
    003893b0ldr x1, [sp+624]
    003893b4ldr x2, [sp+632]
    003893b8bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    003893bcstrb w0, [sp+99]
    003893c0strb w0, [sp+98]
    003893c4b 0x3893cc
    003893c8
    003893c8loc_3893c8:
    003893c8b 0x3893cc
    003893cc
    003893ccloc_3893cc:
    003893ccldrb w3, [sp+98]
    003893d0tbnz w3, 0, 0x3893d8
    003893d4b 0x3893ec
    003893d8
    003893d8loc_3893d8:
    003893d8strb wzr, [sp+91]
    003893dcmov x0, xzr
    003893e0ldp x29, x30, [sp-8]
    003893e4add sp, sp, 1536
    003893e8ret x30
    003893ec
    003893ecloc_3893ec:
    003893ecb 0x3893f0
    003893f0
    003893f0loc_3893f0:
    003893f0ldr x0, [sp+616]
    003893f4ldr x1, [sp+624]
    003893f8ldr x2, [sp+632]
    003893fcbl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00389400strb w0, [sp+96]
    00389404tbz w0, 0, 0x38940c
    00389408b 0x389544
    0038940c
    0038940cloc_38940c:
    0038940cstr xzr, [sp+640]
    00389410add x27, sp, 648
    00389414stp xzr, xzr, [x27]
    00389418add x0, sp, 616
    0038941cadd x1, sp, 640
    00389420bl crypto/tls.readUint8LengthPrefixed
    00389424strb w0, [sp+99]
    00389428eor x2, x0, 1
    0038942cstrb w2, [sp+98]
    00389430tbnz w0, 0, 0x389438
    00389434b 0x389450
    00389438
    00389438loc_389438:
    00389438ldr x5, [sp+648]
    0038943cstr x5, [sp+176]
    00389440subs xzr, x5, 0
    00389444cset x5, eq
    00389448strb w5, [sp+98]
    0038944cb 0x389454
    00389450
    00389450loc_389450:
    00389450b 0x389454
    00389454
    00389454loc_389454:
    00389454ldrb w5, [sp+98]
    00389458tbnz w5, 0, 0x389460
    0038945cb 0x389474
    00389460
    00389460loc_389460:
    00389460strb wzr, [sp+91]
    00389464mov x0, xzr
    00389468ldp x29, x30, [sp-8]
    0038946cadd sp, sp, 1536
    00389470ret x30
    00389474
    00389474loc_389474:
    00389474ldr x5, [sp+1544]
    00389478ldrsb x27, [x5]
    0038947cldr x2, [x5+496]
    00389480ldr x0, [x5+480]
    00389484ldr x5, [x5+488]
    00389488add x1, x5, 1
    0038948csubs xzr, x2, x1
    00389490b.hs 0x389498
    00389494b 0x38949c
    00389498
    00389498loc_389498:
    00389498b 0x3894b0
    0038949c
    0038949cloc_38949c:
    0038949corr x3, xzr, 1
    003894a0adrp x4, 0x264000
    003894a4add x4, x4, 1216
    003894a8bl runtime.growslice
    003894acb 0x3894b0
    003894b0
    003894b0loc_3894b0:
    003894b0ldr x3, [sp+640]
    003894b4add x4, x1, x1, lsl #1
    003894b8ldr x5, [sp+648]
    003894bcldr x6, [sp+656]
    003894c0ubfm x4, x4, 61, 60
    003894c4sub x4, x4, 24
    003894c8add x7, x0, x4
    003894ccstr x5, [x7+8]
    003894d0str x6, [x7+16]
    003894d4adrp x27, 0x6c2000
    003894d8ldr w5, [x27+3056]
    003894dccbz w5, 0x3894e4
    003894e0b 0x3894e8
    003894e4
    003894e4loc_3894e4:
    003894e4b 0x3894fc
    003894e8
    003894e8loc_3894e8:
    003894e8bl runtime.gcWriteBarrier2
    003894ecstr x3, [x25]
    003894f0ldr x5, [x0+x4]
    003894f4str x5, [x25+8]
    003894f8b 0x3894fc
    003894fc
    003894fcloc_3894fc:
    003894fcstr x3, [x0+x4]
    00389500ldr x3, [sp+1544]
    00389504ldrsb x27, [x3]
    00389508str x1, [x3+488]
    0038950cstr x2, [x3+496]
    00389510adrp x27, 0x6c2000
    00389514ldr w4, [x27+3056]
    00389518cbz w4, 0x389520
    0038951cb 0x389524
    00389520
    00389520loc_389520:
    00389520b 0x389538
    00389524
    00389524loc_389524:
    00389524bl runtime.gcWriteBarrier2
    00389528str x0, [x25]
    0038952cldr x4, [x3+480]
    00389530str x4, [x25+8]
    00389534b 0x389538
    00389538
    00389538loc_389538:
    00389538str x0, [x3+480]
    0038953cb 0x389540
    00389540
    00389540loc_389540:
    00389540b 0x3893f0
    00389544
    00389544loc_389544:
    00389544b 0x388e74
    00389548
    00389548loc_389548:
    00389548ldr x0, [sp+344]
    0038954cldr x1, [sp+352]
    00389550ldr x2, [sp+360]
    00389554bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00389558strb w0, [sp+95]
    0038955ctbz w0, 0, 0x389564
    00389560b 0x3896a8
    00389564
    00389564loc_389564:
    00389564str xzr, [sp+368]
    00389568stp xzr, xzr, [sp+376]
    0038956cadd x0, sp, 344
    00389570add x1, sp, 368
    00389574bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint8LengthPrefixed
    00389578strb w0, [sp+96]
    0038957ceor x2, x0, 1
    00389580strb w2, [sp+99]
    00389584tbnz w0, 0, 0x38958c
    00389588b 0x3895a8
    0038958c
    0038958cloc_38958c:
    0038958cldr x0, [sp+368]
    00389590ldr x1, [sp+376]
    00389594ldr x2, [sp+384]
    00389598bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    0038959cstrb w0, [sp+98]
    003895a0strb w0, [sp+99]
    003895a4b 0x3895ac
    003895a8
    003895a8loc_3895a8:
    003895a8b 0x3895ac
    003895ac
    003895acloc_3895ac:
    003895acldrb w3, [sp+99]
    003895b0tbnz w3, 0, 0x3895b8
    003895b4b 0x3895cc
    003895b8
    003895b8loc_3895b8:
    003895b8strb wzr, [sp+91]
    003895bcmov x0, xzr
    003895c0ldp x29, x30, [sp-8]
    003895c4add sp, sp, 1536
    003895c8ret x30
    003895cc
    003895ccloc_3895cc:
    003895ccldr x1, [sp+368]
    003895d0ldr x2, [sp+376]
    003895d4mov x0, xzr
    003895d8bl runtime.slicebytetostring
    003895dcstr x0, [sp+728]
    003895e0str x1, [sp+736]
    003895e4ldr x3, [sp+1544]
    003895e8ldrsb x27, [x3]
    003895ecldr x2, [x3+336]
    003895f0ldr x0, [x3+320]
    003895f4ldr x3, [x3+328]
    003895f8add x1, x3, 1
    003895fcsubs xzr, x2, x1
    00389600b.hs 0x389608
    00389604b 0x38960c
    00389608
    00389608loc_389608:
    00389608b 0x389620
    0038960c
    0038960cloc_38960c:
    0038960corr x3, xzr, 1
    00389610adrp x4, 0x26c000
    00389614add x4, x4, 2944
    00389618bl runtime.growslice
    0038961cb 0x389620
    00389620
    00389620loc_389620:
    00389620sub x3, x1, 1
    00389624add x4, x0, x3, lsl #4
    00389628ubfm x3, x3, 60, 59
    0038962cldr x5, [sp+728]
    00389630ldr x6, [sp+736]
    00389634str x6, [x4+8]
    00389638adrp x27, 0x6c2000
    0038963cldr w4, [x27+3056]
    00389640cbz w4, 0x389648
    00389644b 0x38964c
    00389648
    00389648loc_389648:
    00389648b 0x389660
    0038964c
    0038964cloc_38964c:
    0038964cbl runtime.gcWriteBarrier2
    00389650str x5, [x25]
    00389654ldr x4, [x0+x3]
    00389658str x4, [x25+8]
    0038965cb 0x389660
    00389660
    00389660loc_389660:
    00389660str x5, [x0+x3]
    00389664ldr x3, [sp+1544]
    00389668ldrsb x27, [x3]
    0038966cstr x1, [x3+328]
    00389670str x2, [x3+336]
    00389674adrp x27, 0x6c2000
    00389678ldr w4, [x27+3056]
    0038967ccbz w4, 0x389684
    00389680b 0x389688
    00389684
    00389684loc_389684:
    00389684b 0x38969c
    00389688
    00389688loc_389688:
    00389688bl runtime.gcWriteBarrier2
    0038968cstr x0, [x25]
    00389690ldr x4, [x3+320]
    00389694str x4, [x25+8]
    00389698b 0x38969c
    0038969c
    0038969cloc_38969c:
    0038969cstr x0, [x3+320]
    003896a0b 0x3896a4
    003896a4
    003896a4loc_3896a4:
    003896a4b 0x389548
    003896a8
    003896a8loc_3896a8:
    003896a8b 0x388e74
    003896ac
    003896acloc_3896ac:
    003896acldr x0, [sp+232]
    003896b0ldr x1, [sp+240]
    003896b4ldr x2, [sp+248]
    003896b8bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    003896bcstrb w0, [sp+95]
    003896c0tbz w0, 0, 0x3896c8
    003896c4b 0x38978c
    003896c8
    003896c8loc_3896c8:
    003896c8strh wzr, [sp+106]
    003896ccadd x0, sp, 232
    003896d0add x1, sp, 106
    003896d4bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16
    003896d8strb w0, [sp+99]
    003896dctbnz w0, 0, 0x3896e4
    003896e0b 0x389778
    003896e4
    003896e4loc_3896e4:
    003896e4ldrh w5, [sp+106]
    003896e8strh w5, [sp+114]
    003896ecldr x5, [sp+1544]
    003896f0ldrsb x27, [x5]
    003896f4ldr x2, [x5+248]
    003896f8ldr x0, [x5+232]
    003896fcldr x5, [x5+240]
    00389700add x1, x5, 1
    00389704subs xzr, x2, x1
    00389708b.hs 0x389710
    0038970cb 0x389714
    00389710
    00389710loc_389710:
    00389710b 0x389728
    00389714
    00389714loc_389714:
    00389714orr x3, xzr, 1
    00389718adrp x4, 0x281000
    0038971cadd x4, x4, 352
    00389720bl runtime.growslice
    00389724b 0x389728
    00389728
    00389728loc_389728:
    00389728sub x3, x1, 1
    0038972cldrh w4, [sp+114]
    00389730strh w4, [x0+x3]
    00389734ldr x3, [sp+1544]
    00389738ldrsb x27, [x3]
    0038973cstr x1, [x3+240]
    00389740str x2, [x3+248]
    00389744adrp x27, 0x6c2000
    00389748ldr w4, [x27+3056]
    0038974ccbz w4, 0x389754
    00389750b 0x389758
    00389754
    00389754loc_389754:
    00389754b 0x38976c
    00389758
    00389758loc_389758:
    00389758bl runtime.gcWriteBarrier2
    0038975cstr x0, [x25]
    00389760ldr x4, [x3+232]
    00389764str x4, [x25+8]
    00389768b 0x38976c
    0038976c
    0038976cloc_38976c:
    0038976cstr x0, [x3+232]
    00389770b 0x389774
    00389774
    00389774loc_389774:
    00389774b 0x3896ac
    00389778
    00389778loc_389778:
    00389778strb wzr, [sp+91]
    0038977cmov x0, xzr
    00389780ldp x29, x30, [sp-8]
    00389784add sp, sp, 1536
    00389788ret x30
    0038978c
    0038978cloc_38978c:
    0038978cb 0x388e74
    00389790
    00389790loc_389790:
    00389790ldr x0, [sp+544]
    00389794ldr x1, [sp+552]
    00389798ldr x2, [sp+560]
    0038979cbl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    003897a0strb w0, [sp+95]
    003897a4tbz w0, 0, 0x3897ac
    003897a8b 0x389870
    003897ac
    003897acloc_3897ac:
    003897acstrh wzr, [sp+110]
    003897b0add x0, sp, 544
    003897b4add x1, sp, 110
    003897b8bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16
    003897bcstrb w0, [sp+99]
    003897c0tbnz w0, 0, 0x3897c8
    003897c4b 0x38985c
    003897c8
    003897c8loc_3897c8:
    003897c8ldrh w5, [sp+110]
    003897ccstrh w5, [sp+116]
    003897d0ldr x5, [sp+1544]
    003897d4ldrsb x27, [x5]
    003897d8ldr x2, [x5+168]
    003897dcldr x0, [x5+152]
    003897e0ldr x5, [x5+160]
    003897e4add x1, x5, 1
    003897e8subs xzr, x2, x1
    003897ecb.hs 0x3897f4
    003897f0b 0x3897f8
    003897f4
    003897f4loc_3897f4:
    003897f4b 0x38980c
    003897f8
    003897f8loc_3897f8:
    003897f8orr x3, xzr, 1
    003897fcadrp x4, 0x281000
    00389800add x4, x4, 448
    00389804bl runtime.growslice
    00389808b 0x38980c
    0038980c
    0038980cloc_38980c:
    0038980cldrh w3, [sp+116]
    00389810sub x4, x1, 1
    00389814strh w3, [x0+x4]
    00389818ldr x3, [sp+1544]
    0038981cldrsb x27, [x3]
    00389820str x1, [x3+160]
    00389824str x2, [x3+168]
    00389828adrp x27, 0x6c2000
    0038982cldr w4, [x27+3056]
    00389830cbz w4, 0x389838
    00389834b 0x38983c
    00389838
    00389838loc_389838:
    00389838b 0x389850
    0038983c
    0038983cloc_38983c:
    0038983cbl runtime.gcWriteBarrier2
    00389840str x0, [x25]
    00389844ldr x4, [x3+152]
    00389848str x4, [x25+8]
    0038984cb 0x389850
    00389850
    00389850loc_389850:
    00389850str x0, [x3+152]
    00389854b 0x389858
    00389858
    00389858loc_389858:
    00389858b 0x389790
    0038985c
    0038985cloc_38985c:
    0038985cstrb wzr, [sp+91]
    00389860mov x0, xzr
    00389864ldp x29, x30, [sp-8]
    00389868add sp, sp, 1536
    0038986cret x30
    00389870
    00389870loc_389870:
    00389870b 0x388e74
    00389874
    00389874loc_389874:
    00389874ldr x0, [sp+392]
    00389878ldr x1, [sp+400]
    0038987cldr x2, [sp+408]
    00389880bl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00389884strb w0, [sp+96]
    00389888tbz w0, 0, 0x389890
    0038988cb 0x389a00
    00389890
    00389890loc_389890:
    00389890strb wzr, [sp+93]
    00389894str xzr, [sp+256]
    00389898stp xzr, xzr, [sp+264]
    0038989cadd x0, sp, 392
    003898a0add x1, sp, 93
    003898a4bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint8
    003898a8strb w0, [sp+95]
    003898aceor x2, x0, 1
    003898b0strb w2, [sp+99]
    003898b4tbnz w0, 0, 0x3898bc
    003898b8b 0x3898d8
    003898bc
    003898bcloc_3898bc:
    003898bcadd x0, sp, 392
    003898c0add x1, sp, 256
    003898c4bl vendor/golang.org/x/crypto/cryptobyte.(*String).ReadUint16LengthPrefixed
    003898c8strb w0, [sp+94]
    003898cceor x2, x0, 1
    003898d0strb w2, [sp+99]
    003898d4b 0x3898dc
    003898d8
    003898d8loc_3898d8:
    003898d8b 0x3898dc
    003898dc
    003898dcloc_3898dc:
    003898dcldrb w3, [sp+99]
    003898e0strb w3, [sp+98]
    003898e4tbnz w3, 0, 0x3898ec
    003898e8b 0x3898f0
    003898ec
    003898ecloc_3898ec:
    003898ecb 0x38990c
    003898f0
    003898f0loc_3898f0:
    003898f0ldr x0, [sp+256]
    003898f4ldr x1, [sp+264]
    003898f8ldr x2, [sp+272]
    003898fcbl vendor/golang.org/x/crypto/cryptobyte.String.Empty
    00389900strb w0, [sp+94]
    00389904strb w0, [sp+98]
    00389908b 0x38990c
    0038990c
    0038990cloc_38990c:
    0038990cldrb w3, [sp+98]
    00389910tbnz w3, 0, 0x389918
    00389914b 0x38992c
    00389918
    00389918loc_389918:
    00389918strb wzr, [sp+91]
    0038991cmov x0, xzr
    00389920ldp x29, x30, [sp-8]
    00389924add sp, sp, 1536
    00389928ret x30
    0038992c
    0038992cloc_38992c:
    0038992cldrb w3, [sp+93]
    00389930cbnz w3, 0x389938
    00389934b 0x38993c
    00389938
    00389938loc_389938:
    00389938b 0x3899fc
    0038993c
    0038993cloc_38993c:
    0038993cldr x3, [sp+1544]
    00389940ldrsb x27, [x3]
    00389944ldr x3, [x3+136]
    00389948str x3, [sp+176]
    0038994ccbnz x3, 0x389954
    00389950b 0x389968
    00389954
    00389954loc_389954:
    00389954strb wzr, [sp+91]
    00389958mov x0, xzr
    0038995cldp x29, x30, [sp-8]
    00389960add sp, sp, 1536
    00389964ret x30
    00389968
    00389968loc_389968:
    00389968ldr x1, [sp+256]
    0038996cldr x2, [sp+264]
    00389970mov x0, xzr
    00389974bl runtime.slicebytetostring
    00389978ldr x3, [sp+1544]
    0038997cldrsb x27, [x3]
    00389980str x1, [x3+136]
    00389984adrp x27, 0x6c2000
    00389988ldr w4, [x27+3056]
    0038998ccbz w4, 0x389994
    00389990b 0x389998
    00389994
    00389994loc_389994:
    00389994b 0x3899ac
    00389998
    00389998loc_389998:
    00389998bl runtime.gcWriteBarrier2
    0038999cstr x0, [x25]
    003899a0ldr x4, [x3+128]
    003899a4str x4, [x25+8]
    003899a8b 0x3899ac
    003899ac
    003899acloc_3899ac:
    003899acstr x0, [x3+128]
    003899b0ldr x4, [sp+1544]
    003899b4ldrsb x27, [x4]
    003899b8ldr x0, [x4+128]
    003899bcldr x1, [x4+136]
    003899c0str x0, [sp+768]
    003899c4str x1, [sp+776]
    003899c8adrp x2, 0x386000
    003899ccadd x2, x2, 296
    003899d0orr x3, xzr, 1
    003899d4bl strings.HasSuffix
    003899d8strb w0, [sp+95]
    003899dctbnz w0, 0, 0x3899e4
    003899e0b 0x3899f8
    003899e4
    003899e4loc_3899e4:
    003899e4strb wzr, [sp+91]
    003899e8mov x0, xzr
    003899ecldp x29, x30, [sp-8]
    003899f0add sp, sp, 1536
    003899f4ret x30
    003899f8
    003899f8loc_3899f8:
    003899f8b 0x3899fc
    003899fc
    003899fcloc_3899fc:
    003899fcb 0x389874
    00389a00
    00389a00loc_389a00:
    00389a00b 0x388e74
    00389a04
    00389a04loc_389a04:
    00389a04stp x0, x1, [sp+8]
    00389a08stp x2, x3, [sp+24]
    00389a0cmov x3, x30
    00389a10bl runtime.morestack_noctxt.abi0
    00389a14ldp x0, x1, [sp+8]
    00389a18ldp x2, x3, [sp+24]
    00389a1cb 0x387ec0
    00387ec0
    00389a20
    00389a20crypto/tls.(*clientHelloMsg).originalBytes: ; void crypto/tls.(*clientHelloMsg).originalBytes(crypto/tls.clientHelloMsg * m)
    00389a20str x30, [sp-48]!
    00389a24stur x29, [sp-8]
    00389a28sub x29, sp, 8
    00389a2cstr x0, [sp+56]
    00389a30str xzr, [sp+16]
    00389a34stp xzr, xzr, [sp+24]
    00389a38ldr x3, [sp+56]
    00389a3cldrsb x27, [x3]
    00389a40ldr x0, [x3]
    00389a44ldr x1, [x3+8]
    00389a48ldr x2, [x3+16]
    00389a4cstr x0, [sp+16]
    00389a50str x1, [sp+24]
    00389a54str x2, [sp+32]
    00389a58add x29, sp, 40
    00389a5cadd sp, sp, 48
    00389a60ret x30
    00389a64udf 0
    00389a68udf 0
    00389a6cudf 0
    00389a20
    00389a70
    00389a70crypto/tls.(*clientHelloMsg).clone: ; void crypto/tls.(*clientHelloMsg).clone(crypto/tls.clientHelloMsg * m)
    00389a70ldr x16, [x28+16]
    00389a74sub x17, sp, 912
    00389a78subs xzr, x17, x16
    00389a7cb.ls 0x38a5f4
    00389a80sub x20, sp, 1040
    00389a84stp x29, x30, [x20-8]
    00389a88add sp, x20, 0
    00389a8csub x29, sp, 8
    00389a90str x0, [sp+1048]
    00389a94str xzr, [sp+48]
    00389a98ldr x4, [sp+1048]
    00389a9cldrsb x27, [x4]
    00389aa0ldr x1, [x4]
    00389aa4ldr x2, [x4+8]
    00389aa8ldr x3, [x4+16]
    00389aacstr x1, [sp+696]
    00389ab0str x2, [sp+704]
    00389ab4str x3, [sp+712]
    00389ab8adrp x0, 0x38c000
    00389abcadd x0, x0, 3360
    00389ac0bl slices.Clone[go.shape.[]uint8,go.shape.uint8]
    00389ac4str x0, [sp+768]
    00389ac8str x1, [sp+776]
    00389accstr x2, [sp+784]
    00389ad0ldr x4, [sp+1048]
    00389ad4ldrsb x27, [x4]
    00389ad8ldr x1, [x4+32]
    00389adcldr x2, [x4+40]
    00389ae0ldr x3, [x4+48]
    00389ae4str x1, [sp+672]
    00389ae8str x2, [sp+680]
    00389aecstr x3, [sp+688]
    00389af0adrp x0, 0x38c000
    00389af4add x0, x0, 3360
    00389af8bl slices.Clone[go.shape.[]uint8,go.shape.uint8]
    00389afcstr x0, [sp+504]
    00389b00str x1, [sp+512]
    00389b04str x2, [sp+520]
    00389b08ldr x4, [sp+1048]
    00389b0cldrsb x27, [x4]
    00389b10ldr x1, [x4+56]
    00389b14ldr x2, [x4+64]
    00389b18ldr x3, [x4+72]
    00389b1cstr x1, [sp+648]
    00389b20str x2, [sp+656]
    00389b24str x3, [sp+664]
    00389b28adrp x0, 0x38c000
    00389b2cadd x0, x0, 3360
    00389b30bl slices.Clone[go.shape.[]uint8,go.shape.uint8]
    00389b34str x0, [sp+240]
    00389b38str x1, [sp+248]
    00389b3cstr x2, [sp+256]
    00389b40ldr x4, [sp+1048]
    00389b44ldrsb x27, [x4]
    00389b48ldr x1, [x4+80]
    00389b4cldr x2, [x4+88]
    00389b50ldr x3, [x4+96]
    00389b54str x1, [sp+624]
    00389b58str x2, [sp+632]
    00389b5cstr x3, [sp+640]
    00389b60adrp x0, 0x38c000
    00389b64add x0, x0, 3296
    00389b68bl slices.Clone[go.shape.[]uint16,go.shape.uint16]
    00389b6cstr x0, [sp+152]
    00389b70str x1, [sp+160]
    00389b74str x2, [sp+168]
    00389b78ldr x4, [sp+1048]
    00389b7cldrsb x27, [x4]
    00389b80ldr x1, [x4+104]
    00389b84ldr x2, [x4+112]
    00389b88ldr x3, [x4+120]
    00389b8cstr x1, [sp+600]
    00389b90str x2, [sp+608]
    00389b94str x3, [sp+616]
    00389b98adrp x0, 0x38c000
    00389b9cadd x0, x0, 3360
    00389ba0bl slices.Clone[go.shape.[]uint8,go.shape.uint8]
    00389ba4str x0, [sp+128]
    00389ba8str x1, [sp+136]
    00389bacstr x2, [sp+144]
    00389bb0ldr x4, [sp+1048]
    00389bb4ldrsb x27, [x4]
    00389bb8ldr x1, [x4+152]
    00389bbcldr x2, [x4+160]
    00389bc0ldr x3, [x4+168]
    00389bc4str x1, [sp+576]
    00389bc8str x2, [sp+584]
    00389bccstr x3, [sp+592]
    00389bd0adrp x0, 0x38c000
    00389bd4add x0, x0, 3392
    00389bd8bl slices.Clone[go.shape.[]crypto/tls.CurveID,go.shape.uint16]
    00389bdcstr x0, [sp+104]
    00389be0str x1, [sp+112]
    00389be4str x2, [sp+120]
    00389be8ldr x4, [sp+1048]
    00389becldrsb x27, [x4]
    00389bf0ldr x1, [x4+176]
    00389bf4ldr x2, [x4+184]
    00389bf8ldr x3, [x4+192]
    00389bfcstr x1, [sp+552]
    00389c00str x2, [sp+560]
    00389c04str x3, [sp+568]
    00389c08adrp x0, 0x38c000
    00389c0cadd x0, x0, 3360
    00389c10bl slices.Clone[go.shape.[]uint8,go.shape.uint8]
    00389c14str x0, [sp+80]
    00389c18str x1, [sp+88]
    00389c1cstr x2, [sp+96]
    00389c20ldr x4, [sp+1048]
    00389c24ldrsb x27, [x4]
    00389c28ldr x1, [x4+208]
    00389c2cldr x2, [x4+216]
    00389c30ldr x3, [x4+224]
    00389c34str x1, [sp+528]
    00389c38str x2, [sp+536]
    00389c3cstr x3, [sp+544]
    00389c40adrp x0, 0x38c000
    00389c44add x0, x0, 3360
    00389c48bl slices.Clone[go.shape.[]uint8,go.shape.uint8]
    00389c4cstr x0, [sp+56]
    00389c50str x1, [sp+64]
    00389c54str x2, [sp+72]
    00389c58ldr x4, [sp+1048]
    00389c5cldrsb x27, [x4]
    00389c60ldr x1, [x4+232]
    00389c64ldr x2, [x4+240]
    00389c68ldr x3, [x4+248]
    00389c6cstr x1, [sp+480]
    00389c70str x2, [sp+488]
    00389c74str x3, [sp+496]
    00389c78adrp x0, 0x38c000
    00389c7cadd x0, x0, 3424
    00389c80bl slices.Clone[go.shape.[]crypto/tls.SignatureScheme,go.shape.uint16]
    00389c84str x0, [sp+1008]
    00389c88str x1, [sp+1016]
    00389c8cstr x2, [sp+1024]
    00389c90ldr x4, [sp+1048]
    00389c94ldrsb x27, [x4]
    00389c98ldr x1, [x4+256]
    00389c9cldr x2, [x4+264]
    00389ca0ldr x3, [x4+272]
    00389ca4str x1, [sp+456]
    00389ca8str x2, [sp+464]
    00389cacstr x3, [sp+472]
    00389cb0adrp x0, 0x38c000
    00389cb4add x0, x0, 3424
    00389cb8bl slices.Clone[go.shape.[]crypto/tls.SignatureScheme,go.shape.uint16]
    00389cbcstr x0, [sp+984]
    00389cc0str x1, [sp+992]
    00389cc4str x2, [sp+1000]
    00389cc8ldr x4, [sp+1048]
    00389cccldrsb x27, [x4]
    00389cd0ldr x1, [x4+288]
    00389cd4ldr x2, [x4+296]
    00389cd8ldr x3, [x4+304]
    00389cdcstr x1, [sp+432]
    00389ce0str x2, [sp+440]
    00389ce4str x3, [sp+448]
    00389ce8adrp x0, 0x38c000
    00389cecadd x0, x0, 3360
    00389cf0bl slices.Clone[go.shape.[]uint8,go.shape.uint8]
    00389cf4str x0, [sp+960]
    00389cf8str x1, [sp+968]
    00389cfcstr x2, [sp+976]
    00389d00ldr x4, [sp+1048]
    00389d04ldrsb x27, [x4]
    00389d08ldr x1, [x4+320]
    00389d0cldr x2, [x4+328]
    00389d10ldr x3, [x4+336]
    00389d14str x1, [sp+408]
    00389d18str x2, [sp+416]
    00389d1cstr x3, [sp+424]
    00389d20adrp x0, 0x38c000
    00389d24add x0, x0, 3456
    00389d28bl slices.Clone[go.shape.[]string,go.shape.string]
    00389d2cstr x0, [sp+936]
    00389d30str x1, [sp+944]
    00389d34str x2, [sp+952]
    00389d38ldr x4, [sp+1048]
    00389d3cldrsb x27, [x4]
    00389d40ldr x1, [x4+352]
    00389d44ldr x2, [x4+360]
    00389d48ldr x3, [x4+368]
    00389d4cstr x1, [sp+384]
    00389d50str x2, [sp+392]
    00389d54str x3, [sp+400]
    00389d58adrp x0, 0x38c000
    00389d5cadd x0, x0, 3296
    00389d60bl slices.Clone[go.shape.[]uint16,go.shape.uint16]
    00389d64str x0, [sp+912]
    00389d68str x1, [sp+920]
    00389d6cstr x2, [sp+928]
    00389d70ldr x4, [sp+1048]
    00389d74ldrsb x27, [x4]
    00389d78ldr x1, [x4+376]
    00389d7cldr x2, [x4+384]
    00389d80ldr x3, [x4+392]
    00389d84str x1, [sp+360]
    00389d88str x2, [sp+368]
    00389d8cstr x3, [sp+376]
    00389d90adrp x0, 0x38c000
    00389d94add x0, x0, 3360
    00389d98bl slices.Clone[go.shape.[]uint8,go.shape.uint8]
    00389d9cstr x0, [sp+888]
    00389da0str x1, [sp+896]
    00389da4str x2, [sp+904]
    00389da8ldr x4, [sp+1048]
    00389dacldrsb x27, [x4]
    00389db0ldr x1, [x4+400]
    00389db4ldr x2, [x4+408]
    00389db8ldr x3, [x4+416]
    00389dbcstr x1, [sp+336]
    00389dc0str x2, [sp+344]
    00389dc4str x3, [sp+352]
    00389dc8adrp x0, 0x38c000
    00389dccadd x0, x0, 3488
    00389dd0bl slices.Clone[go.shape.[]crypto/tls.keyShare,go.shape.struct { crypto/tls.group crypto/tls.CurveID; crypto/tls.data []uint8 }]
    00389dd4str x0, [sp+864]
    00389dd8str x1, [sp+872]
    00389ddcstr x2, [sp+880]
    00389de0ldr x4, [sp+1048]
    00389de4ldrsb x27, [x4]
    00389de8ldr x1, [x4+432]
    00389decldr x2, [x4+440]
    00389df0ldr x3, [x4+448]
    00389df4str x1, [sp+312]
    00389df8str x2, [sp+320]
    00389dfcstr x3, [sp+328]
    00389e00adrp x0, 0x38c000
    00389e04add x0, x0, 3360
    00389e08bl slices.Clone[go.shape.[]uint8,go.shape.uint8]
    00389e0cstr x0, [sp+840]
    00389e10str x1, [sp+848]
    00389e14str x2, [sp+856]
    00389e18ldr x4, [sp+1048]
    00389e1cldrsb x27, [x4]
    00389e20ldr x1, [x4+456]
    00389e24ldr x2, [x4+464]
    00389e28ldr x3, [x4+472]
    00389e2cstr x1, [sp+288]
    00389e30str x2, [sp+296]
    00389e34str x3, [sp+304]
    00389e38adrp x0, 0x38c000
    00389e3cadd x0, x0, 3520
    00389e40bl slices.Clone[go.shape.[]crypto/tls.pskIdentity,go.shape.struct { crypto/tls.label []uint8; crypto/tls.obfuscatedTicketAge uint32 }]
    00389e44str x0, [sp+816]
    00389e48str x1, [sp+824]
    00389e4cstr x2, [sp+832]
    00389e50ldr x4, [sp+1048]
    00389e54ldrsb x27, [x4]
    00389e58ldr x1, [x4+480]
    00389e5cldr x2, [x4+488]
    00389e60ldr x3, [x4+496]
    00389e64str x1, [sp+264]
    00389e68str x2, [sp+272]
    00389e6cstr x3, [sp+280]
    00389e70adrp x0, 0x38c000
    00389e74add x0, x0, 3552
    00389e78bl slices.Clone[go.shape.[][]uint8,go.shape.[]uint8]
    00389e7cstr x0, [sp+792]
    00389e80str x1, [sp+800]
    00389e84str x2, [sp+808]
    00389e88ldr x4, [sp+1048]
    00389e8cldrsb x27, [x4]
    00389e90ldr x1, [x4+504]
    00389e94ldr x2, [x4+512]
    00389e98ldr x3, [x4+520]
    00389e9cstr x1, [sp+216]
    00389ea0str x2, [sp+224]
    00389ea4str x3, [sp+232]
    00389ea8adrp x0, 0x38c000
    00389eacadd x0, x0, 3360
    00389eb0bl slices.Clone[go.shape.[]uint8,go.shape.uint8]
    00389eb4str x0, [sp+744]
    00389eb8str x1, [sp+752]
    00389ebcstr x2, [sp+760]
    00389ec0ldr x4, [sp+1048]
    00389ec4ldrsb x27, [x4]
    00389ec8ldr x1, [x4+528]
    00389eccldr x2, [x4+536]
    00389ed0ldr x3, [x4+544]
    00389ed4str x1, [sp+192]
    00389ed8str x2, [sp+200]
    00389edcstr x3, [sp+208]
    00389ee0adrp x0, 0x38c000
    00389ee4add x0, x0, 3360
    00389ee8bl slices.Clone[go.shape.[]uint8,go.shape.uint8]
    00389eecstr x0, [sp+720]
    00389ef0str x1, [sp+728]
    00389ef4str x2, [sp+736]
    00389ef8adrp x0, 0x320000
    00389efcadd x0, x0, 1728
    00389f00bl runtime.newobject
    00389f04str x0, [sp+184]
    00389f08adrp x27, 0x6c2000
    00389f0cldr w4, [x27+3056]
    00389f10cbz w4, 0x389f18
    00389f14b 0x389f1c
    00389f18
    00389f18loc_389f18:
    00389f18b 0x389f38
    00389f1c
    00389f1cloc_389f1c:
    00389f1cstr x0, [sp+176]
    00389f20mov x1, x0
    00389f24adrp x0, 0x320000
    00389f28add x0, x0, 1728
    00389f2cbl runtime.wbZero
    00389f30ldr x0, [sp+176]
    00389f34b 0x389f38
    00389f38
    00389f38loc_389f38:
    00389f38mov x20, x0
    00389f3cadr x27, 16
    00389f40stp x29, x27, [sp-24]
    00389f44sub x29, sp, 24
    00389f48bl fn_87c80
    00389f4csub x29, sp, 8
    00389f50ldr x1, [sp+184]
    00389f54ldrsb x27, [x1]
    00389f58ldr x2, [sp+768]
    00389f5cldr x3, [sp+776]
    00389f60ldr x4, [sp+784]
    00389f64str x3, [x1+8]
    00389f68str x4, [x1+16]
    00389f6cadrp x27, 0x6c2000
    00389f70ldr w3, [x27+3056]
    00389f74cbz w3, 0x389f7c
    00389f78b 0x389f80
    00389f7c
    00389f7cloc_389f7c:
    00389f7cb 0x389f94
    00389f80
    00389f80loc_389f80:
    00389f80bl runtime.gcWriteBarrier2
    00389f84str x2, [x25]
    00389f88ldr x3, [x1]
    00389f8cstr x3, [x25+8]
    00389f90b 0x389f94
    00389f94
    00389f94loc_389f94:
    00389f94str x2, [x1]
    00389f98ldr x1, [sp+184]
    00389f9cldrsb x27, [x1]
    00389fa0ldr x2, [sp+1048]
    00389fa4ldrsb x27, [x2]
    00389fa8ldrh w2, [x2+24]
    00389facstrh w2, [x1+24]
    00389fb0ldr x1, [sp+184]
    00389fb4ldrsb x27, [x1]
    00389fb8ldr x2, [sp+504]
    00389fbcldr x3, [sp+512]
    00389fc0ldr x4, [sp+520]
    00389fc4str x3, [x1+40]
    00389fc8str x4, [x1+48]
    00389fccadrp x27, 0x6c2000
    00389fd0ldr w3, [x27+3056]
    00389fd4cbz w3, 0x389fdc
    00389fd8b 0x389fe0
    00389fdc
    00389fdcloc_389fdc:
    00389fdcb 0x389ff4
    00389fe0
    00389fe0loc_389fe0:
    00389fe0bl runtime.gcWriteBarrier2
    00389fe4str x2, [x25]
    00389fe8ldr x3, [x1+32]
    00389fecstr x3, [x25+8]
    00389ff0b 0x389ff4
    00389ff4
    00389ff4loc_389ff4:
    00389ff4str x2, [x1+32]
    00389ff8ldr x1, [sp+184]
    00389ffcldrsb x27, [x1]
    0038a000ldr x2, [sp+240]
    0038a004ldr x3, [sp+248]
    0038a008ldr x4, [sp+256]
    0038a00cstr x3, [x1+64]
    0038a010str x4, [x1+72]
    0038a014adrp x27, 0x6c1000
    0038a018ldr w3, [x27+3056]
    0038a01ccbz w3, 0x38a024
    0038a020b 0x38a028
    0038a024
    0038a024loc_38a024:
    0038a024b 0x38a03c
    0038a028
    0038a028loc_38a028:
    0038a028bl runtime.gcWriteBarrier2
    0038a02cstr x2, [x25]
    0038a030ldr x3, [x1+56]
    0038a034str x3, [x25+8]
    0038a038b 0x38a03c
    0038a03c
    0038a03cloc_38a03c:
    0038a03cstr x2, [x1+56]
    0038a040ldr x1, [sp+184]
    0038a044ldrsb x27, [x1]
    0038a048ldr x2, [sp+152]
    0038a04cldr x3, [sp+160]
    0038a050ldr x4, [sp+168]
    0038a054str x3, [x1+88]
    0038a058str x4, [x1+96]
    0038a05cadrp x27, 0x6c1000
    0038a060ldr w3, [x27+3056]
    0038a064cbz w3, 0x38a06c
    0038a068b 0x38a070
    0038a06c
    0038a06cloc_38a06c:
    0038a06cb 0x38a084
    0038a070
    0038a070loc_38a070:
    0038a070bl runtime.gcWriteBarrier2
    0038a074str x2, [x25]
    0038a078ldr x3, [x1+80]
    0038a07cstr x3, [x25+8]
    0038a080b 0x38a084
    0038a084
    0038a084loc_38a084:
    0038a084str x2, [x1+80]
    0038a088ldr x1, [sp+184]
    0038a08cldrsb x27, [x1]
    0038a090ldr x2, [sp+128]
    0038a094ldr x3, [sp+136]
    0038a098ldr x4, [sp+144]
    0038a09cstr x3, [x1+112]
    0038a0a0str x4, [x1+120]
    0038a0a4adrp x27, 0x6c1000
    0038a0a8ldr w3, [x27+3056]
    0038a0accbz w3, 0x38a0b4
    0038a0b0b 0x38a0b8
    0038a0b4
    0038a0b4loc_38a0b4:
    0038a0b4b 0x38a0cc
    0038a0b8
    0038a0b8loc_38a0b8:
    0038a0b8bl runtime.gcWriteBarrier2
    0038a0bcstr x2, [x25]
    0038a0c0ldr x3, [x1+104]
    0038a0c4str x3, [x25+8]
    0038a0c8b 0x38a0cc
    0038a0cc
    0038a0ccloc_38a0cc:
    0038a0ccstr x2, [x1+104]
    0038a0d0ldr x1, [sp+184]
    0038a0d4ldrsb x27, [x1]
    0038a0d8ldr x2, [sp+1048]
    0038a0dcldrsb x27, [x2]
    0038a0e0ldr x3, [x2+128]
    0038a0e4ldr x2, [x2+136]
    0038a0e8str x2, [x1+136]
    0038a0ecadrp x27, 0x6c1000
    0038a0f0ldr w2, [x27+3056]
    0038a0f4cbz w2, 0x38a0fc
    0038a0f8b 0x38a100
    0038a0fc
    0038a0fcloc_38a0fc:
    0038a0fcb 0x38a114
    0038a100
    0038a100loc_38a100:
    0038a100bl runtime.gcWriteBarrier2
    0038a104str x3, [x25]
    0038a108ldr x2, [x1+128]
    0038a10cstr x2, [x25+8]
    0038a110b 0x38a114
    0038a114
    0038a114loc_38a114:
    0038a114str x3, [x1+128]
    0038a118ldr x1, [sp+184]
    0038a11cldrsb x27, [x1]
    0038a120ldr x2, [sp+1048]
    0038a124ldrsb x27, [x2]
    0038a128ldrb w2, [x2+144]
    0038a12cstrb w2, [x1+144]
    0038a130ldr x1, [sp+184]
    0038a134ldrsb x27, [x1]
    0038a138ldr x2, [sp+104]
    0038a13cldr x3, [sp+112]
    0038a140ldr x4, [sp+120]
    0038a144str x3, [x1+160]
    0038a148str x4, [x1+168]
    0038a14cadrp x27, 0x6c1000
    0038a150ldr w3, [x27+3056]
    0038a154cbz w3, 0x38a15c
    0038a158b 0x38a160
    0038a15c
    0038a15cloc_38a15c:
    0038a15cb 0x38a174
    0038a160
    0038a160loc_38a160:
    0038a160bl runtime.gcWriteBarrier2
    0038a164str x2, [x25]
    0038a168ldr x3, [x1+152]
    0038a16cstr x3, [x25+8]
    0038a170b 0x38a174
    0038a174
    0038a174loc_38a174:
    0038a174str x2, [x1+152]
    0038a178ldr x1, [sp+184]
    0038a17cldrsb x27, [x1]
    0038a180ldr x2, [sp+80]
    0038a184ldr x3, [sp+88]
    0038a188ldr x4, [sp+96]
    0038a18cstr x3, [x1+184]
    0038a190str x4, [x1+192]
    0038a194adrp x27, 0x6c1000
    0038a198ldr w3, [x27+3056]
    0038a19ccbz w3, 0x38a1a4
    0038a1a0b 0x38a1a8
    0038a1a4
    0038a1a4loc_38a1a4:
    0038a1a4b 0x38a1bc
    0038a1a8
    0038a1a8loc_38a1a8:
    0038a1a8bl runtime.gcWriteBarrier2
    0038a1acstr x2, [x25]
    0038a1b0ldr x3, [x1+176]
    0038a1b4str x3, [x25+8]
    0038a1b8b 0x38a1bc
    0038a1bc
    0038a1bcloc_38a1bc:
    0038a1bcstr x2, [x1+176]
    0038a1c0ldr x1, [sp+184]
    0038a1c4ldrsb x27, [x1]
    0038a1c8ldr x2, [sp+1048]
    0038a1ccldrsb x27, [x2]
    0038a1d0ldrb w2, [x2+200]
    0038a1d4strb w2, [x1+200]
    0038a1d8ldr x1, [sp+184]
    0038a1dcldrsb x27, [x1]
    0038a1e0ldr x2, [sp+56]
    0038a1e4ldr x3, [sp+64]
    0038a1e8ldr x4, [sp+72]
    0038a1ecstr x3, [x1+216]
    0038a1f0str x4, [x1+224]
    0038a1f4adrp x27, 0x6c1000
    0038a1f8ldr w3, [x27+3056]
    0038a1fccbz w3, 0x38a204
    0038a200b 0x38a208
    0038a204
    0038a204loc_38a204:
    0038a204b 0x38a21c
    0038a208
    0038a208loc_38a208:
    0038a208bl runtime.gcWriteBarrier2
    0038a20cstr x2, [x25]
    0038a210ldr x3, [x1+208]
    0038a214str x3, [x25+8]
    0038a218b 0x38a21c
    0038a21c
    0038a21cloc_38a21c:
    0038a21cstr x2, [x1+208]
    0038a220ldr x1, [sp+184]
    0038a224ldrsb x27, [x1]
    0038a228ldr x2, [sp+1008]
    0038a22cldr x3, [sp+1016]
    0038a230ldr x4, [sp+1024]
    0038a234str x3, [x1+240]
    0038a238str x4, [x1+248]
    0038a23cadrp x27, 0x6c1000
    0038a240ldr w3, [x27+3056]
    0038a244cbz w3, 0x38a24c
    0038a248b 0x38a250
    0038a24c
    0038a24cloc_38a24c:
    0038a24cb 0x38a264
    0038a250
    0038a250loc_38a250:
    0038a250bl runtime.gcWriteBarrier2
    0038a254str x2, [x25]
    0038a258ldr x3, [x1+232]
    0038a25cstr x3, [x25+8]
    0038a260b 0x38a264
    0038a264
    0038a264loc_38a264:
    0038a264str x2, [x1+232]
    0038a268ldr x1, [sp+184]
    0038a26cldrsb x27, [x1]
    0038a270ldr x2, [sp+984]
    0038a274ldr x3, [sp+992]
    0038a278ldr x4, [sp+1000]
    0038a27cstr x3, [x1+264]
    0038a280str x4, [x1+272]
    0038a284adrp x27, 0x6c1000
    0038a288ldr w3, [x27+3056]
    0038a28ccbz w3, 0x38a294
    0038a290b 0x38a298
    0038a294
    0038a294loc_38a294:
    0038a294b 0x38a2ac
    0038a298
    0038a298loc_38a298:
    0038a298bl runtime.gcWriteBarrier2
    0038a29cstr x2, [x25]
    0038a2a0ldr x3, [x1+256]
    0038a2a4str x3, [x25+8]
    0038a2a8b 0x38a2ac
    0038a2ac
    0038a2acloc_38a2ac:
    0038a2acstr x2, [x1+256]
    0038a2b0ldr x1, [sp+184]
    0038a2b4ldrsb x27, [x1]
    0038a2b8ldr x2, [sp+1048]
    0038a2bcldrsb x27, [x2]
    0038a2c0ldrb w2, [x2+280]
    0038a2c4strb w2, [x1+280]
    0038a2c8ldr x1, [sp+184]
    0038a2ccldrsb x27, [x1]
    0038a2d0ldr x2, [sp+960]
    0038a2d4ldr x3, [sp+968]
    0038a2d8ldr x4, [sp+976]
    0038a2dcstr x3, [x1+296]
    0038a2e0str x4, [x1+304]
    0038a2e4adrp x27, 0x6c1000
    0038a2e8ldr w3, [x27+3056]
    0038a2eccbz w3, 0x38a2f4
    0038a2f0b 0x38a2f8
    0038a2f4
    0038a2f4loc_38a2f4:
    0038a2f4b 0x38a30c
    0038a2f8
    0038a2f8loc_38a2f8:
    0038a2f8bl runtime.gcWriteBarrier2
    0038a2fcstr x2, [x25]
    0038a300ldr x3, [x1+288]
    0038a304str x3, [x25+8]
    0038a308b 0x38a30c
    0038a30c
    0038a30cloc_38a30c:
    0038a30cstr x2, [x1+288]
    0038a310ldr x1, [sp+184]
    0038a314ldrsb x27, [x1]
    0038a318ldr x2, [sp+1048]
    0038a31cldrsb x27, [x2]
    0038a320ldrb w2, [x2+312]
    0038a324strb w2, [x1+312]
    0038a328ldr x1, [sp+184]
    0038a32cldrsb x27, [x1]
    0038a330ldr x2, [sp+936]
    0038a334ldr x3, [sp+944]
    0038a338ldr x4, [sp+952]
    0038a33cstr x3, [x1+328]
    0038a340str x4, [x1+336]
    0038a344adrp x27, 0x6c1000
    0038a348ldr w3, [x27+3056]
    0038a34ccbz w3, 0x38a354
    0038a350b 0x38a358
    0038a354
    0038a354loc_38a354:
    0038a354b 0x38a36c
    0038a358
    0038a358loc_38a358:
    0038a358bl runtime.gcWriteBarrier2
    0038a35cstr x2, [x25]
    0038a360ldr x3, [x1+320]
    0038a364str x3, [x25+8]
    0038a368b 0x38a36c
    0038a36c
    0038a36cloc_38a36c:
    0038a36cstr x2, [x1+320]
    0038a370ldr x1, [sp+184]
    0038a374ldrsb x27, [x1]
    0038a378ldr x2, [sp+1048]
    0038a37cldrsb x27, [x2]
    0038a380ldrb w2, [x2+344]
    0038a384strb w2, [x1+344]
    0038a388ldr x1, [sp+184]
    0038a38cldrsb x27, [x1]
    0038a390ldr x2, [sp+912]
    0038a394ldr x3, [sp+920]
    0038a398ldr x4, [sp+928]
    0038a39cstr x3, [x1+360]
    0038a3a0str x4, [x1+368]
    0038a3a4adrp x27, 0x6c1000
    0038a3a8ldr w3, [x27+3056]
    0038a3accbz w3, 0x38a3b4
    0038a3b0b 0x38a3b8
    0038a3b4
    0038a3b4loc_38a3b4:
    0038a3b4b 0x38a3cc
    0038a3b8
    0038a3b8loc_38a3b8:
    0038a3b8bl runtime.gcWriteBarrier2
    0038a3bcstr x2, [x25]
    0038a3c0ldr x3, [x1+352]
    0038a3c4str x3, [x25+8]
    0038a3c8b 0x38a3cc
    0038a3cc
    0038a3ccloc_38a3cc:
    0038a3ccstr x2, [x1+352]
    0038a3d0ldr x1, [sp+184]
    0038a3d4ldrsb x27, [x1]
    0038a3d8ldr x2, [sp+888]
    0038a3dcldr x3, [sp+896]
    0038a3e0ldr x4, [sp+904]
    0038a3e4str x3, [x1+384]
    0038a3e8str x4, [x1+392]
    0038a3ecadrp x27, 0x6c1000
    0038a3f0ldr w3, [x27+3056]
    0038a3f4cbz w3, 0x38a3fc
    0038a3f8b 0x38a400
    0038a3fc
    0038a3fcloc_38a3fc:
    0038a3fcb 0x38a414
    0038a400
    0038a400loc_38a400:
    0038a400bl runtime.gcWriteBarrier2
    0038a404str x2, [x25]
    0038a408ldr x3, [x1+376]
    0038a40cstr x3, [x25+8]
    0038a410b 0x38a414
    0038a414
    0038a414loc_38a414:
    0038a414str x2, [x1+376]
    0038a418ldr x1, [sp+184]
    0038a41cldrsb x27, [x1]
    0038a420ldr x2, [sp+864]
    0038a424ldr x3, [sp+872]
    0038a428ldr x4, [sp+880]
    0038a42cstr x3, [x1+408]
    0038a430str x4, [x1+416]
    0038a434adrp x27, 0x6c1000
    0038a438ldr w3, [x27+3056]
    0038a43ccbz w3, 0x38a444
    0038a440b 0x38a448
    0038a444
    0038a444loc_38a444:
    0038a444b 0x38a45c
    0038a448
    0038a448loc_38a448:
    0038a448bl runtime.gcWriteBarrier2
    0038a44cstr x2, [x25]
    0038a450ldr x3, [x1+400]
    0038a454str x3, [x25+8]
    0038a458b 0x38a45c
    0038a45c
    0038a45cloc_38a45c:
    0038a45cstr x2, [x1+400]
    0038a460ldr x1, [sp+184]
    0038a464ldrsb x27, [x1]
    0038a468ldr x2, [sp+1048]
    0038a46cldrsb x27, [x2]
    0038a470ldrb w2, [x2+424]
    0038a474strb w2, [x1+424]
    0038a478ldr x1, [sp+184]
    0038a47cldrsb x27, [x1]
    0038a480ldr x2, [sp+840]
    0038a484ldr x3, [sp+848]
    0038a488ldr x4, [sp+856]
    0038a48cstr x3, [x1+440]
    0038a490str x4, [x1+448]
    0038a494adrp x27, 0x6c1000
    0038a498ldr w3, [x27+3056]
    0038a49ccbz w3, 0x38a4a4
    0038a4a0b 0x38a4a8
    0038a4a4
    0038a4a4loc_38a4a4:
    0038a4a4b 0x38a4bc
    0038a4a8
    0038a4a8loc_38a4a8:
    0038a4a8bl runtime.gcWriteBarrier2
    0038a4acstr x2, [x25]
    0038a4b0ldr x3, [x1+432]
    0038a4b4str x3, [x25+8]
    0038a4b8b 0x38a4bc
    0038a4bc
    0038a4bcloc_38a4bc:
    0038a4bcstr x2, [x1+432]
    0038a4c0ldr x1, [sp+184]
    0038a4c4ldrsb x27, [x1]
    0038a4c8ldr x2, [sp+816]
    0038a4ccldr x3, [sp+824]
    0038a4d0ldr x4, [sp+832]
    0038a4d4str x3, [x1+464]
    0038a4d8str x4, [x1+472]
    0038a4dcadrp x27, 0x6c1000
    0038a4e0ldr w3, [x27+3056]
    0038a4e4cbz w3, 0x38a4ec
    0038a4e8b 0x38a4f0
    0038a4ec
    0038a4ecloc_38a4ec:
    0038a4ecb 0x38a504
    0038a4f0
    0038a4f0loc_38a4f0:
    0038a4f0bl runtime.gcWriteBarrier2
    0038a4f4str x2, [x25]
    0038a4f8ldr x3, [x1+456]
    0038a4fcstr x3, [x25+8]
    0038a500b 0x38a504
    0038a504
    0038a504loc_38a504:
    0038a504str x2, [x1+456]
    0038a508ldr x1, [sp+184]
    0038a50cldrsb x27, [x1]
    0038a510ldr x2, [sp+792]
    0038a514ldr x3, [sp+800]
    0038a518ldr x4, [sp+808]
    0038a51cstr x3, [x1+488]
    0038a520str x4, [x1+496]
    0038a524adrp x27, 0x6c1000
    0038a528ldr w3, [x27+3056]
    0038a52ccbz w3, 0x38a534
    0038a530b 0x38a538
    0038a534
    0038a534loc_38a534:
    0038a534b 0x38a54c
    0038a538
    0038a538loc_38a538:
    0038a538bl runtime.gcWriteBarrier2
    0038a53cstr x2, [x25]
    0038a540ldr x3, [x1+480]
    0038a544str x3, [x25+8]
    0038a548b 0x38a54c
    0038a54c
    0038a54cloc_38a54c:
    0038a54cstr x2, [x1+480]
    0038a550ldr x1, [sp+184]
    0038a554ldrsb x27, [x1]
    0038a558ldr x2, [sp+744]
    0038a55cldr x3, [sp+752]
    0038a560ldr x4, [sp+760]
    0038a564str x3, [x1+512]
    0038a568str x4, [x1+520]
    0038a56cadrp x27, 0x6c1000
    0038a570ldr w3, [x27+3056]
    0038a574cbz w3, 0x38a57c
    0038a578b 0x38a580
    0038a57c
    0038a57cloc_38a57c:
    0038a57cb 0x38a594
    0038a580
    0038a580loc_38a580:
    0038a580bl runtime.gcWriteBarrier2
    0038a584str x2, [x25]
    0038a588ldr x3, [x1+504]
    0038a58cstr x3, [x25+8]
    0038a590b 0x38a594
    0038a594
    0038a594loc_38a594:
    0038a594str x2, [x1+504]
    0038a598ldr x1, [sp+184]
    0038a59cldrsb x27, [x1]
    0038a5a0ldr x2, [sp+720]
    0038a5a4ldr x3, [sp+728]
    0038a5a8ldr x4, [sp+736]
    0038a5acstr x3, [x1+536]
    0038a5b0str x4, [x1+544]
    0038a5b4adrp x27, 0x6c1000
    0038a5b8ldr w3, [x27+3056]
    0038a5bccbz w3, 0x38a5c4
    0038a5c0b 0x38a5c8
    0038a5c4
    0038a5c4loc_38a5c4:
    0038a5c4b 0x38a5dc
    0038a5c8
    0038a5c8loc_38a5c8:
    0038a5c8bl runtime.gcWriteBarrier2
    0038a5ccstr x2, [x25]
    0038a5d0ldr x3, [x1+528]
    0038a5d4str x3, [x25+8]
    0038a5d8b 0x38a5dc
    0038a5dc
    0038a5dcloc_38a5dc:
    0038a5dcstr x2, [x1+528]
    0038a5e0ldr x0, [sp+184]
    0038a5e4str x0, [sp+48]
    0038a5e8ldp x29, x30, [sp-8]
    0038a5ecadd sp, sp, 1040
    0038a5f0ret x30
    0038a5f4
    0038a5f4loc_38a5f4:
    0038a5f4str x0, [sp+8]
    0038a5f8mov x3, x30
    0038a5fcbl runtime.morestack_noctxt.abi0
    0038a600ldr x0, [sp+8]
    0038a604b 0x389a70
    0038a608udf 0
    0038a60cudf 0
    00389a70