File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    00026cd0
    00026cd0runtime.mallocgcSmallNoscan: ; void runtime.mallocgcSmallNoscan(uintptr size, internal/abi.Type * typ, bool needzero)
    00026cd0ldr x16, [x28+16]
    00026cd4subs xzr, sp, x16
    00026cd8b.ls 0x26ee0
    00026cdcstr x30, [sp-96]!
    00026ce0stur x29, [sp-8]
    00026ce4sub x29, sp, 8
    00026ce8str x0, [sp+104]
    00026cecstrb w2, [sp+120]
    00026cf0bl runtime.acquirem
    00026cf4str x0, [sp+80]
    00026cf8orr x1, xzr, 1
    00026cfcstr w1, [x0+240]
    00026d00bl runtime.getMCache
    00026d04str x0, [sp+56]
    00026d08ldr x1, [sp+104]
    00026d0csubs xzr, x1, 1016
    00026d10b.hi 0x26d38
    00026d14mov x0, x1
    00026d18orr x1, xzr, 8
    00026d1cbl runtime.divRoundUp
    00026d20subs xzr, x0, 129
    00026d24b.hs 0x26ed4
    00026d28adrp x2, 0x99f000
    00026d2cadd x2, x2, 160
    00026d30ldrb w2, [x2+x0]
    00026d34b 0x26d58
    00026d38
    00026d38loc_26d38:
    00026d38sub x0, x1, 1024
    00026d3corr x1, xzr, 128
    00026d40bl runtime.divRoundUp
    00026d44subs xzr, x0, 249
    00026d48b.hs 0x26ecc
    00026d4cadrp x3, 0x99f000
    00026d50add x3, x3, 4064
    00026d54ldrb w2, [x3+x0]
    00026d58
    00026d58loc_26d58:
    00026d58ubfm x0, x2, 0, 7
    00026d5csubs xzr, x0, 68
    00026d60b.hs 0x26ec4
    00026d64adrp x3, 0x99f000
    00026d68add x3, x3, 480
    00026d6cldrh w3, [x3+x0]
    00026d70strh w3, [sp+46]
    00026d74mov x0, x2
    00026d78orr x1, xzr, 1
    00026d7cbl runtime.makeSpanClass
    00026d80ubfm x2, x0, 0, 7
    00026d84subs xzr, x2, 136
    00026d88b.hs 0x26eb8
    00026d8cstrb w0, [sp+44]
    00026d90ldr x1, [sp+56]
    00026d94ldrsb x27, [x1]
    00026d98add x1, x1, 48
    00026d9cldr x0, [x1+3*x2]
    00026da0str x0, [sp+48]
    00026da4bl runtime.nextFreeFast
    00026da8cbz x0, 0x26db8
    00026dacldr x1, [sp+48]
    00026db0mov x2, xzr
    00026db4b 0x26dc4
    00026db8
    00026db8loc_26db8:
    00026db8ldr x0, [sp+56]
    00026dbcldrb w1, [sp+44]
    00026dc0bl runtime.(*mcache).nextFree
    00026dc4
    00026dc4loc_26dc4:
    00026dc4strb w2, [sp+45]
    00026dc8ldrh w3, [sp+46]
    00026dccstr x3, [sp+64]
    00026dd0str x0, [sp+72]
    00026dd4ldrb w4, [sp+120]
    00026dd8tbz w4, 0, 0x26e00
    00026ddcldrb w4, [x1+100]
    00026de0cbz w4, 0x26e00
    00026de4str x1, [sp+48]
    00026de8mov x1, x3
    00026decbl runtime.memclrNoHeapPointers
    00026df0ldr x0, [sp+72]
    00026df4ldr x1, [sp+48]
    00026df8ldrb w2, [sp+45]
    00026dfcldr x3, [sp+64]
    00026e00
    00026e00loc_26e00:
    00026e00dmb
    00026e04ldrh w4, [x1+48]
    00026e08strh w4, [x1+52]
    00026e0cadrp x27, 0xa25000
    00026e10ldrb w4, [x27+3056]
    00026e14tbz w4, 0, 0x26e34
    00026e18mov x2, x0
    00026e1cmov x0, x1
    00026e20mov x1, x2
    00026e24bl runtime.gcmarknewobject
    00026e28ldr x0, [sp+72]
    00026e2cldrb w2, [sp+45]
    00026e30ldr x3, [sp+64]
    00026e34
    00026e34loc_26e34:
    00026e34ldr x4, [sp+56]
    00026e38ldr x5, [x4]
    00026e3csub x5, x5, x3
    00026e40str x5, [x4]
    00026e44tbnz x5, 63, 0x26e5c
    00026e48adrp x27, 0x99a000
    00026e4cldr x5, [x27+1688]
    00026e50ldr x4, [x4+8]
    00026e54subs xzr, x4, x5
    00026e58b.eq 0x26e6c
    00026e5c
    00026e5cloc_26e5c:
    00026e5cmov x1, x0
    00026e60mov x2, x3
    00026e64ldr x0, [sp+80]
    00026e68bl runtime.profilealloc
    00026e6c
    00026e6cloc_26e6c:
    00026e6cldr x0, [sp+80]
    00026e70str wzr, [x0+240]
    00026e74bl runtime.releasem
    00026e78ldrb w0, [sp+45]
    00026e7ctbz w0, 0, 0x26ea4
    00026e80mov x0, xzr
    00026e84mov x1, xzr
    00026e88mov x2, xzr
    00026e8cbl runtime.gcTrigger.test
    00026e90tbz w0, 0, 0x26ea4
    00026e94mov x0, xzr
    00026e98mov x1, xzr
    00026e9cmov x2, xzr
    00026ea0bl runtime.gcStart
    00026ea4
    00026ea4loc_26ea4:
    00026ea4ldr x0, [sp+72]
    00026ea8ldr x1, [sp+64]
    00026eacldur x29, [sp-8]
    00026eb0ldr x30, [sp], 96
    00026eb4ret x30
    00026eb8
    00026eb8loc_26eb8:
    00026eb8mov x0, x2
    00026ebcmovz x1, 136
    00026ec0bl runtime.panicIndex
    00026ec4
    00026ec4loc_26ec4:
    00026ec4movz x1, 68
    00026ec8bl runtime.panicIndex
    00026ecc
    00026eccloc_26ecc:
    00026eccmovz x1, 249
    00026ed0bl runtime.panicIndexU
    00026ed4
    00026ed4loc_26ed4:
    00026ed4movz x1, 129
    00026ed8bl runtime.panicIndexU
    00026edchint
    00026ee0
    00026ee0loc_26ee0:
    00026ee0stp x0, x1, [sp+8]
    00026ee4strb w2, [sp+24]
    00026ee8mov x3, x30
    00026eecbl runtime.morestack_noctxt.abi0
    00026ef0ldp x0, x1, [sp+8]
    00026ef4ldrb w2, [sp+24]
    00026ef8b 0x26cd0
    00026efcudf 0
    00026cd0
    00026f00
    00026f00runtime.mallocgcSmallScanNoHeader: ; void runtime.mallocgcSmallScanNoHeader(uintptr size, internal/abi.Type * typ, bool needzero)
    00026f00ldr x16, [x28+16]
    00026f04subs xzr, sp, x16
    00026f08b.ls 0x27134
    00026f0cstr x30, [sp-96]!
    00026f10stur x29, [sp-8]
    00026f14sub x29, sp, 8
    00026f18str x0, [sp+104]
    00026f1cstr x1, [sp+112]
    00026f20strb w2, [sp+120]
    00026f24bl runtime.acquirem
    00026f28str x0, [sp+80]
    00026f2corr x1, xzr, 1
    00026f30str w1, [x0+240]
    00026f34bl runtime.getMCache
    00026f38str x0, [sp+56]
    00026f3cldr x0, [sp+104]
    00026f40orr x1, xzr, 8
    00026f44bl runtime.divRoundUp
    00026f48subs xzr, x0, 129
    00026f4cb.hs 0x27128
    00026f50adrp x2, 0x99f000
    00026f54add x2, x2, 160
    00026f58ldrb w0, [x2+x0]
    00026f5cstrb w0, [sp+44]
    00026f60mov x1, xzr
    00026f64bl runtime.makeSpanClass
    00026f68ubfm x2, x0, 0, 7
    00026f6csubs xzr, x2, 136
    00026f70b.hs 0x2711c
    00026f74strb w0, [sp+43]
    00026f78ldr x1, [sp+56]
    00026f7cldrsb x27, [x1]
    00026f80add x1, x1, 48
    00026f84ldr x0, [x1+3*x2]
    00026f88str x0, [sp+48]
    00026f8cbl runtime.nextFreeFast
    00026f90cbz x0, 0x26fa0
    00026f94ldr x1, [sp+48]
    00026f98mov x2, xzr
    00026f9cb 0x26fac
    00026fa0
    00026fa0loc_26fa0:
    00026fa0ldr x0, [sp+56]
    00026fa4ldrb w1, [sp+43]
    00026fa8bl runtime.(*mcache).nextFree
    00026fac
    00026facloc_26fac:
    00026facstrb w2, [sp+45]
    00026fb0str x1, [sp+48]
    00026fb4str x0, [sp+72]
    00026fb8ldrb w3, [sp+120]
    00026fbctbz w3, 0, 0x26fdc
    00026fc0ldrb w4, [x1+100]
    00026fc4cbz w4, 0x26fdc
    00026fc8ldr x1, [sp+104]
    00026fccbl runtime.memclrNoHeapPointers
    00026fd0ldr x0, [sp+72]
    00026fd4ldr x1, [sp+48]
    00026fd8ldrb w2, [sp+45]
    00026fdc
    00026fdcloc_26fdc:
    00026fdcldrb w4, [sp+44]
    00026fe0mov x5, x4
    00026fe4subs wzr, w5, 1
    00026fe8b.ne 0x27000
    00026fecldr x3, [sp+56]
    00026ff0ldr x5, [x3+16]
    00026ff4add x5, x5, 8
    00026ff8str x5, [x3+16]
    00026ffcb 0x2703c
    00027000
    00027000loc_27000:
    00027000mov x4, x0
    00027004mov x0, x4
    00027008ldr x2, [sp+112]
    0002700cmov x3, x1
    00027010ldr x1, [sp+104]
    00027014bl runtime.heapSetTypeNoHeader
    00027018ldr x4, [sp+56]
    0002701cldr x5, [x4+16]
    00027020add x5, x5, x0
    00027024str x5, [x4+16]
    00027028ldr x0, [sp+72]
    0002702cldr x1, [sp+48]
    00027030ldrb w2, [sp+45]
    00027034mov x3, x4
    00027038ldrb w4, [sp+44]
    0002703c
    0002703cloc_2703c:
    0002703csubs xzr, x4, 68
    00027040b.hs 0x27110
    00027044adrp x5, 0x99e000
    00027048add x5, x5, 480
    0002704cldrh w4, [x5+x4]
    00027050dmb
    00027054ldrh w5, [x1+48]
    00027058strh w5, [x1+52]
    0002705cadrp x27, 0xa24000
    00027060ldrb w5, [x27+3056]
    00027064tbz w5, 0, 0x2708c
    00027068strh w4, [sp+46]
    0002706cmov x2, x0
    00027070mov x0, x1
    00027074mov x1, x2
    00027078bl runtime.gcmarknewobject
    0002707cldr x0, [sp+72]
    00027080ldrb w2, [sp+45]
    00027084ldr x3, [sp+56]
    00027088ldrh w4, [sp+46]
    0002708c
    0002708cloc_2708c:
    0002708cstr x4, [sp+64]
    00027090ldr x5, [x3]
    00027094sub x5, x5, x4
    00027098str x5, [x3]
    0002709ctbnz x5, 63, 0x270b4
    000270a0adrp x27, 0x999000
    000270a4ldr x5, [x27+1688]
    000270a8ldr x3, [x3+8]
    000270acsubs xzr, x3, x5
    000270b0b.eq 0x270c4
    000270b4
    000270b4loc_270b4:
    000270b4mov x1, x0
    000270b8mov x2, x4
    000270bcldr x0, [sp+80]
    000270c0bl runtime.profilealloc
    000270c4
    000270c4loc_270c4:
    000270c4ldr x0, [sp+80]
    000270c8str wzr, [x0+240]
    000270ccbl runtime.releasem
    000270d0ldrb w0, [sp+45]
    000270d4tbz w0, 0, 0x270fc
    000270d8mov x0, xzr
    000270dcmov x1, xzr
    000270e0mov x2, xzr
    000270e4bl runtime.gcTrigger.test
    000270e8tbz w0, 0, 0x270fc
    000270ecmov x0, xzr
    000270f0mov x1, xzr
    000270f4mov x2, xzr
    000270f8bl runtime.gcStart
    000270fc
    000270fcloc_270fc:
    000270fcldr x0, [sp+72]
    00027100ldr x1, [sp+64]
    00027104ldur x29, [sp-8]
    00027108ldr x30, [sp], 96
    0002710cret x30
    00027110
    00027110loc_27110:
    00027110mov x0, x4
    00027114movz x1, 68
    00027118bl runtime.panicIndex
    0002711c
    0002711cloc_2711c:
    0002711cmov x0, x2
    00027120movz x1, 136
    00027124bl runtime.panicIndex
    00027128
    00027128loc_27128:
    00027128movz x1, 129
    0002712cbl runtime.panicIndexU
    00027130hint
    00027134
    00027134loc_27134:
    00027134stp x0, x1, [sp+8]
    00027138strb w2, [sp+24]
    0002713cmov x3, x30
    00027140bl runtime.morestack_noctxt.abi0
    00027144ldp x0, x1, [sp+8]
    00027148ldrb w2, [sp+24]
    0002714cb 0x26f00
    00026f00
    00027150
    00027150runtime.mallocgcSmallScanHeader: ; void runtime.mallocgcSmallScanHeader(uintptr size, internal/abi.Type * typ, bool needzero)
    00027150ldr x16, [x28+16]
    00027154subs xzr, sp, x16
    00027158b.ls 0x27394
    0002715cstr x30, [sp-112]!
    00027160stur x29, [sp-8]
    00027164sub x29, sp, 8
    00027168str x0, [sp+120]
    0002716cstr x1, [sp+128]
    00027170strb w2, [sp+136]
    00027174bl runtime.acquirem
    00027178str x0, [sp+88]
    0002717corr x1, xzr, 1
    00027180str w1, [x0+240]
    00027184bl runtime.getMCache
    00027188str x0, [sp+64]
    0002718cldr x1, [sp+120]
    00027190add x2, x1, 8
    00027194subs xzr, x2, 1016
    00027198b.hi 0x271c0
    0002719cmov x0, x2
    000271a0orr x1, xzr, 8
    000271a4bl runtime.divRoundUp
    000271a8subs xzr, x0, 129
    000271acb.hs 0x27388
    000271b0adrp x2, 0x99e000
    000271b4add x2, x2, 160
    000271b8ldrb w2, [x2+x0]
    000271bcb 0x271e0
    000271c0
    000271c0loc_271c0:
    000271c0sub x0, x1, 1016
    000271c4orr x1, xzr, 128
    000271c8bl runtime.divRoundUp
    000271ccsubs xzr, x0, 249
    000271d0b.hs 0x27380
    000271d4adrp x3, 0x99e000
    000271d8add x3, x3, 4064
    000271dcldrb w2, [x3+x0]
    000271e0
    000271e0loc_271e0:
    000271e0ubfm x0, x2, 0, 7
    000271e4subs xzr, x0, 68
    000271e8b.hs 0x27378
    000271ecadrp x3, 0x99e000
    000271f0add x3, x3, 480
    000271f4ldrh w3, [x3+x0]
    000271f8strh w3, [sp+54]
    000271fcmov x0, x2
    00027200mov x1, xzr
    00027204bl runtime.makeSpanClass
    00027208ubfm x2, x0, 0, 7
    0002720csubs xzr, x2, 136
    00027210b.hs 0x2736c
    00027214strb w0, [sp+52]
    00027218ldr x1, [sp+64]
    0002721cldrsb x27, [x1]
    00027220add x1, x1, 48
    00027224ldr x0, [x1+3*x2]
    00027228str x0, [sp+56]
    0002722cbl runtime.nextFreeFast
    00027230cbz x0, 0x27240
    00027234ldr x1, [sp+56]
    00027238mov x2, xzr
    0002723cb 0x2724c
    00027240
    00027240loc_27240:
    00027240ldr x0, [sp+64]
    00027244ldrb w1, [sp+52]
    00027248bl runtime.(*mcache).nextFree
    0002724c
    0002724cloc_2724c:
    0002724cstrb w2, [sp+53]
    00027250str x1, [sp+56]
    00027254ldrh w3, [sp+54]
    00027258str x3, [sp+72]
    0002725cstr x0, [sp+80]
    00027260ldrb w4, [sp+136]
    00027264tbz w4, 0, 0x2727c
    00027268ldrb w4, [x1+100]
    0002726ccbz w4, 0x2727c
    00027270mov x1, x3
    00027274bl runtime.memclrNoHeapPointers
    00027278ldr x0, [sp+80]
    0002727c
    0002727cloc_2727c:
    0002727corr x1, xzr, 8
    00027280bl runtime.add
    00027284str x0, [sp+96]
    00027288mov x2, x0
    0002728cldr x3, [sp+72]
    00027290sub x1, x3, 8
    00027294mov x0, x2
    00027298ldr x2, [sp+128]
    0002729cldr x3, [sp+80]
    000272a0ldr x4, [sp+56]
    000272a4bl runtime.heapSetTypeSmallHeader
    000272a8ldr x2, [sp+64]
    000272acldr x3, [x2+16]
    000272b0add x3, x3, x0
    000272b4str x3, [x2+16]
    000272b8dmb
    000272bcldr x0, [sp+56]
    000272c0ldrh w3, [x0+48]
    000272c4strh w3, [x0+52]
    000272c8adrp x27, 0xa24000
    000272ccldrb w3, [x27+3056]
    000272d0tbz w3, 0, 0x272e8
    000272d4ldr x1, [sp+96]
    000272d8mov x2, x1
    000272dcmov x1, x2
    000272e0bl runtime.gcmarknewobject
    000272e4ldr x2, [sp+64]
    000272e8
    000272e8loc_272e8:
    000272e8ldr x3, [x2]
    000272ecldr x4, [sp+72]
    000272f0sub x3, x3, x4
    000272f4str x3, [x2]
    000272f8tbnz x3, 63, 0x27310
    000272fcadrp x27, 0x999000
    00027300ldr x3, [x27+1688]
    00027304ldr x5, [x2+8]
    00027308subs xzr, x5, x3
    0002730cb.eq 0x27320
    00027310
    00027310loc_27310:
    00027310ldr x0, [sp+88]
    00027314ldr x1, [sp+96]
    00027318mov x2, x4
    0002731cbl runtime.profilealloc
    00027320
    00027320loc_27320:
    00027320ldr x0, [sp+88]
    00027324str wzr, [x0+240]
    00027328bl runtime.releasem
    0002732cldrb w0, [sp+53]
    00027330tbz w0, 0, 0x27358
    00027334mov x0, xzr
    00027338mov x1, xzr
    0002733cmov x2, xzr
    00027340bl runtime.gcTrigger.test
    00027344tbz w0, 0, 0x27358
    00027348mov x0, xzr
    0002734cmov x1, xzr
    00027350mov x2, xzr
    00027354bl runtime.gcStart
    00027358
    00027358loc_27358:
    00027358ldr x0, [sp+96]
    0002735cldr x1, [sp+72]
    00027360ldur x29, [sp-8]
    00027364ldr x30, [sp], 112
    00027368ret x30
    0002736c
    0002736cloc_2736c:
    0002736cmov x0, x2
    00027370movz x1, 136
    00027374bl runtime.panicIndex
    00027378
    00027378loc_27378:
    00027378movz x1, 68
    0002737cbl runtime.panicIndex
    00027380
    00027380loc_27380:
    00027380movz x1, 249
    00027384bl runtime.panicIndexU
    00027388
    00027388loc_27388:
    00027388movz x1, 129
    0002738cbl runtime.panicIndexU
    00027390hint
    00027394
    00027394loc_27394:
    00027394stp x0, x1, [sp+8]
    00027398strb w2, [sp+24]
    0002739cmov x3, x30
    000273a0bl runtime.morestack_noctxt.abi0
    000273a4ldp x0, x1, [sp+8]
    000273a8ldrb w2, [sp+24]
    000273acb 0x27150
    00027150
    000273b0
    000273b0runtime.mallocgcLarge: ; void runtime.mallocgcLarge(uintptr size, internal/abi.Type * typ, bool needzero)
    000273b0ldr x16, [x28+16]
    000273b4subs xzr, sp, x16
    000273b8b.ls 0x27598
    000273bcstr x30, [sp-112]!
    000273c0stur x29, [sp-8]
    000273c4sub x29, sp, 8
    000273c8str x0, [sp+120]
    000273ccstr x1, [sp+128]
    000273d0strb w2, [sp+136]
    000273d4bl runtime.acquirem
    000273d8str x0, [sp+96]
    000273dcorr x1, xzr, 1
    000273e0str w1, [x0+240]
    000273e4bl runtime.getMCache
    000273e8str x0, [sp+56]
    000273ecldr x1, [sp+128]
    000273f0cbnz x1, 0x273fc
    000273f4orr x2, xzr, 1
    000273f8b 0x27410
    000273fc
    000273fcloc_273fc:
    000273fcmov x0, x1
    00027400bl internal/abi.(*Type).Pointers
    00027404eor x1, x0, 1
    00027408ldr x0, [sp+56]
    0002740cmov x2, x1
    00027410
    00027410loc_27410:
    00027410ldr x1, [sp+120]
    00027414bl runtime.(*mcache).allocLarge
    00027418orr x3, xzr, 1
    0002741cstrh w3, [x0+48]
    00027420strh w3, [x0+96]
    00027424adrp x27, 0xa24000
    00027428ldr w3, [x27+3056]
    0002742ccbz w3, 0x2743c
    00027430ldr x1, [x0+152]
    00027434bl runtime.gcWriteBarrier1
    00027438str x1, [x25]
    0002743c
    0002743cloc_2743c:
    0002743cstr x0, [sp+48]
    00027440str xzr, [x0+152]
    00027444ldr x1, [x0+104]
    00027448str x1, [sp+72]
    0002744cbl runtime.(*mspan).base
    00027450str x0, [sp+80]
    00027454dmb
    00027458ldr x1, [sp+48]
    0002745cldrh w2, [x1+48]
    00027460strh w2, [x1+52]
    00027464adrp x27, 0xa24000
    00027468ldrb w2, [x27+3056]
    0002746ctbz w2, 0, 0x27488
    00027470mov x2, x0
    00027474mov x0, x1
    00027478mov x1, x2
    0002747cbl runtime.gcmarknewobject
    00027480ldr x0, [sp+80]
    00027484ldr x1, [sp+48]
    00027488
    00027488loc_27488:
    00027488ldr x3, [sp+56]
    0002748cldr x4, [x3]
    00027490ldr x2, [sp+72]
    00027494sub x4, x4, x2
    00027498str x4, [x3]
    0002749ctbnz x4, 63, 0x274b4
    000274a0adrp x27, 0x999000
    000274a4ldr x4, [x27+1688]
    000274a8ldr x3, [x3+8]
    000274acsubs xzr, x3, x4
    000274b0b.eq 0x274c0
    000274b4
    000274b4loc_274b4:
    000274b4mov x1, x0
    000274b8ldr x0, [sp+96]
    000274bcbl runtime.profilealloc
    000274c0
    000274c0loc_274c0:
    000274c0ldr x0, [sp+96]
    000274c4str wzr, [x0+240]
    000274c8bl runtime.releasem
    000274ccmov x0, xzr
    000274d0mov x1, xzr
    000274d4mov x2, xzr
    000274d8bl runtime.gcTrigger.test
    000274dctbz w0, 0, 0x274f0
    000274e0mov x0, xzr
    000274e4mov x1, xzr
    000274e8mov x2, xzr
    000274ecbl runtime.gcStart
    000274f0
    000274f0loc_274f0:
    000274f0ldr x0, [sp+128]
    000274f4cbnz x0, 0x27500
    000274f8orr x1, xzr, 1
    000274fcb 0x2750c
    00027500
    00027500loc_27500:
    00027500bl internal/abi.(*Type).Pointers
    00027504eor x1, x0, 1
    00027508ldr x0, [sp+128]
    0002750c
    0002750cloc_2750c:
    0002750cstrb w1, [sp+47]
    00027510tbz w1, 0, 0x27528
    00027514ldrb w2, [sp+136]
    00027518tbz w2, 0, 0x27584
    0002751cldr x2, [sp+48]
    00027520ldrb w3, [x2+100]
    00027524cbz w3, 0x27584
    00027528
    00027528loc_27528:
    00027528ldr x0, [sp+72]
    0002752cldr x1, [sp+80]
    00027530bl runtime.memclrNoHeapPointersChunked
    00027534bl runtime.acquirem
    00027538ldrb w1, [sp+47]
    0002753ctbnz w1, 0, 0x2757c
    00027540str x0, [sp+88]
    00027544bl runtime.getMCache
    00027548str x0, [sp+64]
    0002754cldr x0, [sp+80]
    00027550mov x1, x0
    00027554mov x0, x1
    00027558ldr x1, [sp+72]
    0002755cldr x2, [sp+128]
    00027560ldr x3, [sp+48]
    00027564bl runtime.heapSetTypeLarge
    00027568ldr x1, [sp+64]
    0002756cldr x2, [x1+16]
    00027570add x2, x2, x0
    00027574str x2, [x1+16]
    00027578ldr x0, [sp+88]
    0002757c
    0002757cloc_2757c:
    0002757cdmb
    00027580bl runtime.releasem
    00027584
    00027584loc_27584:
    00027584ldr x0, [sp+80]
    00027588ldr x1, [sp+72]
    0002758cldur x29, [sp-8]
    00027590ldr x30, [sp], 112
    00027594ret x30
    00027598
    00027598loc_27598:
    00027598stp x0, x1, [sp+8]
    0002759cstrb w2, [sp+24]
    000275a0mov x3, x30
    000275a4bl runtime.morestack_noctxt.abi0
    000275a8ldp x0, x1, [sp+8]
    000275acldrb w2, [sp+24]
    000275b0b 0x273b0
    000275b4udf 0
    000275b8udf 0
    000275bcudf 0
    000273b0
    000275c0
    000275c0runtime.preMallocgcDebug: ; void runtime.preMallocgcDebug(uintptr size, internal/abi.Type * typ)
    000275c0ldr x16, [x28+16]
    000275c4subs xzr, sp, x16
    000275c8b.ls 0x27684
    000275ccstr x30, [sp-48]!
    000275d0stur x29, [sp-8]
    000275d4sub x29, sp, 8
    000275d8adrp x27, 0xa25000
    000275dcldrsw x3, [x27+332]
    000275e0cbz w3, 0x27640
    000275e4cbz x1, 0x27620
    000275e8ands xzr, x0, 7
    000275ecb.ne 0x275f8
    000275f0orr x3, xzr, 8
    000275f4b 0x27624
    000275f8
    000275f8loc_275f8:
    000275f8ands xzr, x0, 3
    000275fcb.ne 0x27608
    00027600orr x3, xzr, 4
    00027604b 0x27624
    00027608
    00027608loc_27608:
    00027608and x3, x0, 1
    0002760csubs xzr, x3, 0
    00027610orr x3, xzr, 2
    00027614orr x4, xzr, 1
    00027618csel x3, x3, x4, eq
    0002761cb 0x27624
    00027620
    00027620loc_27620:
    00027620orr x3, xzr, 16
    00027624
    00027624loc_27624:
    00027624mov x1, x3
    00027628adrp x2, 0xa2a000
    0002762cadd x2, x2, 544
    00027630bl runtime.persistentalloc
    00027634ldur x29, [sp-8]
    00027638ldr x30, [sp], 48
    0002763cret x30
    00027640
    00027640loc_27640:
    00027640adrp x27, 0xa24000
    00027644ldrb w1, [x27+3552]
    00027648tbz w1, 0, 0x27674
    0002764cadrp x27, 0xa24000
    00027650ldr x1, [x27+3560]
    00027654ldr x2, [x28+160]
    00027658subs xzr, x2, x1
    0002765cb.ne 0x27674
    00027660adrp x27, 0xa24000
    00027664ldr x1, [x27+3568]
    00027668add x1, x1, 1
    0002766cadrp x27, 0xa24000
    00027670str x1, [x27+3568]
    00027674
    00027674loc_27674:
    00027674mov x0, xzr
    00027678ldur x29, [sp-8]
    0002767cldr x30, [sp], 48
    00027680ret x30
    00027684
    00027684loc_27684:
    00027684stp x0, x1, [sp+8]
    00027688mov x3, x30
    0002768cbl runtime.morestack_noctxt.abi0
    00027690ldp x0, x1, [sp+8]
    00027694b 0x275c0
    00027698udf 0
    0002769cudf 0
    000275c0
    000276a0
    000276a0runtime.postMallocgcDebug: ; void runtime.postMallocgcDebug(void * x, uintptr elemsize, internal/abi.Type * typ)
    000276a0ldr x16, [x28+16]
    000276a4subs xzr, sp, x16
    000276a8b.ls 0x2773c
    000276acstr x30, [sp-64]!
    000276b0stur x29, [sp-8]
    000276b4sub x29, sp, 8
    000276b8str x0, [sp+72]
    000276bcstr x2, [sp+88]
    000276c0adrp x27, 0xa24000
    000276c4ldrb w3, [x27+3552]
    000276c8tbz w3, 0, 0x276f4
    000276ccadrp x27, 0xa24000
    000276d0ldr x3, [x27+3560]
    000276d4ldr x4, [x28+160]
    000276d8subs xzr, x4, x3
    000276dcb.ne 0x276f4
    000276e0adrp x27, 0xa24000
    000276e4ldr x3, [x27+3576]
    000276e8add x1, x3, x1
    000276ecadrp x27, 0xa24000
    000276f0str x1, [x27+3576]
    000276f4
    000276f4loc_276f4:
    000276f4bl runtime.traceAllocFreeEnabled
    000276f8tbz w0, 0, 0x27730
    000276fcbl runtime.traceAcquire
    00027700str x0, [sp+48]
    00027704str x1, [sp+40]
    00027708bl runtime.traceLocker.ok
    0002770ctbz w0, 0, 0x27730
    00027710ldr x2, [sp+72]
    00027714ldr x0, [sp+48]
    00027718ldr x1, [sp+40]
    0002771cldr x3, [sp+88]
    00027720bl runtime.traceLocker.HeapObjectAlloc
    00027724ldr x0, [sp+48]
    00027728ldr x1, [sp+40]
    0002772cbl runtime.traceRelease
    00027730
    00027730loc_27730:
    00027730ldur x29, [sp-8]
    00027734ldr x30, [sp], 64
    00027738ret x30
    0002773c
    0002773cloc_2773c:
    0002773cstp x0, x1, [sp+8]
    00027740str x2, [sp+24]
    00027744mov x3, x30
    00027748bl runtime.morestack_noctxt.abi0
    0002774cldp x0, x1, [sp+8]
    00027750ldr x2, [sp+24]
    00027754b 0x276a0
    00027758udf 0
    0002775cudf 0
    000276a0
    00027760
    00027760runtime.deductAssistCredit: ; void runtime.deductAssistCredit(uintptr size)
    00027760ldr x16, [x28+16]
    00027764subs xzr, sp, x16
    00027768b.ls 0x277b0
    0002776cstr x30, [sp-32]!
    00027770stur x29, [sp-8]
    00027774sub x29, sp, 8
    00027778ldr x1, [x28+48]
    0002777cldr x1, [x1+192]
    00027780cbnz x1, 0x2778c
    00027784str x28, [sp+16]
    00027788ldr x1, [sp+16]
    0002778c
    0002778cloc_2778c:
    0002778cldr x2, [x1+432]
    00027790sub x2, x2, x0
    00027794str x2, [x1+432]
    00027798tbz x2, 63, 0x277a4
    0002779cmov x0, x1
    000277a0bl runtime.gcAssistAlloc
    000277a4
    000277a4loc_277a4:
    000277a4ldur x29, [sp-8]
    000277a8ldr x30, [sp], 32
    000277acret x30
    000277b0
    000277b0loc_277b0:
    000277b0str x0, [sp+8]
    000277b4mov x3, x30
    000277b8bl runtime.morestack_noctxt.abi0
    000277bcldr x0, [sp+8]
    000277c0b 0x27760
    000277c4udf 0
    000277c8udf 0
    000277ccudf 0
    00027760
    000277d0
    000277d0runtime.memclrNoHeapPointersChunked: ; void runtime.memclrNoHeapPointersChunked(uintptr size, void * x)
    000277d0ldr x16, [x28+16]
    000277d4subs xzr, sp, x16
    000277d8b.ls 0x2784c
    000277dcstr x30, [sp-48]!
    000277e0stur x29, [sp-8]
    000277e4sub x29, sp, 8
    000277e8add x2, x1, x0
    000277ecstr x2, [sp+24]
    000277f0b 0x2781c
    000277f4
    000277f4loc_277f4:
    000277f4sub x2, x2, x1
    000277f8mov x0, x1
    000277fcadd x3, x1, 0x40000
    00027800str x3, [sp+32]
    00027804subs xzr, x2, 0x40000
    00027808orr x3, xzr, 0x40000
    0002780ccsel x1, x3, x2, hi
    00027810bl runtime.memclrNoHeapPointers
    00027814ldr x2, [sp+24]
    00027818ldr x1, [sp+32]
    0002781c
    0002781cloc_2781c:
    0002781csubs xzr, x1, x2
    00027820b.hs 0x27840
    00027824ldrb w3, [x28+185]
    00027828tbz w3, 0, 0x277f4
    0002782cstr x1, [sp+32]
    00027830bl runtime.goschedguarded
    00027834ldr x1, [sp+32]
    00027838ldr x2, [sp+24]
    0002783cb 0x277f4
    00027840
    00027840loc_27840:
    00027840ldur x29, [sp-8]
    00027844ldr x30, [sp], 48
    00027848ret x30
    0002784c
    0002784cloc_2784c:
    0002784cstp x0, x1, [sp+8]
    00027850mov x3, x30
    00027854bl runtime.morestack_noctxt.abi0
    00027858ldp x0, x1, [sp+8]
    0002785cb 0x277d0
    000277d0
    00027860
    00027860runtime.newobject: ; void runtime.newobject(internal/abi.Type * typ)
    00027860ldr x16, [x28+16]
    00027864subs xzr, sp, x16
    00027868b.ls 0x27898
    0002786cstr x30, [sp-48]!
    00027870stur x29, [sp-8]
    00027874sub x29, sp, 8
    00027878ldr x3, [x0]
    0002787cmov x1, x0
    00027880orr x2, xzr, 1
    00027884mov x0, x3
    00027888bl runtime.mallocgc
    0002788cldur x29, [sp-8]
    00027890ldr x30, [sp], 48
    00027894ret x30
    00027898
    00027898loc_27898:
    00027898str x0, [sp+8]
    0002789cmov x3, x30
    000278a0bl runtime.morestack_noctxt.abi0
    000278a4ldr x0, [sp+8]
    000278a8b 0x27860
    000278acudf 0
    00027860
    000278b0
    000278b0runtime.profilealloc: ; void runtime.profilealloc(runtime.m * mp, void * x, uintptr size)
    000278b0ldr x16, [x28+16]
    000278b4subs xzr, sp, x16
    000278b8b.ls 0x27928
    000278bcstr x30, [sp-48]!
    000278c0stur x29, [sp-8]
    000278c4sub x29, sp, 8
    000278c8str x0, [sp+56]
    000278ccstr x1, [sp+64]
    000278d0str x2, [sp+72]
    000278d4bl runtime.getMCache
    000278d8cbz x0, 0x27914
    000278dcstr x0, [sp+32]
    000278e0adrp x27, 0x999000
    000278e4ldr x1, [x27+1688]
    000278e8str x1, [x0+8]
    000278ecbl runtime.nextSample
    000278f0ldr x1, [sp+32]
    000278f4str x0, [x1]
    000278f8ldr x0, [sp+56]
    000278fcldr x1, [sp+64]
    00027900ldr x2, [sp+72]
    00027904bl runtime.mProf_Malloc
    00027908ldur x29, [sp-8]
    0002790cldr x30, [sp], 48
    00027910ret x30
    00027914
    00027914loc_27914:
    00027914adrp x0, 0x6a4000
    00027918add x0, x0, 1298
    0002791corr x1, xzr, 56
    00027920bl runtime.throw
    00027924hint
    00027928
    00027928loc_27928:
    00027928stp x0, x1, [sp+8]
    0002792cstr x2, [sp+24]
    00027930mov x3, x30
    00027934bl runtime.morestack_noctxt.abi0
    00027938ldp x0, x1, [sp+8]
    0002793cldr x2, [sp+24]
    00027940b 0x278b0
    00027944udf 0
    00027948udf 0
    0002794cudf 0
    000278b0
    00027950
    00027950runtime.nextSample: ; void runtime.nextSample(void)
    00027950ldr x16, [x28+16]
    00027954subs xzr, sp, x16
    00027958b.ls 0x279b0
    0002795cstr x30, [sp-32]!
    00027960stur x29, [sp-8]
    00027964sub x29, sp, 8
    00027968adrp x27, 0x999000
    0002796cldr x0, [x27+1688]
    00027970cbz x0, 0x279a0
    00027974subs xzr, x0, 1
    00027978b.ne 0x2798c
    0002797cmov x0, xzr
    00027980ldur x29, [sp-8]
    00027984ldr x30, [sp], 32
    00027988ret x30
    0002798c
    0002798cloc_2798c:
    0002798cbl runtime.fastexprand
    00027990sbfm x0, x0, 0, 31
    00027994ldur x29, [sp-8]
    00027998ldr x30, [sp], 32
    0002799cret x30
    000279a0
    000279a0loc_279a0:
    000279a0movn x0, 0x8000000000000000
    000279a4ldur x29, [sp-8]
    000279a8ldr x30, [sp], 32
    000279acret x30
    000279b0
    000279b0loc_279b0:
    000279b0mov x3, x30
    000279b4bl runtime.morestack_noctxt.abi0
    000279b8b 0x27950
    000279bcudf 0
    00027950
    000279c0
    000279c0runtime.fastexprand: ; void runtime.fastexprand(int mean)
    000279c0ldr x16, [x28+16]
    000279c4subs xzr, sp, x16
    000279c8b.ls 0x27a5c
    000279ccstr x30, [sp-32]!
    000279d0stur x29, [sp-8]
    000279d4sub x29, sp, 8
    000279d8movz x1, 0x7000000
    000279dcsubs xzr, x0, x1
    000279e0b.le 0x279ec
    000279e4movz x0, 0x7000000
    000279e8b 0x279f0
    000279ec
    000279ecloc_279ec:
    000279eccbz x0, 0x27a4c
    000279f0
    000279f0loc_279f0:
    000279f0str x0, [sp+16]
    000279f4movz x0, 0x4000000
    000279f8bl runtime.cheaprandn
    000279fcadd x1, x0, 1
    00027a00mov w1, w1
    00027a04scvtf d0, x1
    00027a08bl runtime.fastlog2
    00027a0cfmov d1
    00027a10fsub d0, d0, d1
    00027a14fcmp d0
    00027a18b.le 0x27a20
    00027a1cfmov d0, xzr
    00027a20
    00027a20loc_27a20:
    00027a20ldr x1, [sp+16]
    00027a24scvtf d1, x1
    00027a28adrp x27, 0x6e9000
    00027a2cldr d2, [x27+3272]
    00027a30fmul d1, d2, d1
    00027a34fmul d0, d0, d1
    00027a38fcvtzs w1, d0
    00027a3cadd x0, x1, 1
    00027a40ldur x29, [sp-8]
    00027a44ldr x30, [sp], 32
    00027a48ret x30
    00027a4c
    00027a4cloc_27a4c:
    00027a4cmov x0, xzr
    00027a50ldur x29, [sp-8]
    00027a54ldr x30, [sp], 32
    00027a58ret x30
    00027a5c
    00027a5cloc_27a5c:
    00027a5cstr x0, [sp+8]
    00027a60mov x3, x30
    00027a64bl runtime.morestack_noctxt.abi0
    00027a68ldr x0, [sp+8]
    00027a6cb 0x279c0
    000279c0
    00027a70
    00027a70runtime.persistentalloc: ; void runtime.persistentalloc(uintptr size, uintptr align, runtime.sysMemStat * sysStat)
    00027a70str x30, [sp-80]!
    00027a74stur x29, [sp-8]
    00027a78sub x29, sp, 8
    00027a7cstr xzr, [sp+24]
    00027a80adrp x3, 0
    00027a84add x3, x3, 2752
    00027a88str x3, [sp+32]
    00027a8cadd x3, sp, 24
    00027a90str x3, [sp+40]
    00027a94str x0, [sp+48]
    00027a98str x1, [sp+56]
    00027a9cstr x2, [sp+64]
    00027aa0add x0, sp, 32
    00027aa4str x0, [sp+8]
    00027aa8bl runtime.systemstack.abi0
    00027aacldr x0, [sp+24]
    00027ab0ldur x29, [sp-8]
    00027ab4ldr x30, [sp], 80
    00027ab8ret x30
    00027abcudf 0
    00027a70
    00027ac0
    00027ac0runtime.persistentalloc.func1: ; void runtime.persistentalloc.func1(void)
    00027ac0ldr x16, [x28+16]
    00027ac4subs xzr, sp, x16
    00027ac8b.ls 0x27b04
    00027accstr x30, [sp-48]!
    00027ad0stur x29, [sp-8]
    00027ad4sub x29, sp, 8
    00027ad8ldr x0, [x26+16]
    00027adcldr x1, [x26+24]
    00027ae0ldr x2, [x26+32]
    00027ae4ldr x3, [x26+8]
    00027ae8str x3, [sp+32]
    00027aecbl runtime.persistentalloc1
    00027af0ldr x3, [sp+32]
    00027af4str x0, [x3]
    00027af8ldur x29, [sp-8]
    00027afcldr x30, [sp], 48
    00027b00ret x30
    00027b04
    00027b04loc_27b04:
    00027b04mov x3, x30
    00027b08bl runtime.morestack.abi0
    00027b0cb 0x27ac0
    00027ac0
    00027b10
    00027b10runtime.persistentalloc1: ; void runtime.persistentalloc1(uintptr size, uintptr align, runtime.sysMemStat * sysStat)
    00027b10ldr x16, [x28+24]
    00027b14subs xzr, sp, x16
    00027b18b.ls 0x27d78
    00027b1cstr x30, [sp-80]!
    00027b20stur x29, [sp-8]
    00027b24sub x29, sp, 8
    00027b28cbz x0, 0x27d64
    00027b2ccbz x1, 0x27b48
    00027b30sub x3, x1, 1
    00027b34ands xzr, x1, x3
    00027b38b.ne 0x27d54
    00027b3csubs xzr, x1, 8192
    00027b40b.ls 0x27b4c
    00027b44b 0x27d44
    00027b48
    00027b48loc_27b48:
    00027b48orr x1, xzr, 8
    00027b4c
    00027b4cloc_27b4c:
    00027b4csubs xzr, x0, 0x10000
    00027b50b.hs 0x27bf4
    00027b54str x0, [sp+88]
    00027b58str x2, [sp+104]
    00027b5cstr x1, [sp+40]
    00027b60bl runtime.acquirem
    00027b64str x0, [sp+56]
    00027b68cbz x0, 0x27b8c
    00027b6cldr x1, [x0+208]
    00027b70cbz x1, 0x27b8c
    00027b74mov x0, x1
    00027b78bl runtime.puintptr.ptr
    00027b7cldrsb x27, [x0]
    00027b80movz x1, 4624
    00027b84add x1, x0, x1
    00027b88b 0x27ba0
    00027b8c
    00027b8cloc_27b8c:
    00027b8cadrp x0, 0xa24000
    00027b90add x0, x0, 3136
    00027b94bl runtime.lock
    00027b98adrp x1, 0xa24000
    00027b9cadd x1, x1, 3144
    00027ba0
    00027ba0loc_27ba0:
    00027ba0str x1, [sp+48]
    00027ba4ldr x0, [x1+8]
    00027ba8ldr x1, [sp+40]
    00027bacbl runtime.alignUp
    00027bb0ldr x2, [sp+48]
    00027bb4str x0, [x2+8]
    00027bb8ldr x3, [sp+88]
    00027bbcadd x4, x3, x0
    00027bc0subs xzr, x4, 0x40000
    00027bc4b.hi 0x27bd0
    00027bc8ldr x4, [x2]
    00027bcccbnz x4, 0x27c08
    00027bd0
    00027bd0loc_27bd0:
    00027bd0orr x0, xzr, 0x40000
    00027bd4adrp x1, 0xa2a000
    00027bd8add x1, x1, 544
    00027bdcbl runtime.sysAlloc
    00027be0ldr x2, [sp+48]
    00027be4str x0, [x2]
    00027be8ldr x3, [x2]
    00027beccbz x3, 0x27d14
    00027bf0b 0x27c94
    00027bf4
    00027bf4loc_27bf4:
    00027bf4mov x1, x2
    00027bf8bl runtime.sysAlloc
    00027bfcldur x29, [sp-8]
    00027c00ldr x30, [sp], 80
    00027c04ret x30
    00027c08
    00027c08loc_27c08:
    00027c08ldr x0, [x2]
    00027c0cldr x1, [x2+8]
    00027c10bl runtime.(*notInHeap).add
    00027c14str x0, [sp+32]
    00027c18ldr x2, [sp+48]
    00027c1cldr x3, [x2+8]
    00027c20ldr x4, [sp+88]
    00027c24add x3, x4, x3
    00027c28str x3, [x2+8]
    00027c2cldr x0, [sp+56]
    00027c30bl runtime.releasem
    00027c34ldr x2, [sp+48]
    00027c38adrp x3, 0xa24000
    00027c3cadd x3, x3, 3144
    00027c40subs xzr, x2, x3
    00027c44b.ne 0x27c54
    00027c48adrp x0, 0xa24000
    00027c4cadd x0, x0, 3136
    00027c50bl runtime.unlock
    00027c54
    00027c54loc_27c54:
    00027c54ldr x0, [sp+104]
    00027c58adrp x2, 0xa2a000
    00027c5cadd x2, x2, 544
    00027c60subs xzr, x0, x2
    00027c64b.eq 0x27c84
    00027c68ldr x1, [sp+88]
    00027c6cbl runtime.(*sysMemStat).add
    00027c70ldr x2, [sp+88]
    00027c74sub x1, xzr, x2
    00027c78adrp x0, 0xa2a000
    00027c7cadd x0, x0, 544
    00027c80bl runtime.(*sysMemStat).add
    00027c84
    00027c84loc_27c84:
    00027c84ldr x0, [sp+32]
    00027c88ldur x29, [sp-8]
    00027c8cldr x30, [sp], 80
    00027c90ret x30
    00027c94
    00027c94loc_27c94:
    00027c94adrp x27, 0xa24000
    00027c98ldr x3, [x27+1784]
    00027c9cldr x4, [x2]
    00027ca0str x3, [x4]
    00027ca4ldr x4, [x2]
    00027ca8str x4, [sp+64]
    00027cacldr x4, [sp+64]
    00027cb0adrp x27, 0xa24000
    00027cb4ldrb w5, [x27+1516]
    00027cb8tbz w5, 0, 0x27cd8
    00027cbcadrp x5, 0xa24000
    00027cc0add x5, x5, 1784
    00027cc4mov x27, x3
    00027cc8casal x27, x4, [x5]
    00027cccsubs xzr, x27, x3
    00027cd0cset x6, eq
    00027cd4b 0x27cf8
    00027cd8
    00027cd8loc_27cd8:
    00027cd8adrp x5, 0xa24000
    00027cdcadd x5, x5, 1784
    00027ce0
    00027ce0loc_27ce0:
    00027ce0ldaxr x27, [x5]
    00027ce4subs xzr, x27, x3
    00027ce8b.ne 0x27cf4
    00027cecstlxr w27, x4, [x5]
    00027cf0cbnz x27, 0x27ce0
    00027cf4
    00027cf4loc_27cf4:
    00027cf4cset x6, eq
    00027cf8
    00027cf8loc_27cf8:
    00027cf8tbz w6, 0, 0x27c94
    00027cfcorr x0, xzr, 8
    00027d00ldr x1, [sp+40]
    00027d04bl runtime.alignUp
    00027d08ldr x2, [sp+48]
    00027d0cstr x0, [x2+8]
    00027d10b 0x27c08
    00027d14
    00027d14loc_27d14:
    00027d14adrp x3, 0xa24000
    00027d18add x3, x3, 3144
    00027d1csubs xzr, x2, x3
    00027d20b.eq 0x27d34
    00027d24
    00027d24loc_27d24:
    00027d24adrp x0, 0x696000
    00027d28add x0, x0, 2401
    00027d2corr x1, xzr, 31
    00027d30bl runtime.throw
    00027d34
    00027d34loc_27d34:
    00027d34adrp x0, 0xa24000
    00027d38add x0, x0, 3136
    00027d3cbl runtime.unlock
    00027d40b 0x27d24
    00027d44
    00027d44loc_27d44:
    00027d44adrp x0, 0x699000
    00027d48add x0, x0, 2071
    00027d4cmovz x1, 35
    00027d50bl runtime.throw
    00027d54
    00027d54loc_27d54:
    00027d54adrp x0, 0x69e000
    00027d58add x0, x0, 697
    00027d5cmovz x1, 42
    00027d60bl runtime.throw
    00027d64
    00027d64loc_27d64:
    00027d64adrp x0, 0x693000
    00027d68add x0, x0, 565
    00027d6cmovz x1, 26
    00027d70bl runtime.throw
    00027d74hint
    00027d78
    00027d78loc_27d78:
    00027d78stp x0, x1, [sp+8]
    00027d7cstr x2, [sp+24]
    00027d80mov x3, x30
    00027d84bl runtime.morestackc.abi0
    00027d88ldp x0, x1, [sp+8]
    00027d8cldr x2, [sp+24]
    00027d90b 0x27b10
    00027d94udf 0
    00027d98udf 0
    00027d9cudf 0
    00027b10
    00027da0
    00027da0runtime.(*linearAlloc).alloc: ; void runtime.(*linearAlloc).alloc(runtime.linearAlloc * l, uintptr size, uintptr align, runtime.sysMemStat * sysStat)
    00027da0ldr x16, [x28+16]
    00027da4subs xzr, sp, x16
    00027da8b.ls 0x27e70
    00027dacstr x30, [sp-64]!
    00027db0stur x29, [sp-8]
    00027db4sub x29, sp, 8
    00027db8str x0, [sp+72]
    00027dbcstr x1, [sp+80]
    00027dc0str x3, [sp+96]
    00027dc4ldr x0, [x0]
    00027dc8mov x1, x2
    00027dccbl runtime.alignUp
    00027dd0ldr x2, [sp+80]
    00027dd4add x2, x0, x2
    00027dd8ldr x3, [sp+72]
    00027ddcldr x4, [x3+16]
    00027de0subs xzr, x4, x2
    00027de4b.lo 0x27e60
    00027de8str x0, [sp+40]
    00027decstr x2, [x3]
    00027df0adrp x27, 0xa24000
    00027df4ldr x1, [x27+1760]
    00027df8sub x0, x2, 1
    00027dfcbl runtime.alignUp
    00027e00ldr x2, [sp+72]
    00027e04ldr x3, [x2+8]
    00027e08subs xzr, x0, x3
    00027e0cb.ls 0x27e50
    00027e10ldrb w4, [x2+24]
    00027e14tbz w4, 0, 0x27e4c
    00027e18str x0, [sp+32]
    00027e1csub x1, x0, x3
    00027e20str x1, [sp+48]
    00027e24mov x0, x3
    00027e28ldr x2, [sp+96]
    00027e2cbl runtime.sysMap
    00027e30ldr x3, [sp+72]
    00027e34ldr x0, [x3+8]
    00027e38ldr x1, [sp+48]
    00027e3cmov x2, x1
    00027e40bl runtime.sysUsed
    00027e44ldr x0, [sp+32]
    00027e48ldr x2, [sp+72]
    00027e4c
    00027e4cloc_27e4c:
    00027e4cstr x0, [x2+8]
    00027e50
    00027e50loc_27e50:
    00027e50ldr x0, [sp+40]
    00027e54ldur x29, [sp-8]
    00027e58ldr x30, [sp], 64
    00027e5cret x30
    00027e60
    00027e60loc_27e60:
    00027e60mov x0, xzr
    00027e64ldur x29, [sp-8]
    00027e68ldr x30, [sp], 64
    00027e6cret x30
    00027e70
    00027e70loc_27e70:
    00027e70stp x0, x1, [sp+8]
    00027e74stp x2, x3, [sp+24]
    00027e78mov x3, x30
    00027e7cbl runtime.morestack_noctxt.abi0
    00027e80ldp x0, x1, [sp+8]
    00027e84ldp x2, x3, [sp+24]
    00027e88b 0x27da0
    00027e8cudf 0
    00027da0
    00027e90
    00027e90runtime.(*notInHeap).add: ; void runtime.(*notInHeap).add(runtime.notInHeap * p, uintptr bytes)
    00027e90add x0, x0, x1
    00027e94ret x30
    00027e98udf 0
    00027e9cudf 0
    00027e90
    00027ea0
    00027ea0runtime.mapIterStart: ; void runtime.mapIterStart(internal/abi.SwissMapType * t, internal/runtime/maps.Map * m, internal/runtime/maps.Iter * it)
    00027ea0ldr x16, [x28+16]
    00027ea4subs xzr, sp, x16
    00027ea8b.ls 0x27ee8
    00027eacstr x30, [sp-48]!
    00027eb0stur x29, [sp-8]
    00027eb4sub x29, sp, 8
    00027eb8str x2, [sp+72]
    00027ebcmov x3, x0
    00027ec0mov x0, x2
    00027ec4mov x4, x1
    00027ec8mov x1, x3
    00027eccmov x2, x4
    00027ed0bl internal/runtime/maps.(*Iter).Init
    00027ed4ldr x0, [sp+72]
    00027ed8bl internal/runtime/maps.(*Iter).Next
    00027edcldur x29, [sp-8]
    00027ee0ldr x30, [sp], 48
    00027ee4ret x30
    00027ee8
    00027ee8loc_27ee8:
    00027ee8stp x0, x1, [sp+8]
    00027eecstr x2, [sp+24]
    00027ef0mov x3, x30
    00027ef4bl runtime.morestack_noctxt.abi0
    00027ef8ldp x0, x1, [sp+8]
    00027efcldr x2, [sp+24]
    00027f00b 0x27ea0
    00027f04udf 0
    00027f08udf 0
    00027f0cudf 0
    00027ea0
    00027f10
    00027f10runtime.mapIterNext: ; void runtime.mapIterNext(internal/runtime/maps.Iter * it)
    00027f10ldr x16, [x28+16]
    00027f14subs xzr, sp, x16
    00027f18b.ls 0x27f38
    00027f1cstr x30, [sp-32]!
    00027f20stur x29, [sp-8]
    00027f24sub x29, sp, 8
    00027f28bl internal/runtime/maps.(*Iter).Next
    00027f2cldur x29, [sp-8]
    00027f30ldr x30, [sp], 32
    00027f34ret x30
    00027f38
    00027f38loc_27f38:
    00027f38str x0, [sp+8]
    00027f3cmov x3, x30
    00027f40bl runtime.morestack_noctxt.abi0
    00027f44ldr x0, [sp+8]
    00027f48b 0x27f10
    00027f4cudf 0
    00027f10
    00027f50
    00027f50runtime.mapclone2: ; void runtime.mapclone2(internal/abi.SwissMapType * t, internal/runtime/maps.Map * src)
    00027f50ldr x16, [x28+16]
    00027f54sub x17, sp, 32
    00027f58subs xzr, x17, x16
    00027f5cb.ls 0x28010
    00027f60str x30, [sp-160]!
    00027f64stur x29, [sp-8]
    00027f68sub x29, sp, 8
    00027f6cstr x0, [sp+168]
    00027f70str x1, [sp+176]
    00027f74mov x0, x1
    00027f78bl internal/runtime/maps.(*Map).Used
    00027f7cmov x1, x0
    00027f80mov x2, xzr
    00027f84ldr x0, [sp+168]
    00027f88bl runtime.makemap
    00027f8cstr x0, [sp+136]
    00027f90add x20, sp, 40
    00027f94adr x27, 16
    00027f98stp x29, x27, [sp-24]
    00027f9csub x29, sp, 24
    00027fa0bl fn_87cf8
    00027fa4sub x29, sp, 8
    00027fa8add x0, sp, 40
    00027facldr x1, [sp+168]
    00027fb0ldr x2, [sp+176]
    00027fb4bl internal/runtime/maps.(*Iter).Init
    00027fb8add x0, sp, 40
    00027fbcbl internal/runtime/maps.(*Iter).Next
    00027fc0b 0x27ff4
    00027fc4
    00027fc4loc_27fc4:
    00027fc4add x0, sp, 40
    00027fc8bl internal/runtime/maps.(*Iter).Key
    00027fccstr x0, [sp+144]
    00027fd0add x0, sp, 40
    00027fd4bl internal/runtime/maps.(*Iter).Elem
    00027fd8ldr x1, [sp+168]
    00027fdcldr x2, [sp+144]
    00027fe0mov x3, x0
    00027fe4ldr x0, [sp+136]
    00027fe8bl internal/runtime/maps.(*Map).Put
    00027fecadd x0, sp, 40
    00027ff0bl internal/runtime/maps.(*Iter).Next
    00027ff4
    00027ff4loc_27ff4:
    00027ff4add x0, sp, 40
    00027ff8bl internal/runtime/maps.(*Iter).Key
    00027ffccbnz x0, 0x27fc4
    00028000ldr x0, [sp+136]
    00028004ldur x29, [sp-8]
    00028008ldr x30, [sp], 160
    0002800cret x30
    00028010
    00028010loc_28010:
    00028010stp x0, x1, [sp+8]
    00028014mov x3, x30
    00028018bl runtime.morestack_noctxt.abi0
    0002801cldp x0, x1, [sp+8]
    00028020b 0x27f50
    00028024udf 0
    00028028udf 0
    0002802cudf 0
    00027f50
    00028030
    00028030runtime.wbZero: ; void runtime.wbZero(internal/abi.Type * typ, void * dst)
    00028030str x30, [sp-48]!
    00028034stur x29, [sp-8]
    00028038sub x29, sp, 8
    0002803cldr x2, [x0+8]
    00028040mov x3, x0
    00028044mov x0, x1
    00028048mov x1, xzr
    0002804cbl runtime.bulkBarrierPreWrite
    00028050ldur x29, [sp-8]
    00028054ldr x30, [sp], 48
    00028058ret x30
    0002805cudf 0
    00028030
    00028060
    00028060runtime.wbMove: ; void runtime.wbMove(internal/abi.Type * typ, void * dst, void * src)
    00028060str x30, [sp-48]!
    00028064stur x29, [sp-8]
    00028068sub x29, sp, 8
    0002806cldr x4, [x0+8]
    00028070mov x3, x0
    00028074mov x0, x1
    00028078mov x1, x2
    0002807cmov x2, x4
    00028080bl runtime.bulkBarrierPreWrite
    00028084ldur x29, [sp-8]
    00028088ldr x30, [sp], 48
    0002808cret x30
    00028060
    00028090
    00028090runtime.reflectcallmove: ; void runtime.reflectcallmove(internal/abi.Type * typ, void * dst, void * src, uintptr size, internal/abi.RegArgs * regs)
    00028090str x30, [sp-64]!
    00028094stur x29, [sp-8]
    00028098sub x29, sp, 8
    0002809cstr x1, [sp+80]
    000280a0str x2, [sp+88]
    000280a4str x3, [sp+96]
    000280a8str x4, [sp+104]
    000280acadrp x27, 0xa23000
    000280b0ldrb w5, [x27+3056]
    000280b4tbz w5, 0, 0x280dc
    000280b8cbnz x0, 0x280c4
    000280bcmov x0, xzr
    000280c0b 0x280e0
    000280c4
    000280c4loc_280c4:
    000280c4bl internal/abi.(*Type).Pointers
    000280c8ldr x1, [sp+80]
    000280ccldr x2, [sp+88]
    000280d0ldr x3, [sp+96]
    000280d4ldr x4, [sp+104]
    000280d8b 0x280e0
    000280dc
    000280dcloc_280dc:
    000280dcmov x0, xzr
    000280e0
    000280e0loc_280e0:
    000280e0tbz w0, 0, 0x2810c
    000280e4subs xzr, x3, 8
    000280e8b.lo 0x2810c
    000280ecmov x0, x1
    000280f0mov x1, x2
    000280f4mov x2, x3
    000280f8mov x3, xzr
    000280fcbl runtime.bulkBarrierPreWrite
    00028100ldr x1, [sp+80]
    00028104ldr x2, [sp+88]
    00028108ldr x3, [sp+96]
    0002810c
    0002810cloc_2810c:
    0002810cmov x0, x1
    00028110mov x1, x2
    00028114mov x2, x3
    00028118bl runtime.memmove
    0002811cmov x0, xzr
    00028120b 0x28128
    00028124
    00028124loc_28124:
    00028124add x0, x2, 1
    00028128
    00028128loc_28128:
    00028128subs xzr, x0, 16
    0002812cb.ge 0x28190
    00028130str x0, [sp+48]
    00028134ldr x2, [sp+104]
    00028138ldrsb x27, [x2]
    0002813cadd x2, x2, 384
    00028140mov x1, x0
    00028144mov x0, x2
    00028148bl internal/abi.(*IntArgRegBitmap).Get
    0002814ctbz w0, 0, 0x28184
    00028150ldr x2, [sp+48]
    00028154ldr x3, [sp+104]
    00028158ldr x4, [x3+3*x2]
    0002815cadd x5, x3, 256
    00028160adrp x27, 0xa23000
    00028164ldr w6, [x27+3056]
    00028168cbz w6, 0x2817c
    0002816cbl runtime.gcWriteBarrier2
    00028170str x4, [x25]
    00028174ldr x6, [x5+3*x2]
    00028178str x6, [x25+8]
    0002817c
    0002817cloc_2817c:
    0002817cstr x4, [x5+3*x2]
    00028180b 0x28124
    00028184
    00028184loc_28184:
    00028184ldr x2, [sp+48]
    00028188ldr x3, [sp+104]
    0002818cb 0x28124
    00028190
    00028190loc_28190:
    00028190ldur x29, [sp-8]
    00028194ldr x30, [sp], 64
    00028198ret x30
    0002819cudf 0
    00028090
    000281a0
    000281a0runtime.typedmemclr: ; void runtime.typedmemclr(internal/abi.Type * typ, void * ptr)
    000281a0str x30, [sp-48]!
    000281a4stur x29, [sp-8]
    000281a8sub x29, sp, 8
    000281acadrp x27, 0xa23000
    000281b0ldrb w2, [x27+3056]
    000281b4tbz w2, 0, 0x281f8
    000281b8str x0, [sp+56]
    000281bcstr x1, [sp+64]
    000281c0bl internal/abi.(*Type).Pointers
    000281c4tbnz w0, 0, 0x281d4
    000281c8ldr x0, [sp+56]
    000281ccldr x1, [sp+64]
    000281d0b 0x281f8
    000281d4
    000281d4loc_281d4:
    000281d4ldr x0, [sp+64]
    000281d8mov x4, x0
    000281dcldr x3, [sp+56]
    000281e0ldr x2, [x3+8]
    000281e4mov x0, x4
    000281e8mov x1, xzr
    000281ecbl runtime.bulkBarrierPreWrite
    000281f0ldr x0, [sp+56]
    000281f4ldr x1, [sp+64]
    000281f8
    000281f8loc_281f8:
    000281f8ldr x2, [x0]
    000281fcmov x0, x1
    00028200mov x1, x2
    00028204bl runtime.memclrNoHeapPointers
    00028208ldur x29, [sp-8]
    0002820cldr x30, [sp], 48
    00028210ret x30
    00028214udf 0
    00028218udf 0
    0002821cudf 0
    000281a0
    00028220
    00028220runtime.heapBitsInSpan: ; void runtime.heapBitsInSpan(uintptr userSize)
    00028220subs xzr, x0, 512
    00028224cset x0, ls
    00028228ret x30
    0002822cudf 0
    00028220
    00028230
    00028230runtime.(*mspan).typePointersOf: ; void runtime.(*mspan).typePointersOf(runtime.mspan * span, uintptr addr, uintptr size)
    00028230str x30, [sp-80]!
    00028234stur x29, [sp-8]
    00028238sub x29, sp, 8
    0002823cstr x0, [sp+88]
    00028240str x1, [sp+96]
    00028244str x2, [sp+104]
    00028248bl runtime.(*mspan).objBase
    0002824cstr x0, [sp+64]
    00028250mov x1, x0
    00028254ldr x0, [sp+88]
    00028258bl runtime.(*mspan).typePointersOfUnchecked
    0002825cldr x4, [sp+64]
    00028260ldr x5, [sp+96]
    00028264subs xzr, x4, x5
    00028268b.ne 0x2828c
    0002826cldr x6, [sp+88]
    00028270ldr x6, [x6+104]
    00028274ldr x7, [sp+104]
    00028278subs xzr, x7, x6
    0002827cb.ne 0x28290
    00028280ldur x29, [sp-8]
    00028284ldr x30, [sp], 80
    00028288ret x30
    0002828c
    0002828cloc_2828c:
    0002828cldr x7, [sp+104]
    00028290
    00028290loc_28290:
    00028290sub x4, x5, x1
    00028294add x5, x5, x7
    00028298bl runtime.typePointers.fastForward
    0002829cldur x29, [sp-8]
    000282a0ldr x30, [sp], 80
    000282a4ret x30
    000282a8udf 0
    000282acudf 0
    00028230
    000282b0
    000282b0runtime.(*mspan).typePointersOfUnchecked: ; void runtime.(*mspan).typePointersOfUnchecked(runtime.mspan * span, uintptr addr)
    000282b0str x30, [sp-64]!
    000282b4stur x29, [sp-8]
    000282b8sub x29, sp, 8
    000282bcstr x0, [sp+72]
    000282c0str x1, [sp+80]
    000282c4ldrb w0, [x0+98]
    000282c8strb w0, [sp+39]
    000282ccbl runtime.spanClass.noscan
    000282d0tbnz w0, 0, 0x28390
    000282d4ldr x1, [sp+72]
    000282d8ldr x0, [x1+104]
    000282dcbl runtime.heapBitsInSpan
    000282e0tbnz w0, 0, 0x28368
    000282e4ldrb w0, [sp+39]
    000282e8bl runtime.spanClass.sizeclass
    000282ecubfm x1, x0, 0, 7
    000282f0cbz w1, 0x28308
    000282f4ldr x2, [sp+80]
    000282f8mov x3, x2
    000282fcldr x2, [x2]
    00028300add x1, x3, 8
    00028304b 0x2831c
    00028308
    00028308loc_28308:
    00028308ldr x4, [sp+72]
    0002830cldr x4, [x4+152]
    00028310cbz x4, 0x2834c
    00028314mov x2, x4
    00028318ldr x1, [sp+80]
    0002831c
    0002831cloc_2831c:
    0002831cstr x2, [sp+48]
    00028320str x1, [sp+40]
    00028324mov x0, x2
    00028328bl runtime.getGCMask
    0002832cbl runtime.readUintptr
    00028330ldr x1, [sp+40]
    00028334mov x2, x0
    00028338ldr x3, [sp+48]
    0002833cmov x0, x1
    00028340ldur x29, [sp-8]
    00028344ldr x30, [sp], 64
    00028348ret x30
    0002834c
    0002834cloc_2834c:
    0002834cmov x0, xzr
    00028350mov x1, x0
    00028354mov x2, x0
    00028358mov x3, xzr
    0002835cldur x29, [sp-8]
    00028360ldr x30, [sp], 64
    00028364ret x30
    00028368
    00028368loc_28368:
    00028368ldr x0, [sp+72]
    0002836cldr x1, [sp+80]
    00028370bl runtime.(*mspan).heapBitsSmallForAddr
    00028374ldr x1, [sp+80]
    00028378mov x2, x0
    0002837cmov x3, xzr
    00028380mov x0, x1
    00028384ldur x29, [sp-8]
    00028388ldr x30, [sp], 64
    0002838cret x30
    00028390
    00028390loc_28390:
    00028390mov x0, xzr
    00028394mov x1, x0
    00028398mov x2, x0
    0002839cmov x3, xzr
    000283a0ldur x29, [sp-8]
    000283a4ldr x30, [sp], 64
    000283a8ret x30
    000283acudf 0
    000282b0
    000283b0
    000283b0runtime.(*mspan).typePointersOfType: ; void runtime.(*mspan).typePointersOfType(runtime.mspan * span, internal/abi.Type * typ, uintptr addr)
    000283b0str x30, [sp-32]!
    000283b4stur x29, [sp-8]
    000283b8sub x29, sp, 8
    000283bcstr x1, [sp+48]
    000283c0str x2, [sp+56]
    000283c4ldrb w0, [x0+98]
    000283c8bl runtime.spanClass.noscan
    000283cctbz w0, 0, 0x283ec
    000283d0mov x0, xzr
    000283d4mov x1, x0
    000283d8mov x2, x0
    000283dcmov x3, xzr
    000283e0ldur x29, [sp-8]
    000283e4ldr x30, [sp], 32
    000283e8ret x30
    000283ec
    000283ecloc_283ec:
    000283ecldr x0, [sp+48]
    000283f0bl runtime.getGCMask
    000283f4bl runtime.readUintptr
    000283f8ldr x1, [sp+56]
    000283fcmov x2, x0
    00028400ldr x3, [sp+48]
    00028404mov x0, x1
    00028408ldur x29, [sp-8]
    0002840cldr x30, [sp], 32
    00028410ret x30
    00028414udf 0
    00028418udf 0
    0002841cudf 0
    000283b0
    00028420
    00028420runtime.typePointers.nextFast: ; void runtime.typePointers.nextFast(runtime.typePointers tp)
    00028420str x3, [sp+32]
    00028424cbnz x2, 0x28430
    00028428mov x4, xzr
    0002842cret x30
    00028430
    00028430loc_28430:
    00028430rbit x5, x2
    00028434clz x5, x5
    00028438orr x6, xzr, 1
    0002843clslv x6, x6, x5
    00028440eor x2, x2, x6
    00028444add x4, x1, x5, lsl #3
    00028448ret x30
    0002844cudf 0
    00028420
    00028450
    00028450runtime.typePointers.next: ; void runtime.typePointers.next(runtime.typePointers tp, uintptr limit)
    00028450str x30, [sp-80]!
    00028454stur x29, [sp-8]
    00028458sub x29, sp, 8
    0002845cstr x3, [sp+112]
    00028460str x4, [sp+120]
    00028464str x3, [sp+64]
    00028468b 0x28484
    0002846c
    0002846cloc_2846c:
    0002846cldr x5, [sp+64]
    00028470ldr x6, [sp+56]
    00028474mov x3, x5
    00028478ldr x4, [sp+120]
    0002847cmov x2, x0
    00028480mov x0, x6
    00028484
    00028484loc_28484:
    00028484cbnz x2, 0x28584
    00028488cbz x3, 0x28564
    0002848cadd x5, x1, 512
    00028490ldr x6, [x3+8]
    00028494add x6, x6, x0
    00028498subs xzr, x5, x6
    0002849cb.lo 0x284b0
    000284a0ldr x6, [x3]
    000284a4add x0, x6, x0
    000284a8mov x1, x0
    000284acb 0x284b8
    000284b0
    000284b0loc_284b0:
    000284b0mov x1, x0
    000284b4mov x0, x5
    000284b8
    000284b8loc_284b8:
    000284b8subs xzr, x4, x0
    000284bcb.ls 0x28544
    000284c0str x1, [sp+56]
    000284c4str x0, [sp+48]
    000284c8mov x0, x3
    000284ccbl runtime.getGCMask
    000284d0ldr x1, [sp+48]
    000284d4ldr x2, [sp+56]
    000284d8sub x1, x1, x2
    000284dcubfm x1, x1, 6, 63
    000284e0bl runtime.addb
    000284e4bl runtime.readUintptr
    000284e8ldr x1, [sp+48]
    000284ecadd x2, x1, 512
    000284f0ldr x3, [sp+120]
    000284f4subs xzr, x3, x2
    000284f8b.hs 0x28538
    000284fcsub x5, x1, x3
    00028500add x5, x5, 512
    00028504ubfm x6, x5, 3, 63
    00028508orr x7, xzr, 1
    0002850clslv x8, x7, x6
    00028510orr x9, xzr, 64
    00028514sub x5, x9, x5, lsr #3
    00028518subs xzr, x6, 64
    0002851ccsel x6, x8, xzr, lo
    00028520sub x6, x6, 1
    00028524lslv x6, x6, x5
    00028528subs xzr, x5, 64
    0002852ccsel x5, x6, xzr, lo
    00028530bic x0, x0, x5
    00028534b 0x2846c
    00028538
    00028538loc_28538:
    00028538orr x7, xzr, 1
    0002853corr x9, xzr, 64
    00028540b 0x2846c
    00028544
    00028544loc_28544:
    00028544mov x0, xzr
    00028548mov x1, x0
    0002854cmov x2, x0
    00028550mov x3, xzr
    00028554mov x4, x0
    00028558ldur x29, [sp-8]
    0002855cldr x30, [sp], 80
    00028560ret x30
    00028564
    00028564loc_28564:
    00028564mov x0, xzr
    00028568mov x1, x0
    0002856cmov x2, x0
    00028570mov x3, xzr
    00028574mov x4, x0
    00028578ldur x29, [sp-8]
    0002857cldr x30, [sp], 80
    00028580ret x30
    00028584
    00028584loc_28584:
    00028584bl runtime.typePointers.nextFast
    00028588ldur x29, [sp-8]
    0002858cldr x30, [sp], 80
    00028590ret x30
    00028594udf 0
    00028598udf 0
    0002859cudf 0
    00028450
    000285a0
    000285a0runtime.typePointers.fastForward: ; void runtime.typePointers.fastForward(runtime.typePointers tp, uintptr n, uintptr limit)
    000285a0str x30, [sp-80]!
    000285a4stur x29, [sp-8]
    000285a8sub x29, sp, 8
    000285acstr x3, [sp+112]
    000285b0add x6, x1, x4
    000285b4subs xzr, x5, x6
    000285b8b.ls 0x287ac
    000285bccbz x3, 0x2873c
    000285c0str x5, [sp+128]
    000285c4str x6, [sp+32]
    000285c8str x3, [sp+64]
    000285ccldr x2, [x3]
    000285d0subs xzr, x4, x2
    000285d4b.lo 0x2860c
    000285d8sub x7, x1, x0
    000285dcadd x7, x4, x7
    000285e0cbz x2, 0x287c8
    000285e4udiv x3, x7, x2
    000285e8madd x2, x3, x2, xzr
    000285ecadd x3, x2, x0
    000285f0str x3, [sp+56]
    000285f4sub x0, x4, x2
    000285f8orr x1, xzr, 512
    000285fcbl runtime.alignDown
    00028600ldr x2, [sp+56]
    00028604add x3, x2, x0
    00028608b 0x2862c
    0002860c
    0002860cloc_2860c:
    0002860cstr x1, [sp+56]
    00028610str x0, [sp+48]
    00028614mov x0, x4
    00028618orr x1, xzr, 512
    0002861cbl runtime.alignDown
    00028620ldr x2, [sp+56]
    00028624add x3, x2, x0
    00028628ldr x2, [sp+48]
    0002862c
    0002862cloc_2862c:
    0002862cstr x2, [sp+56]
    00028630sub x1, x3, x2
    00028634ldr x0, [sp+64]
    00028638ldr x4, [x0+8]
    0002863csubs xzr, x4, x1
    00028640b.hi 0x28690
    00028644ldr x1, [x0]
    00028648str x1, [sp+48]
    0002864cbl runtime.getGCMask
    00028650bl runtime.readUintptr
    00028654ldr x1, [sp+48]
    00028658ldr x2, [sp+56]
    0002865cadd x1, x1, x2
    00028660ldr x2, [sp+128]
    00028664subs xzr, x2, x1
    00028668b.ls 0x28674
    0002866cmov x3, x1
    00028670b 0x286e0
    00028674
    00028674loc_28674:
    00028674mov x0, xzr
    00028678mov x1, x0
    0002867cmov x2, x0
    00028680mov x3, xzr
    00028684ldur x29, [sp-8]
    00028688ldr x30, [sp], 80
    0002868cret x30
    00028690
    00028690loc_28690:
    00028690str x3, [sp+48]
    00028694str x1, [sp+40]
    00028698bl runtime.getGCMask
    0002869cldr x1, [sp+40]
    000286a0ubfm x1, x1, 6, 63
    000286a4bl runtime.addb
    000286a8bl runtime.readUintptr
    000286acldr x1, [sp+32]
    000286b0ldr x2, [sp+48]
    000286b4sub x1, x1, x2
    000286b8ubfm x1, x1, 3, 63
    000286bcorr x3, xzr, 1
    000286c0lslv x4, x3, x1
    000286c4subs xzr, x1, 64
    000286c8csel x1, x4, xzr, lo
    000286ccsub x1, xzr, x1
    000286d0and x0, x0, x1
    000286d4ldr x2, [sp+128]
    000286d8ldr x1, [sp+48]
    000286dcldr x3, [sp+56]
    000286e0
    000286e0loc_286e0:
    000286e0add x4, x1, 512
    000286e4subs xzr, x2, x4
    000286e8b.hs 0x28724
    000286ecsub x4, x1, x2
    000286f0add x4, x4, 512
    000286f4ubfm x5, x4, 3, 63
    000286f8orr x6, xzr, 1
    000286fclslv x6, x6, x5
    00028700orr x7, xzr, 64
    00028704sub x4, x7, x4, lsr #3
    00028708subs xzr, x5, 64
    0002870ccsel x5, x6, xzr, lo
    00028710sub x5, x5, 1
    00028714lslv x5, x5, x4
    00028718subs xzr, x4, 64
    0002871ccsel x4, x5, xzr, lo
    00028720bic x0, x0, x4
    00028724
    00028724loc_28724:
    00028724mov x2, x0
    00028728mov x0, x3
    0002872cldr x3, [sp+64]
    00028730ldur x29, [sp-8]
    00028734ldr x30, [sp], 80
    00028738ret x30
    0002873c
    0002873cloc_2873c:
    0002873cubfm x4, x4, 3, 63
    00028740orr x6, xzr, 1
    00028744lslv x7, x6, x4
    00028748add x8, x1, 512
    0002874csubs xzr, x4, 64
    00028750csel x4, x7, xzr, lo
    00028754sub x4, xzr, x4
    00028758and x4, x2, x4
    0002875csubs xzr, x5, x8
    00028760b.hs 0x28798
    00028764sub x5, x1, x5
    00028768add x5, x5, 512
    0002876cubfm x7, x5, 3, 63
    00028770lslv x6, x6, x7
    00028774orr x8, xzr, 64
    00028778sub x5, x8, x5, lsr #3
    0002877csubs xzr, x7, 64
    00028780csel x6, x6, xzr, lo
    00028784sub x6, x6, 1
    00028788lslv x6, x6, x5
    0002878csubs xzr, x5, 64
    00028790csel x5, x6, xzr, lo
    00028794bic x4, x4, x5
    00028798
    00028798loc_28798:
    00028798mov x2, x4
    0002879cmov x3, xzr
    000287a0ldur x29, [sp-8]
    000287a4ldr x30, [sp], 80
    000287a8ret x30
    000287ac
    000287acloc_287ac:
    000287acmov x0, xzr
    000287b0mov x1, x0
    000287b4mov x2, x0
    000287b8mov x3, xzr
    000287bcldur x29, [sp-8]
    000287c0ldr x30, [sp], 80
    000287c4ret x30
    000287c8
    000287c8loc_287c8:
    000287c8bl runtime.panicdivide
    000287cchint
    000285a0
    000287d0
    000287d0runtime.(*mspan).objBase: ; void runtime.(*mspan).objBase(runtime.mspan * span, uintptr addr)
    000287d0str x30, [sp-48]!
    000287d4stur x29, [sp-8]
    000287d8sub x29, sp, 8
    000287dcstr x0, [sp+56]
    000287e0str x1, [sp+64]
    000287e4bl runtime.(*mspan).base
    000287e8str x0, [sp+32]
    000287ecldr x0, [sp+56]
    000287f0ldr x1, [sp+64]
    000287f4bl runtime.(*mspan).objIndex
    000287f8ldr x1, [sp+56]
    000287fcldr x1, [x1+104]
    00028800ldr x2, [sp+32]
    00028804madd x0, x1, x0, x2
    00028808ldur x29, [sp-8]
    0002880cldr x30, [sp], 48
    00028810ret x30
    00028814udf 0
    00028818udf 0
    0002881cudf 0
    000287d0
    00028820
    00028820runtime.bulkBarrierPreWrite: ; void runtime.bulkBarrierPreWrite(uintptr dst, uintptr src, uintptr size, internal/abi.Type * typ)
    00028820str x30, [sp-128]!
    00028824stur x29, [sp-8]
    00028828sub x29, sp, 8
    0002882corr x4, x1, x0
    00028830orr x4, x2, x4
    00028834ands xzr, x4, 7
    00028838b.ne 0x28aa8
    0002883cadrp x27, 0xa23000
    00028840ldrb w4, [x27+3056]
    00028844tbz w4, 0, 0x2891c
    00028848str x0, [sp+136]
    0002884cstr x1, [sp+144]
    00028850str x2, [sp+152]
    00028854str x3, [sp+160]
    00028858bl runtime.spanOf
    0002885ccbnz x0, 0x28870
    00028860bl runtime.activeModules
    00028864ldr x2, [sp+136]
    00028868mov x3, xzr
    0002886cb 0x289f8
    00028870
    00028870loc_28870:
    00028870str x0, [sp+56]
    00028874add x0, x0, 99
    00028878bl runtime.(*mSpanStateBox).get
    0002887cubfm x1, x0, 0, 7
    00028880subs wzr, w1, 1
    00028884b.eq 0x28894
    00028888ldr x1, [sp+136]
    0002888corr x2, xzr, 1
    00028890b 0x288a8
    00028894
    00028894loc_28894:
    00028894ldr x0, [sp+56]
    00028898bl runtime.(*mspan).base
    0002889cldr x1, [sp+136]
    000288a0subs xzr, x0, x1
    000288a4cset x2, hi
    000288a8
    000288a8loc_288a8:
    000288a8tbnz w2, 0, 0x288bc
    000288acldr x2, [sp+56]
    000288b0ldr x3, [x2+112]
    000288b4subs xzr, x1, x3
    000288b8b.lo 0x288c8
    000288bc
    000288bcloc_288bc:
    000288bcldur x29, [sp-8]
    000288c0ldr x30, [sp], 128
    000288c4ret x30
    000288c8
    000288c8loc_288c8:
    000288c8ldr x1, [x28+48]
    000288ccldr x0, [x1+208]
    000288d0bl runtime.puintptr.ptr
    000288d4ldrsb x27, [x0]
    000288d8movz x1, 4720
    000288dcadd x1, x0, x1
    000288e0str x1, [sp+88]
    000288e4ldr x0, [sp+160]
    000288e8cbz x0, 0x28900
    000288ecmov x1, x0
    000288f0ldr x2, [sp+136]
    000288f4ldr x0, [sp+56]
    000288f8bl runtime.(*mspan).typePointersOfType
    000288fcb 0x28910
    00028900
    00028900loc_28900:
    00028900ldr x0, [sp+56]
    00028904ldr x1, [sp+136]
    00028908ldr x2, [sp+152]
    0002890cbl runtime.(*mspan).typePointersOf
    00028910
    00028910loc_28910:
    00028910ldr x4, [sp+144]
    00028914cbz x4, 0x289dc
    00028918b 0x28984
    0002891c
    0002891cloc_2891c:
    0002891cldur x29, [sp-8]
    00028920ldr x30, [sp], 128
    00028924ret x30
    00028928
    00028928loc_28928:
    00028928str x2, [sp+80]
    0002892cstr x0, [sp+72]
    00028930str x1, [sp+64]
    00028934str x3, [sp+112]
    00028938mov x1, x4
    0002893cstr x4, [sp+104]
    00028940ldr x2, [sp+136]
    00028944sub x1, x1, x2
    00028948ldr x2, [sp+144]
    0002894cadd x1, x2, x1
    00028950str x1, [sp+96]
    00028954ldr x0, [sp+88]
    00028958bl runtime.(*wbBuf).get2
    0002895cldr x1, [sp+104]
    00028960ldr x1, [x1]
    00028964str x1, [x0]
    00028968ldr x1, [sp+96]
    0002896cldr x1, [x1]
    00028970str x1, [x0+8]
    00028974ldr x2, [sp+80]
    00028978ldr x1, [sp+64]
    0002897cldr x0, [sp+72]
    00028980ldr x3, [sp+112]
    00028984
    00028984loc_28984:
    00028984ldr x5, [sp+152]
    00028988ldr x6, [sp+136]
    0002898cadd x4, x5, x6
    00028990bl runtime.typePointers.next
    00028994cbnz x4, 0x28928
    00028998
    00028998loc_28998:
    00028998ldur x29, [sp-8]
    0002899cldr x30, [sp], 128
    000289a0ret x30
    000289a4
    000289a4loc_289a4:
    000289a4str x0, [sp+80]
    000289a8str x1, [sp+72]
    000289acstr x2, [sp+64]
    000289b0str x3, [sp+112]
    000289b4str x4, [sp+104]
    000289b8ldr x0, [sp+88]
    000289bcbl runtime.(*wbBuf).get1
    000289c0ldr x1, [sp+104]
    000289c4ldr x1, [x1]
    000289c8str x1, [x0]
    000289ccldr x2, [sp+64]
    000289d0ldr x1, [sp+72]
    000289d4ldr x0, [sp+80]
    000289d8ldr x3, [sp+112]
    000289dc
    000289dcloc_289dc:
    000289dcldr x5, [sp+152]
    000289e0ldr x6, [sp+136]
    000289e4add x4, x5, x6
    000289e8bl runtime.typePointers.next
    000289eccbnz x4, 0x289a4
    000289f0b 0x28998
    000289f4
    000289f4loc_289f4:
    000289f4add x3, x3, 1
    000289f8
    000289f8loc_289f8:
    000289f8subs xzr, x1, x3
    000289fcb.le 0x28a40
    00028a00ldr x5, [x0+3*x3]
    00028a04ldr x6, [x5+208]
    00028a08subs xzr, x2, x6
    00028a0cb.lo 0x289f4
    00028a10ldr x7, [x5+216]
    00028a14subs xzr, x2, x7
    00028a18b.hs 0x289f4
    00028a1csub x3, x2, x6
    00028a20ldr x4, [x5+544]
    00028a24mov x0, x2
    00028a28ldr x1, [sp+144]
    00028a2cldr x2, [sp+152]
    00028a30bl runtime.bulkBarrierBitmap
    00028a34ldur x29, [sp-8]
    00028a38ldr x30, [sp], 128
    00028a3cret x30
    00028a40
    00028a40loc_28a40:
    00028a40bl runtime.activeModules
    00028a44ldr x2, [sp+136]
    00028a48mov x3, xzr
    00028a4cb 0x28a54
    00028a50
    00028a50loc_28a50:
    00028a50add x3, x3, 1
    00028a54
    00028a54loc_28a54:
    00028a54subs xzr, x1, x3
    00028a58b.le 0x28a9c
    00028a5cldr x5, [x0+3*x3]
    00028a60ldr x6, [x5+224]
    00028a64subs xzr, x2, x6
    00028a68b.lo 0x28a50
    00028a6cldr x7, [x5+232]
    00028a70subs xzr, x2, x7
    00028a74b.hs 0x28a50
    00028a78sub x3, x2, x6
    00028a7cldr x4, [x5+560]
    00028a80mov x0, x2
    00028a84ldr x1, [sp+144]
    00028a88ldr x2, [sp+152]
    00028a8cbl runtime.bulkBarrierBitmap
    00028a90ldur x29, [sp-8]
    00028a94ldr x30, [sp], 128
    00028a98ret x30
    00028a9c
    00028a9cloc_28a9c:
    00028a9cldur x29, [sp-8]
    00028aa0ldr x30, [sp], 128
    00028aa4ret x30
    00028aa8
    00028aa8loc_28aa8:
    00028aa8adrp x0, 0x69b000
    00028aacadd x0, x0, 3915
    00028ab0movz x1, 40
    00028ab4bl runtime.throw
    00028ab8hint
    00028abcudf 0
    00028820
    00028ac0
    00028ac0runtime.bulkBarrierPreWriteSrcOnly: ; void runtime.bulkBarrierPreWriteSrcOnly(uintptr dst, uintptr src, uintptr size, internal/abi.Type * typ)
    00028ac0str x30, [sp-112]!
    00028ac4stur x29, [sp-8]
    00028ac8sub x29, sp, 8
    00028accorr x4, x1, x0
    00028ad0orr x4, x2, x4
    00028ad4ands xzr, x4, 7
    00028ad8b.ne 0x28bc0
    00028adcadrp x27, 0xa23000
    00028ae0ldrb w4, [x27+3056]
    00028ae4tbz w4, 0, 0x28b4c
    00028ae8str x0, [sp+120]
    00028aecstr x1, [sp+128]
    00028af0str x2, [sp+136]
    00028af4str x3, [sp+144]
    00028af8ldr x1, [x28+48]
    00028afcldr x0, [x1+208]
    00028b00bl runtime.puintptr.ptr
    00028b04str x0, [sp+96]
    00028b08ldrsb x27, [x0]
    00028b0cldr x0, [sp+120]
    00028b10bl runtime.spanOf
    00028b14ldr x1, [sp+96]
    00028b18movz x2, 4720
    00028b1cadd x1, x1, x2
    00028b20str x1, [sp+72]
    00028b24ldr x2, [sp+144]
    00028b28cbz x2, 0x28b3c
    00028b2cmov x1, x2
    00028b30ldr x2, [sp+120]
    00028b34bl runtime.(*mspan).typePointersOfType
    00028b38b 0x28ba0
    00028b3c
    00028b3cloc_28b3c:
    00028b3cldr x1, [sp+120]
    00028b40ldr x2, [sp+136]
    00028b44bl runtime.(*mspan).typePointersOf
    00028b48b 0x28ba0
    00028b4c
    00028b4cloc_28b4c:
    00028b4cldur x29, [sp-8]
    00028b50ldr x30, [sp], 112
    00028b54ret x30
    00028b58
    00028b58loc_28b58:
    00028b58str x3, [sp+88]
    00028b5cstr x2, [sp+64]
    00028b60str x1, [sp+56]
    00028b64str x0, [sp+48]
    00028b68ldr x1, [sp+120]
    00028b6csub x1, x4, x1
    00028b70ldr x2, [sp+128]
    00028b74add x1, x1, x2
    00028b78str x1, [sp+80]
    00028b7cldr x0, [sp+72]
    00028b80bl runtime.(*wbBuf).get1
    00028b84ldr x1, [sp+80]
    00028b88ldr x1, [x1]
    00028b8cstr x1, [x0]
    00028b90ldr x2, [sp+64]
    00028b94ldr x1, [sp+56]
    00028b98ldr x0, [sp+48]
    00028b9cldr x3, [sp+88]
    00028ba0
    00028ba0loc_28ba0:
    00028ba0ldr x5, [sp+136]
    00028ba4ldr x6, [sp+120]
    00028ba8add x4, x5, x6
    00028bacbl runtime.typePointers.next
    00028bb0cbnz x4, 0x28b58
    00028bb4ldur x29, [sp-8]
    00028bb8ldr x30, [sp], 112
    00028bbcret x30
    00028bc0
    00028bc0loc_28bc0:
    00028bc0adrp x0, 0x69b000
    00028bc4add x0, x0, 3915
    00028bc8movz x1, 40
    00028bccbl runtime.throw
    00028bd0hint
    00028bd4udf 0
    00028bd8udf 0
    00028bdcudf 0
    00028ac0
    00028be0
    00028be0runtime.(*mspan).initHeapBits: ; void runtime.(*mspan).initHeapBits(runtime.mspan * s)
    00028be0ldr x16, [x28+16]
    00028be4subs xzr, sp, x16
    00028be8b.ls 0x28cac
    00028becstr x30, [sp-32]!
    00028bf0stur x29, [sp-8]
    00028bf4sub x29, sp, 8
    00028bf8str x0, [sp+40]
    00028bfcldrb w0, [x0+98]
    00028c00bl runtime.spanClass.noscan
    00028c04tbz w0, 0, 0x28c10
    00028c08mov x1, xzr
    00028c0cb 0x28c28
    00028c10
    00028c10loc_28c10:
    00028c10ldr x1, [sp+40]
    00028c14ldrb w0, [x1+98]
    00028c18bl runtime.spanClass.sizeclass
    00028c1cubfm x1, x0, 0, 7
    00028c20subs wzr, w1, 1
    00028c24cset x1, eq
    00028c28
    00028c28loc_28c28:
    00028c28tbz w1, 0, 0x28c3c
    00028c2cldr x0, [sp+40]
    00028c30bl runtime.(*mspan).heapBits
    00028c34mov x2, xzr
    00028c38b 0x28ca0
    00028c3c
    00028c3cloc_28c3c:
    00028c3cldr x1, [sp+40]
    00028c40ldrb w0, [x1+98]
    00028c44bl runtime.spanClass.noscan
    00028c48tbz w0, 0, 0x28c54
    00028c4cmov x0, xzr
    00028c50b 0x28c60
    00028c54
    00028c54loc_28c54:
    00028c54ldr x1, [sp+40]
    00028c58ldr x0, [x1+104]
    00028c5cbl runtime.heapBitsInSpan
    00028c60
    00028c60loc_28c60:
    00028c60tbz w0, 0, 0x28c6c
    00028c64ldr x0, [sp+40]
    00028c68b 0x28c78
    00028c6c
    00028c6cloc_28c6c:
    00028c6cldr x0, [sp+40]
    00028c70ldrb w1, [x0+101]
    00028c74tbz w1, 0, 0x28c88
    00028c78
    00028c78loc_28c78:
    00028c78bl runtime.(*mspan).heapBits
    00028c7ccbz x1, 0x28c88
    00028c80ubfm x1, x1, 61, 60
    00028c84bl runtime.memclrNoHeapPointers
    00028c88
    00028c88loc_28c88:
    00028c88ldur x29, [sp-8]
    00028c8cldr x30, [sp], 32
    00028c90ret x30
    00028c94
    00028c94loc_28c94:
    00028c94movn x3, 0
    00028c98str x3, [x0+3*x2]
    00028c9cadd x2, x2, 1
    00028ca0
    00028ca0loc_28ca0:
    00028ca0subs xzr, x1, x2
    00028ca4b.gt 0x28c94
    00028ca8b 0x28c88
    00028cac
    00028cacloc_28cac:
    00028cacstr x0, [sp+8]
    00028cb0mov x3, x30
    00028cb4bl runtime.morestack_noctxt.abi0
    00028cb8ldr x0, [sp+8]
    00028cbcb 0x28be0
    00028be0
    00028cc0
    00028cc0runtime.(*mspan).heapBits: ; void runtime.(*mspan).heapBits(runtime.mspan * span)
    00028cc0str x30, [sp-32]!
    00028cc4stur x29, [sp-8]
    00028cc8sub x29, sp, 8
    00028cccldr x1, [x0+32]
    00028cd0subs xzr, x1, 1
    00028cd4b.ne 0x28cf0
    00028cd8bl runtime.(*mspan).base
    00028cdcorr x1, xzr, 8192
    00028ce0bl runtime.heapBitsSlice
    00028ce4ldur x29, [sp-8]
    00028ce8ldr x30, [sp], 32
    00028cecret x30
    00028cf0
    00028cf0loc_28cf0:
    00028cf0str x0, [sp+40]
    00028cf4bl runtime.(*mspan).base
    00028cf8ldr x1, [sp+40]
    00028cfcldr x1, [x1+32]
    00028d00ubfm x1, x1, 51, 50
    00028d04bl runtime.heapBitsSlice
    00028d08ldur x29, [sp-8]
    00028d0cldr x30, [sp], 32
    00028d10ret x30
    00028d14udf 0
    00028d18udf 0
    00028d1cudf 0
    00028cc0