File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    003fbee0
    003fbee0image.(*RGBA64).SetRGBA64: ; void image.(*RGBA64).SetRGBA64(image.RGBA64 * p, int x, int y, image/color.RGBA64 c)
    003fbee0ldr x16, [x28+16]
    003fbee4sub x17, sp, 48
    003fbee8subs xzr, x17, x16
    003fbeecb.ls 0x3fc118
    003fbef0str x30, [sp-176]!
    003fbef4stur x29, [sp-8]
    003fbef8sub x29, sp, 8
    003fbefcstr x0, [sp+184]
    003fbf00str x1, [sp+192]
    003fbf04str x2, [sp+200]
    003fbf08strh w3, [sp+208]
    003fbf0cstrh w4, [sp+210]
    003fbf10strh w5, [sp+212]
    003fbf14strh w6, [sp+214]
    003fbf18stp xzr, xzr, [sp+80]
    003fbf1cldr x6, [sp+192]
    003fbf20str x6, [sp+80]
    003fbf24ldr x6, [sp+200]
    003fbf28str x6, [sp+88]
    003fbf2cldr x6, [sp+184]
    003fbf30ldrsb x27, [x6]
    003fbf34ldr x2, [x6+32]
    003fbf38ldr x3, [x6+40]
    003fbf3cldr x4, [x6+48]
    003fbf40ldr x5, [x6+56]
    003fbf44str x2, [sp+112]
    003fbf48str x3, [sp+120]
    003fbf4cstr x4, [sp+128]
    003fbf50str x5, [sp+136]
    003fbf54ldr x0, [sp+80]
    003fbf58ldr x1, [sp+88]
    003fbf5cbl image.Point.In
    003fbf60strb w0, [sp+71]
    003fbf64tbnz w0, 0, 0x3fbf6c
    003fbf68b 0x3fc0c4
    003fbf6c
    003fbf6cloc_3fbf6c:
    003fbf6cldr x1, [sp+192]
    003fbf70ldr x2, [sp+200]
    003fbf74ldr x0, [sp+184]
    003fbf78bl image.(*RGBA64).PixOffset
    003fbf7cstr x0, [sp+72]
    003fbf80add x1, x0, 8
    003fbf84str x1, [sp+104]
    003fbf88add x2, x0, 8
    003fbf8cstr x2, [sp+96]
    003fbf90ldr x3, [sp+184]
    003fbf94ldrsb x27, [x3]
    003fbf98ldr x4, [x3]
    003fbf9cldr x3, [x3+16]
    003fbfa0subs xzr, x3, x2
    003fbfa4b.hs 0x3fbfac
    003fbfa8b 0x3fc110
    003fbfac
    003fbfacloc_3fbfac:
    003fbfacsubs xzr, x2, x1
    003fbfb0b.hs 0x3fbfb8
    003fbfb4b 0x3fc10c
    003fbfb8
    003fbfb8loc_3fbfb8:
    003fbfb8subs xzr, x0, x1
    003fbfbcb.ls 0x3fbfc4
    003fbfc0b 0x3fc108
    003fbfc4
    003fbfc4loc_3fbfc4:
    003fbfc4add x2, x4, x0
    003fbfc8str x2, [sp+144]
    003fbfccorr x2, xzr, 8
    003fbfd0str x2, [sp+152]
    003fbfd4str x2, [sp+160]
    003fbfd8ldrh w2, [sp+208]
    003fbfdcubfm x2, x2, 8, 15
    003fbfe0b 0x3fbfe4
    003fbfe4
    003fbfe4loc_3fbfe4:
    003fbfe4strb w2, [x4+x0]
    003fbfe8ldr x1, [sp+152]
    003fbfecldr x2, [sp+144]
    003fbff0ldrh w3, [sp+208]
    003fbff4subs xzr, x1, 1
    003fbff8b.hi 0x3fc000
    003fbffcb 0x3fc100
    003fc000
    003fc000loc_3fc000:
    003fc000strb w3, [x2+1]
    003fc004ldr x1, [sp+152]
    003fc008ldr x2, [sp+144]
    003fc00cldrh w3, [sp+210]
    003fc010ubfm x3, x3, 8, 15
    003fc014subs xzr, x1, 2
    003fc018b.hi 0x3fc020
    003fc01cb 0x3fc0f8
    003fc020
    003fc020loc_3fc020:
    003fc020strb w3, [x2+2]
    003fc024ldr x1, [sp+152]
    003fc028ldr x2, [sp+144]
    003fc02cldrh w3, [sp+210]
    003fc030subs xzr, x1, 3
    003fc034b.hi 0x3fc03c
    003fc038b 0x3fc0f0
    003fc03c
    003fc03cloc_3fc03c:
    003fc03cstrb w3, [x2+3]
    003fc040ldr x1, [sp+152]
    003fc044ldr x2, [sp+144]
    003fc048ldrh w3, [sp+212]
    003fc04cubfm x3, x3, 8, 15
    003fc050subs xzr, x1, 4
    003fc054b.hi 0x3fc05c
    003fc058b 0x3fc0e8
    003fc05c
    003fc05cloc_3fc05c:
    003fc05cstrb w3, [x2+4]
    003fc060ldr x1, [sp+152]
    003fc064ldr x2, [sp+144]
    003fc068ldrh w3, [sp+212]
    003fc06csubs xzr, x1, 5
    003fc070b.hi 0x3fc078
    003fc074b 0x3fc0e0
    003fc078
    003fc078loc_3fc078:
    003fc078strb w3, [x2+5]
    003fc07cldr x1, [sp+152]
    003fc080ldr x2, [sp+144]
    003fc084ldrh w3, [sp+214]
    003fc088ubfm x3, x3, 8, 15
    003fc08csubs xzr, x1, 6
    003fc090b.hi 0x3fc098
    003fc094b 0x3fc0d8
    003fc098
    003fc098loc_3fc098:
    003fc098strb w3, [x2+6]
    003fc09cldr x1, [sp+152]
    003fc0a0ldr x2, [sp+144]
    003fc0a4ldrh w3, [sp+214]
    003fc0a8subs xzr, x1, 7
    003fc0acb.hi 0x3fc0b4
    003fc0b0b 0x3fc0d0
    003fc0b4
    003fc0b4loc_3fc0b4:
    003fc0b4strb w3, [x2+7]
    003fc0b8ldur x29, [sp-8]
    003fc0bcldr x30, [sp], 176
    003fc0c0ret x30
    003fc0c4
    003fc0c4loc_3fc0c4:
    003fc0c4ldur x29, [sp-8]
    003fc0c8ldr x30, [sp], 176
    003fc0ccret x30
    003fc0d0
    003fc0d0loc_3fc0d0:
    003fc0d0orr x0, xzr, 7
    003fc0d4bl runtime.panicIndex
    003fc0d8
    003fc0d8loc_3fc0d8:
    003fc0d8orr x0, xzr, 6
    003fc0dcbl runtime.panicIndex
    003fc0e0
    003fc0e0loc_3fc0e0:
    003fc0e0movz x0, 5
    003fc0e4bl runtime.panicIndex
    003fc0e8
    003fc0e8loc_3fc0e8:
    003fc0e8orr x0, xzr, 4
    003fc0ecbl runtime.panicIndex
    003fc0f0
    003fc0f0loc_3fc0f0:
    003fc0f0orr x0, xzr, 3
    003fc0f4bl runtime.panicIndex
    003fc0f8
    003fc0f8loc_3fc0f8:
    003fc0f8orr x0, xzr, 2
    003fc0fcbl runtime.panicIndex
    003fc100
    003fc100loc_3fc100:
    003fc100orr x0, xzr, 1
    003fc104bl runtime.panicIndex
    003fc108
    003fc108loc_3fc108:
    003fc108bl runtime.panicSlice3C
    003fc10c
    003fc10cloc_3fc10c:
    003fc10cbl runtime.panicSlice3B
    003fc110
    003fc110loc_3fc110:
    003fc110bl runtime.panicSlice3Acap
    003fc114hint
    003fc118
    003fc118loc_3fc118:
    003fc118stp x0, x1, [sp+8]
    003fc11cstr x2, [sp+24]
    003fc120strh w3, [sp+32]
    003fc124strh w4, [sp+34]
    003fc128strh w5, [sp+36]
    003fc12cstrh w6, [sp+38]
    003fc130mov x3, x30
    003fc134bl runtime.morestack_noctxt.abi0
    003fc138ldp x0, x1, [sp+8]
    003fc13cldr x2, [sp+24]
    003fc140ldrh w3, [sp+32]
    003fc144ldrh w4, [sp+34]
    003fc148ldrh w5, [sp+36]
    003fc14cldrh w6, [sp+38]
    003fc150b 0x3fbee0
    003fc154udf 0
    003fc158udf 0
    003fc15cudf 0
    003fbee0
    003fc160
    003fc160image.NewRGBA64: ; void image.NewRGBA64(image.Rectangle r)
    003fc160ldr x16, [x28+16]
    003fc164subs xzr, sp, x16
    003fc168b.ls 0x3fc294
    003fc16cstr x30, [sp-128]!
    003fc170stur x29, [sp-8]
    003fc174sub x29, sp, 8
    003fc178str x0, [sp+136]
    003fc17cstr x1, [sp+144]
    003fc180str x2, [sp+152]
    003fc184str x3, [sp+160]
    003fc188str xzr, [sp+80]
    003fc18cldr x1, [sp+136]
    003fc190ldr x2, [sp+144]
    003fc194ldr x3, [sp+152]
    003fc198ldr x4, [sp+160]
    003fc19corr x0, xzr, 8
    003fc1a0adrp x5, 0x2b4000
    003fc1a4add x5, x5, 3193
    003fc1a8orr x6, xzr, 6
    003fc1acbl image.pixelBufferLength
    003fc1b0str x0, [sp+72]
    003fc1b4mov x1, x0
    003fc1b8mov x2, x1
    003fc1bcadrp x0, 0x1f9000
    003fc1c0add x0, x0, 3072
    003fc1c4bl runtime.makeslice
    003fc1c8ldr x7, [sp+72]
    003fc1ccldr x8, [sp+72]
    003fc1d0str x0, [sp+96]
    003fc1d4str x7, [sp+104]
    003fc1d8str x8, [sp+112]
    003fc1dcldr x0, [sp+136]
    003fc1e0ldr x1, [sp+144]
    003fc1e4ldr x2, [sp+152]
    003fc1e8ldr x3, [sp+160]
    003fc1ecbl image.Rectangle.Dx
    003fc1f0str x0, [sp+64]
    003fc1f4adrp x0, 0x25d000
    003fc1f8add x0, x0, 640
    003fc1fcbl runtime.newobject
    003fc200str x0, [sp+88]
    003fc204ldr x7, [sp+96]
    003fc208ldr x8, [sp+104]
    003fc20cldr x9, [sp+112]
    003fc210str x8, [x0+8]
    003fc214str x9, [x0+16]
    003fc218adrp x27, 0x64f000
    003fc21cldr w8, [x27+3056]
    003fc220cbz w8, 0x3fc228
    003fc224b 0x3fc22c
    003fc228
    003fc228loc_3fc228:
    003fc228b 0x3fc240
    003fc22c
    003fc22cloc_3fc22c:
    003fc22cbl runtime.gcWriteBarrier2
    003fc230str x7, [x25]
    003fc234ldr x1, [x0]
    003fc238str x1, [x25+8]
    003fc23cb 0x3fc240
    003fc240
    003fc240loc_3fc240:
    003fc240str x7, [x0]
    003fc244ldr x1, [sp+88]
    003fc248ldrsb x27, [x1]
    003fc24cldr x2, [sp+64]
    003fc250ubfm x2, x2, 61, 60
    003fc254str x2, [x1+24]
    003fc258ldr x1, [sp+88]
    003fc25cldrsb x27, [x1]
    003fc260ldr x2, [sp+136]
    003fc264ldr x3, [sp+144]
    003fc268ldr x4, [sp+152]
    003fc26cldr x5, [sp+160]
    003fc270str x2, [x1+32]
    003fc274str x3, [x1+40]
    003fc278str x4, [x1+48]
    003fc27cstr x5, [x1+56]
    003fc280ldr x0, [sp+88]
    003fc284str x0, [sp+80]
    003fc288ldur x29, [sp-8]
    003fc28cldr x30, [sp], 128
    003fc290ret x30
    003fc294
    003fc294loc_3fc294:
    003fc294stp x0, x1, [sp+8]
    003fc298stp x2, x3, [sp+24]
    003fc29cmov x3, x30
    003fc2a0bl runtime.morestack_noctxt.abi0
    003fc2a4ldp x0, x1, [sp+8]
    003fc2a8ldp x2, x3, [sp+24]
    003fc2acb 0x3fc160
    003fc160
    003fc2b0
    003fc2b0image.(*NRGBA).Bounds: ; void image.(*NRGBA).Bounds(image.NRGBA * p)
    003fc2b0str x30, [sp-48]!
    003fc2b4stur x29, [sp-8]
    003fc2b8sub x29, sp, 8
    003fc2bcstr x0, [sp+56]
    003fc2c0stp xzr, xzr, [sp+8]
    003fc2c4stp xzr, xzr, [sp+24]
    003fc2c8ldr x4, [sp+56]
    003fc2ccldrsb x27, [x4]
    003fc2d0ldr x0, [x4+32]
    003fc2d4ldr x1, [x4+40]
    003fc2d8ldr x2, [x4+48]
    003fc2dcldr x3, [x4+56]
    003fc2e0str x0, [sp+8]
    003fc2e4str x1, [sp+16]
    003fc2e8str x2, [sp+24]
    003fc2ecstr x3, [sp+32]
    003fc2f0add x29, sp, 40
    003fc2f4add sp, sp, 48
    003fc2f8ret x30
    003fc2fcudf 0
    003fc2b0
    003fc300
    003fc300image.(*NRGBA).PixOffset: ; void image.(*NRGBA).PixOffset(image.NRGBA * p, int x, int y)
    003fc300str x30, [sp-32]!
    003fc304stur x29, [sp-8]
    003fc308sub x29, sp, 8
    003fc30cstr x0, [sp+40]
    003fc310str x1, [sp+48]
    003fc314str x2, [sp+56]
    003fc318str xzr, [sp+16]
    003fc31cldrsb x27, [x0]
    003fc320ldrsb x27, [x0]
    003fc324ldrsb x27, [x0]
    003fc328ldr x3, [x0+40]
    003fc32csub x2, x2, x3
    003fc330ldr x3, [x0+24]
    003fc334ldr x4, [x0+32]
    003fc338sub x1, x1, x4
    003fc33cubfm x1, x1, 62, 61
    003fc340madd x0, x3, x2, x1
    003fc344str x0, [sp+16]
    003fc348add x29, sp, 24
    003fc34cadd sp, sp, 32
    003fc350ret x30
    003fc354udf 0
    003fc358udf 0
    003fc35cudf 0
    003fc300
    003fc360
    003fc360image.(*NRGBA).SetNRGBA: ; void image.(*NRGBA).SetNRGBA(image.NRGBA * p, int x, int y, image/color.NRGBA c)
    003fc360ldr x16, [x28+16]
    003fc364sub x17, sp, 48
    003fc368subs xzr, x17, x16
    003fc36cb.ls 0x3fc4f8
    003fc370str x30, [sp-176]!
    003fc374stur x29, [sp-8]
    003fc378sub x29, sp, 8
    003fc37cstr x0, [sp+184]
    003fc380str x1, [sp+192]
    003fc384str x2, [sp+200]
    003fc388strb w3, [sp+208]
    003fc38cstrb w4, [sp+209]
    003fc390strb w5, [sp+210]
    003fc394strb w6, [sp+211]
    003fc398stp xzr, xzr, [sp+80]
    003fc39cldr x6, [sp+192]
    003fc3a0str x6, [sp+80]
    003fc3a4ldr x6, [sp+200]
    003fc3a8str x6, [sp+88]
    003fc3acldr x6, [sp+184]
    003fc3b0ldrsb x27, [x6]
    003fc3b4ldr x2, [x6+32]
    003fc3b8ldr x3, [x6+40]
    003fc3bcldr x4, [x6+48]
    003fc3c0ldr x5, [x6+56]
    003fc3c4str x2, [sp+112]
    003fc3c8str x3, [sp+120]
    003fc3ccstr x4, [sp+128]
    003fc3d0str x5, [sp+136]
    003fc3d4ldr x0, [sp+80]
    003fc3d8ldr x1, [sp+88]
    003fc3dcbl image.Point.In
    003fc3e0strb w0, [sp+71]
    003fc3e4tbnz w0, 0, 0x3fc3ec
    003fc3e8b 0x3fc4c4
    003fc3ec
    003fc3ecloc_3fc3ec:
    003fc3ecldr x1, [sp+192]
    003fc3f0ldr x2, [sp+200]
    003fc3f4ldr x0, [sp+184]
    003fc3f8bl image.(*NRGBA).PixOffset
    003fc3fcstr x0, [sp+72]
    003fc400add x1, x0, 4
    003fc404str x1, [sp+104]
    003fc408add x2, x0, 4
    003fc40cstr x2, [sp+96]
    003fc410ldr x3, [sp+184]
    003fc414ldrsb x27, [x3]
    003fc418ldr x4, [x3]
    003fc41cldr x3, [x3+16]
    003fc420subs xzr, x3, x2
    003fc424b.hs 0x3fc42c
    003fc428b 0x3fc4f0
    003fc42c
    003fc42cloc_3fc42c:
    003fc42csubs xzr, x2, x1
    003fc430b.hs 0x3fc438
    003fc434b 0x3fc4ec
    003fc438
    003fc438loc_3fc438:
    003fc438subs xzr, x0, x1
    003fc43cb.ls 0x3fc444
    003fc440b 0x3fc4e8
    003fc444
    003fc444loc_3fc444:
    003fc444add x2, x4, x0
    003fc448str x2, [sp+144]
    003fc44corr x2, xzr, 4
    003fc450str x2, [sp+152]
    003fc454str x2, [sp+160]
    003fc458ldrb w2, [sp+208]
    003fc45cb 0x3fc460
    003fc460
    003fc460loc_3fc460:
    003fc460strb w2, [x4+x0]
    003fc464ldr x1, [sp+152]
    003fc468ldr x2, [sp+144]
    003fc46cldrb w3, [sp+209]
    003fc470subs xzr, x1, 1
    003fc474b.hi 0x3fc47c
    003fc478b 0x3fc4e0
    003fc47c
    003fc47cloc_3fc47c:
    003fc47cstrb w3, [x2+1]
    003fc480ldr x1, [sp+152]
    003fc484ldr x2, [sp+144]
    003fc488ldrb w3, [sp+210]
    003fc48csubs xzr, x1, 2
    003fc490b.hi 0x3fc498
    003fc494b 0x3fc4d8
    003fc498
    003fc498loc_3fc498:
    003fc498strb w3, [x2+2]
    003fc49cldr x1, [sp+152]
    003fc4a0ldr x2, [sp+144]
    003fc4a4ldrb w3, [sp+211]
    003fc4a8subs xzr, x1, 3
    003fc4acb.hi 0x3fc4b4
    003fc4b0b 0x3fc4d0
    003fc4b4
    003fc4b4loc_3fc4b4:
    003fc4b4strb w3, [x2+3]
    003fc4b8ldur x29, [sp-8]
    003fc4bcldr x30, [sp], 176
    003fc4c0ret x30
    003fc4c4
    003fc4c4loc_3fc4c4:
    003fc4c4ldur x29, [sp-8]
    003fc4c8ldr x30, [sp], 176
    003fc4ccret x30
    003fc4d0
    003fc4d0loc_3fc4d0:
    003fc4d0orr x0, xzr, 3
    003fc4d4bl runtime.panicIndex
    003fc4d8
    003fc4d8loc_3fc4d8:
    003fc4d8orr x0, xzr, 2
    003fc4dcbl runtime.panicIndex
    003fc4e0
    003fc4e0loc_3fc4e0:
    003fc4e0orr x0, xzr, 1
    003fc4e4bl runtime.panicIndex
    003fc4e8
    003fc4e8loc_3fc4e8:
    003fc4e8bl runtime.panicSlice3C
    003fc4ec
    003fc4ecloc_3fc4ec:
    003fc4ecbl runtime.panicSlice3B
    003fc4f0
    003fc4f0loc_3fc4f0:
    003fc4f0bl runtime.panicSlice3Acap
    003fc4f4hint
    003fc4f8
    003fc4f8loc_3fc4f8:
    003fc4f8stp x0, x1, [sp+8]
    003fc4fcstr x2, [sp+24]
    003fc500strb w3, [sp+32]
    003fc504strb w4, [sp+33]
    003fc508strb w5, [sp+34]
    003fc50cstrb w6, [sp+35]
    003fc510mov x3, x30
    003fc514bl runtime.morestack_noctxt.abi0
    003fc518ldp x0, x1, [sp+8]
    003fc51cldr x2, [sp+24]
    003fc520ldrb w3, [sp+32]
    003fc524ldrb w4, [sp+33]
    003fc528ldrb w5, [sp+34]
    003fc52cldrb w6, [sp+35]
    003fc530b 0x3fc360
    003fc534udf 0
    003fc538udf 0
    003fc53cudf 0
    003fc360
    003fc540
    003fc540image.NewNRGBA: ; void image.NewNRGBA(image.Rectangle r)
    003fc540ldr x16, [x28+16]
    003fc544subs xzr, sp, x16
    003fc548b.ls 0x3fc674
    003fc54cstr x30, [sp-128]!
    003fc550stur x29, [sp-8]
    003fc554sub x29, sp, 8
    003fc558str x0, [sp+136]
    003fc55cstr x1, [sp+144]
    003fc560str x2, [sp+152]
    003fc564str x3, [sp+160]
    003fc568str xzr, [sp+80]
    003fc56cldr x1, [sp+136]
    003fc570ldr x2, [sp+144]
    003fc574ldr x3, [sp+152]
    003fc578ldr x4, [sp+160]
    003fc57corr x0, xzr, 4
    003fc580adrp x5, 0x2b4000
    003fc584add x5, x5, 2212
    003fc588movz x6, 5
    003fc58cbl image.pixelBufferLength
    003fc590str x0, [sp+72]
    003fc594mov x1, x0
    003fc598mov x2, x1
    003fc59cadrp x0, 0x1f9000
    003fc5a0add x0, x0, 3072
    003fc5a4bl runtime.makeslice
    003fc5a8ldr x7, [sp+72]
    003fc5acldr x8, [sp+72]
    003fc5b0str x0, [sp+96]
    003fc5b4str x7, [sp+104]
    003fc5b8str x8, [sp+112]
    003fc5bcldr x0, [sp+136]
    003fc5c0ldr x1, [sp+144]
    003fc5c4ldr x2, [sp+152]
    003fc5c8ldr x3, [sp+160]
    003fc5ccbl image.Rectangle.Dx
    003fc5d0str x0, [sp+64]
    003fc5d4adrp x0, 0x25d000
    003fc5d8add x0, x0, 448
    003fc5dcbl runtime.newobject
    003fc5e0str x0, [sp+88]
    003fc5e4ldr x7, [sp+96]
    003fc5e8ldr x8, [sp+104]
    003fc5ecldr x9, [sp+112]
    003fc5f0str x8, [x0+8]
    003fc5f4str x9, [x0+16]
    003fc5f8adrp x27, 0x64f000
    003fc5fcldr w8, [x27+3056]
    003fc600cbz w8, 0x3fc608
    003fc604b 0x3fc60c
    003fc608
    003fc608loc_3fc608:
    003fc608b 0x3fc620
    003fc60c
    003fc60cloc_3fc60c:
    003fc60cbl runtime.gcWriteBarrier2
    003fc610str x7, [x25]
    003fc614ldr x1, [x0]
    003fc618str x1, [x25+8]
    003fc61cb 0x3fc620
    003fc620
    003fc620loc_3fc620:
    003fc620str x7, [x0]
    003fc624ldr x1, [sp+88]
    003fc628ldrsb x27, [x1]
    003fc62cldr x2, [sp+64]
    003fc630ubfm x2, x2, 62, 61
    003fc634str x2, [x1+24]
    003fc638ldr x1, [sp+88]
    003fc63cldrsb x27, [x1]
    003fc640ldr x2, [sp+136]
    003fc644ldr x3, [sp+144]
    003fc648ldr x4, [sp+152]
    003fc64cldr x5, [sp+160]
    003fc650str x2, [x1+32]
    003fc654str x3, [x1+40]
    003fc658str x4, [x1+48]
    003fc65cstr x5, [x1+56]
    003fc660ldr x0, [sp+88]
    003fc664str x0, [sp+80]
    003fc668ldur x29, [sp-8]
    003fc66cldr x30, [sp], 128
    003fc670ret x30
    003fc674
    003fc674loc_3fc674:
    003fc674stp x0, x1, [sp+8]
    003fc678stp x2, x3, [sp+24]
    003fc67cmov x3, x30
    003fc680bl runtime.morestack_noctxt.abi0
    003fc684ldp x0, x1, [sp+8]
    003fc688ldp x2, x3, [sp+24]
    003fc68cb 0x3fc540
    003fc540
    003fc690
    003fc690image.(*NRGBA64).Bounds: ; void image.(*NRGBA64).Bounds(image.NRGBA64 * p)
    003fc690str x30, [sp-48]!
    003fc694stur x29, [sp-8]
    003fc698sub x29, sp, 8
    003fc69cstr x0, [sp+56]
    003fc6a0stp xzr, xzr, [sp+8]
    003fc6a4stp xzr, xzr, [sp+24]
    003fc6a8ldr x4, [sp+56]
    003fc6acldrsb x27, [x4]
    003fc6b0ldr x0, [x4+32]
    003fc6b4ldr x1, [x4+40]
    003fc6b8ldr x2, [x4+48]
    003fc6bcldr x3, [x4+56]
    003fc6c0str x0, [sp+8]
    003fc6c4str x1, [sp+16]
    003fc6c8str x2, [sp+24]
    003fc6ccstr x3, [sp+32]
    003fc6d0add x29, sp, 40
    003fc6d4add sp, sp, 48
    003fc6d8ret x30
    003fc6dcudf 0
    003fc690
    003fc6e0
    003fc6e0image.(*NRGBA64).PixOffset: ; void image.(*NRGBA64).PixOffset(image.NRGBA64 * p, int x, int y)
    003fc6e0str x30, [sp-32]!
    003fc6e4stur x29, [sp-8]
    003fc6e8sub x29, sp, 8
    003fc6ecstr x0, [sp+40]
    003fc6f0str x1, [sp+48]
    003fc6f4str x2, [sp+56]
    003fc6f8str xzr, [sp+16]
    003fc6fcldrsb x27, [x0]
    003fc700ldrsb x27, [x0]
    003fc704ldrsb x27, [x0]
    003fc708ldr x3, [x0+40]
    003fc70csub x2, x2, x3
    003fc710ldr x3, [x0+24]
    003fc714ldr x4, [x0+32]
    003fc718sub x1, x1, x4
    003fc71cubfm x1, x1, 61, 60
    003fc720madd x0, x3, x2, x1
    003fc724str x0, [sp+16]
    003fc728add x29, sp, 24
    003fc72cadd sp, sp, 32
    003fc730ret x30
    003fc734udf 0
    003fc738udf 0
    003fc73cudf 0
    003fc6e0
    003fc740
    003fc740image.(*NRGBA64).SetNRGBA64: ; void image.(*NRGBA64).SetNRGBA64(image.NRGBA64 * p, int x, int y, image/color.NRGBA64 c)
    003fc740ldr x16, [x28+16]
    003fc744sub x17, sp, 48
    003fc748subs xzr, x17, x16
    003fc74cb.ls 0x3fc978
    003fc750str x30, [sp-176]!
    003fc754stur x29, [sp-8]
    003fc758sub x29, sp, 8
    003fc75cstr x0, [sp+184]
    003fc760str x1, [sp+192]
    003fc764str x2, [sp+200]
    003fc768strh w3, [sp+208]
    003fc76cstrh w4, [sp+210]
    003fc770strh w5, [sp+212]
    003fc774strh w6, [sp+214]
    003fc778stp xzr, xzr, [sp+80]
    003fc77cldr x6, [sp+192]
    003fc780str x6, [sp+80]
    003fc784ldr x6, [sp+200]
    003fc788str x6, [sp+88]
    003fc78cldr x6, [sp+184]
    003fc790ldrsb x27, [x6]
    003fc794ldr x2, [x6+32]
    003fc798ldr x3, [x6+40]
    003fc79cldr x4, [x6+48]
    003fc7a0ldr x5, [x6+56]
    003fc7a4str x2, [sp+112]
    003fc7a8str x3, [sp+120]
    003fc7acstr x4, [sp+128]
    003fc7b0str x5, [sp+136]
    003fc7b4ldr x0, [sp+80]
    003fc7b8ldr x1, [sp+88]
    003fc7bcbl image.Point.In
    003fc7c0strb w0, [sp+71]
    003fc7c4tbnz w0, 0, 0x3fc7cc
    003fc7c8b 0x3fc924
    003fc7cc
    003fc7ccloc_3fc7cc:
    003fc7ccldr x1, [sp+192]
    003fc7d0ldr x2, [sp+200]
    003fc7d4ldr x0, [sp+184]
    003fc7d8bl image.(*NRGBA64).PixOffset
    003fc7dcstr x0, [sp+72]
    003fc7e0add x1, x0, 8
    003fc7e4str x1, [sp+104]
    003fc7e8add x2, x0, 8
    003fc7ecstr x2, [sp+96]
    003fc7f0ldr x3, [sp+184]
    003fc7f4ldrsb x27, [x3]
    003fc7f8ldr x4, [x3]
    003fc7fcldr x3, [x3+16]
    003fc800subs xzr, x3, x2
    003fc804b.hs 0x3fc80c
    003fc808b 0x3fc970
    003fc80c
    003fc80cloc_3fc80c:
    003fc80csubs xzr, x2, x1
    003fc810b.hs 0x3fc818
    003fc814b 0x3fc96c
    003fc818
    003fc818loc_3fc818:
    003fc818subs xzr, x0, x1
    003fc81cb.ls 0x3fc824
    003fc820b 0x3fc968
    003fc824
    003fc824loc_3fc824:
    003fc824add x2, x4, x0
    003fc828str x2, [sp+144]
    003fc82corr x2, xzr, 8
    003fc830str x2, [sp+152]
    003fc834str x2, [sp+160]
    003fc838ldrh w2, [sp+208]
    003fc83cubfm x2, x2, 8, 15
    003fc840b 0x3fc844
    003fc844
    003fc844loc_3fc844:
    003fc844strb w2, [x4+x0]
    003fc848ldr x1, [sp+152]
    003fc84cldr x2, [sp+144]
    003fc850ldrh w3, [sp+208]
    003fc854subs xzr, x1, 1
    003fc858b.hi 0x3fc860
    003fc85cb 0x3fc960
    003fc860
    003fc860loc_3fc860:
    003fc860strb w3, [x2+1]
    003fc864ldr x1, [sp+152]
    003fc868ldr x2, [sp+144]
    003fc86cldrh w3, [sp+210]
    003fc870ubfm x3, x3, 8, 15
    003fc874subs xzr, x1, 2
    003fc878b.hi 0x3fc880
    003fc87cb 0x3fc958
    003fc880
    003fc880loc_3fc880:
    003fc880strb w3, [x2+2]
    003fc884ldr x1, [sp+152]
    003fc888ldr x2, [sp+144]
    003fc88cldrh w3, [sp+210]
    003fc890subs xzr, x1, 3
    003fc894b.hi 0x3fc89c
    003fc898b 0x3fc950
    003fc89c
    003fc89cloc_3fc89c:
    003fc89cstrb w3, [x2+3]
    003fc8a0ldr x1, [sp+152]
    003fc8a4ldr x2, [sp+144]
    003fc8a8ldrh w3, [sp+212]
    003fc8acubfm x3, x3, 8, 15
    003fc8b0subs xzr, x1, 4
    003fc8b4b.hi 0x3fc8bc
    003fc8b8b 0x3fc948
    003fc8bc
    003fc8bcloc_3fc8bc:
    003fc8bcstrb w3, [x2+4]
    003fc8c0ldr x1, [sp+152]
    003fc8c4ldr x2, [sp+144]
    003fc8c8ldrh w3, [sp+212]
    003fc8ccsubs xzr, x1, 5
    003fc8d0b.hi 0x3fc8d8
    003fc8d4b 0x3fc940
    003fc8d8
    003fc8d8loc_3fc8d8:
    003fc8d8strb w3, [x2+5]
    003fc8dcldr x1, [sp+152]
    003fc8e0ldr x2, [sp+144]
    003fc8e4ldrh w3, [sp+214]
    003fc8e8ubfm x3, x3, 8, 15
    003fc8ecsubs xzr, x1, 6
    003fc8f0b.hi 0x3fc8f8
    003fc8f4b 0x3fc938
    003fc8f8
    003fc8f8loc_3fc8f8:
    003fc8f8strb w3, [x2+6]
    003fc8fcldr x1, [sp+152]
    003fc900ldr x2, [sp+144]
    003fc904ldrh w3, [sp+214]
    003fc908subs xzr, x1, 7
    003fc90cb.hi 0x3fc914
    003fc910b 0x3fc930
    003fc914
    003fc914loc_3fc914:
    003fc914strb w3, [x2+7]
    003fc918ldur x29, [sp-8]
    003fc91cldr x30, [sp], 176
    003fc920ret x30
    003fc924
    003fc924loc_3fc924:
    003fc924ldur x29, [sp-8]
    003fc928ldr x30, [sp], 176
    003fc92cret x30
    003fc930
    003fc930loc_3fc930:
    003fc930orr x0, xzr, 7
    003fc934bl runtime.panicIndex
    003fc938
    003fc938loc_3fc938:
    003fc938orr x0, xzr, 6
    003fc93cbl runtime.panicIndex
    003fc940
    003fc940loc_3fc940:
    003fc940movz x0, 5
    003fc944bl runtime.panicIndex
    003fc948
    003fc948loc_3fc948:
    003fc948orr x0, xzr, 4
    003fc94cbl runtime.panicIndex
    003fc950
    003fc950loc_3fc950:
    003fc950orr x0, xzr, 3
    003fc954bl runtime.panicIndex
    003fc958
    003fc958loc_3fc958:
    003fc958orr x0, xzr, 2
    003fc95cbl runtime.panicIndex
    003fc960
    003fc960loc_3fc960:
    003fc960orr x0, xzr, 1
    003fc964bl runtime.panicIndex
    003fc968
    003fc968loc_3fc968:
    003fc968bl runtime.panicSlice3C
    003fc96c
    003fc96cloc_3fc96c:
    003fc96cbl runtime.panicSlice3B
    003fc970
    003fc970loc_3fc970:
    003fc970bl runtime.panicSlice3Acap
    003fc974hint
    003fc978
    003fc978loc_3fc978:
    003fc978stp x0, x1, [sp+8]
    003fc97cstr x2, [sp+24]
    003fc980strh w3, [sp+32]
    003fc984strh w4, [sp+34]
    003fc988strh w5, [sp+36]
    003fc98cstrh w6, [sp+38]
    003fc990mov x3, x30
    003fc994bl runtime.morestack_noctxt.abi0
    003fc998ldp x0, x1, [sp+8]
    003fc99cldr x2, [sp+24]
    003fc9a0ldrh w3, [sp+32]
    003fc9a4ldrh w4, [sp+34]
    003fc9a8ldrh w5, [sp+36]
    003fc9acldrh w6, [sp+38]
    003fc9b0b 0x3fc740
    003fc9b4udf 0
    003fc9b8udf 0
    003fc9bcudf 0
    003fc740
    003fc9c0
    003fc9c0image.NewNRGBA64: ; void image.NewNRGBA64(image.Rectangle r)
    003fc9c0ldr x16, [x28+16]
    003fc9c4subs xzr, sp, x16
    003fc9c8b.ls 0x3fcaf4
    003fc9ccstr x30, [sp-128]!
    003fc9d0stur x29, [sp-8]
    003fc9d4sub x29, sp, 8
    003fc9d8str x0, [sp+136]
    003fc9dcstr x1, [sp+144]
    003fc9e0str x2, [sp+152]
    003fc9e4str x3, [sp+160]
    003fc9e8str xzr, [sp+80]
    003fc9ecldr x1, [sp+136]
    003fc9f0ldr x2, [sp+144]
    003fc9f4ldr x3, [sp+152]
    003fc9f8ldr x4, [sp+160]
    003fc9fcorr x0, xzr, 8
    003fca00adrp x5, 0x2b5000
    003fca04add x5, x5, 286
    003fca08orr x6, xzr, 7
    003fca0cbl image.pixelBufferLength
    003fca10str x0, [sp+72]
    003fca14mov x1, x0
    003fca18mov x2, x1
    003fca1cadrp x0, 0x1f9000
    003fca20add x0, x0, 3072
    003fca24bl runtime.makeslice
    003fca28ldr x7, [sp+72]
    003fca2cldr x8, [sp+72]
    003fca30str x0, [sp+96]
    003fca34str x7, [sp+104]
    003fca38str x8, [sp+112]
    003fca3cldr x0, [sp+136]
    003fca40ldr x1, [sp+144]
    003fca44ldr x2, [sp+152]
    003fca48ldr x3, [sp+160]
    003fca4cbl image.Rectangle.Dx
    003fca50str x0, [sp+64]
    003fca54adrp x0, 0x25d000
    003fca58add x0, x0, 256
    003fca5cbl runtime.newobject
    003fca60str x0, [sp+88]
    003fca64ldr x7, [sp+96]
    003fca68ldr x8, [sp+104]
    003fca6cldr x9, [sp+112]
    003fca70str x8, [x0+8]
    003fca74str x9, [x0+16]
    003fca78adrp x27, 0x64f000
    003fca7cldr w8, [x27+3056]
    003fca80cbz w8, 0x3fca88
    003fca84b 0x3fca8c
    003fca88
    003fca88loc_3fca88:
    003fca88b 0x3fcaa0
    003fca8c
    003fca8cloc_3fca8c:
    003fca8cbl runtime.gcWriteBarrier2
    003fca90str x7, [x25]
    003fca94ldr x1, [x0]
    003fca98str x1, [x25+8]
    003fca9cb 0x3fcaa0
    003fcaa0
    003fcaa0loc_3fcaa0:
    003fcaa0str x7, [x0]
    003fcaa4ldr x1, [sp+88]
    003fcaa8ldrsb x27, [x1]
    003fcaacldr x2, [sp+64]
    003fcab0ubfm x2, x2, 61, 60
    003fcab4str x2, [x1+24]
    003fcab8ldr x1, [sp+88]
    003fcabcldrsb x27, [x1]
    003fcac0ldr x2, [sp+136]
    003fcac4ldr x3, [sp+144]
    003fcac8ldr x4, [sp+152]
    003fcaccldr x5, [sp+160]
    003fcad0str x2, [x1+32]
    003fcad4str x3, [x1+40]
    003fcad8str x4, [x1+48]
    003fcadcstr x5, [x1+56]
    003fcae0ldr x0, [sp+88]
    003fcae4str x0, [sp+80]
    003fcae8ldur x29, [sp-8]
    003fcaecldr x30, [sp], 128
    003fcaf0ret x30
    003fcaf4
    003fcaf4loc_3fcaf4:
    003fcaf4stp x0, x1, [sp+8]
    003fcaf8stp x2, x3, [sp+24]
    003fcafcmov x3, x30
    003fcb00bl runtime.morestack_noctxt.abi0
    003fcb04ldp x0, x1, [sp+8]
    003fcb08ldp x2, x3, [sp+24]
    003fcb0cb 0x3fc9c0
    003fc9c0
    003fcb10
    003fcb10image.(*Gray).Bounds: ; void image.(*Gray).Bounds(image.Gray * p)
    003fcb10str x30, [sp-48]!
    003fcb14stur x29, [sp-8]
    003fcb18sub x29, sp, 8
    003fcb1cstr x0, [sp+56]
    003fcb20stp xzr, xzr, [sp+8]
    003fcb24stp xzr, xzr, [sp+24]
    003fcb28ldr x4, [sp+56]
    003fcb2cldrsb x27, [x4]
    003fcb30ldr x0, [x4+32]
    003fcb34ldr x1, [x4+40]
    003fcb38ldr x2, [x4+48]
    003fcb3cldr x3, [x4+56]
    003fcb40str x0, [sp+8]
    003fcb44str x1, [sp+16]
    003fcb48str x2, [sp+24]
    003fcb4cstr x3, [sp+32]
    003fcb50add x29, sp, 40
    003fcb54add sp, sp, 48
    003fcb58ret x30
    003fcb5cudf 0
    003fcb10
    003fcb60
    003fcb60image.(*Gray).PixOffset: ; void image.(*Gray).PixOffset(image.Gray * p, int x, int y)
    003fcb60str x30, [sp-32]!
    003fcb64stur x29, [sp-8]
    003fcb68sub x29, sp, 8
    003fcb6cstr x0, [sp+40]
    003fcb70str x1, [sp+48]
    003fcb74str x2, [sp+56]
    003fcb78str xzr, [sp+16]
    003fcb7cldrsb x27, [x0]
    003fcb80ldrsb x27, [x0]
    003fcb84ldrsb x27, [x0]
    003fcb88ldr x3, [x0+40]
    003fcb8csub x2, x2, x3
    003fcb90ldr x3, [x0+24]
    003fcb94ldr x4, [x0+32]
    003fcb98sub x1, x1, x4
    003fcb9cmadd x0, x3, x2, x1
    003fcba0str x0, [sp+16]
    003fcba4add x29, sp, 24
    003fcba8add sp, sp, 32
    003fcbacret x30
    003fcb60
    003fcbb0
    003fcbb0image.(*Gray).SetGray: ; void image.(*Gray).SetGray(image.Gray * p, int x, int y, image/color.Gray c)
    003fcbb0ldr x16, [x28+16]
    003fcbb4subs xzr, sp, x16
    003fcbb8b.ls 0x3fcc84
    003fcbbcstr x30, [sp-128]!
    003fcbc0stur x29, [sp-8]
    003fcbc4sub x29, sp, 8
    003fcbc8str x0, [sp+136]
    003fcbccstr x1, [sp+144]
    003fcbd0str x2, [sp+152]
    003fcbd4strb w3, [sp+160]
    003fcbd8stp xzr, xzr, [sp+104]
    003fcbdcldr x6, [sp+144]
    003fcbe0str x6, [sp+104]
    003fcbe4ldr x6, [sp+152]
    003fcbe8str x6, [sp+112]
    003fcbecldr x6, [sp+136]
    003fcbf0ldrsb x27, [x6]
    003fcbf4ldr x2, [x6+32]
    003fcbf8ldr x3, [x6+40]
    003fcbfcldr x4, [x6+48]
    003fcc00ldr x5, [x6+56]
    003fcc04str x2, [sp+72]
    003fcc08str x3, [sp+80]
    003fcc0cstr x4, [sp+88]
    003fcc10str x5, [sp+96]
    003fcc14ldr x0, [sp+104]
    003fcc18ldr x1, [sp+112]
    003fcc1cbl image.Point.In
    003fcc20strb w0, [sp+63]
    003fcc24tbnz w0, 0, 0x3fcc2c
    003fcc28b 0x3fcc70
    003fcc2c
    003fcc2cloc_3fcc2c:
    003fcc2cldr x1, [sp+144]
    003fcc30ldr x2, [sp+152]
    003fcc34ldr x0, [sp+136]
    003fcc38bl image.(*Gray).PixOffset
    003fcc3cstr x0, [sp+64]
    003fcc40ldr x3, [sp+136]
    003fcc44ldrsb x27, [x3]
    003fcc48ldr x1, [x3+8]
    003fcc4cldr x3, [x3]
    003fcc50ldrb w4, [sp+160]
    003fcc54subs xzr, x0, x1
    003fcc58b.lo 0x3fcc60
    003fcc5cb 0x3fcc7c
    003fcc60
    003fcc60loc_3fcc60:
    003fcc60strb w4, [x3+x0]
    003fcc64ldur x29, [sp-8]
    003fcc68ldr x30, [sp], 128
    003fcc6cret x30
    003fcc70
    003fcc70loc_3fcc70:
    003fcc70ldur x29, [sp-8]
    003fcc74ldr x30, [sp], 128
    003fcc78ret x30
    003fcc7c
    003fcc7cloc_3fcc7c:
    003fcc7cbl runtime.panicIndex
    003fcc80hint
    003fcc84
    003fcc84loc_3fcc84:
    003fcc84stp x0, x1, [sp+8]
    003fcc88str x2, [sp+24]
    003fcc8cstrb w3, [sp+32]
    003fcc90mov x3, x30
    003fcc94bl runtime.morestack_noctxt.abi0
    003fcc98ldp x0, x1, [sp+8]
    003fcc9cldr x2, [sp+24]
    003fcca0ldrb w3, [sp+32]
    003fcca4b 0x3fcbb0
    003fcca8udf 0
    003fccacudf 0
    003fcbb0
    003fccb0
    003fccb0image.NewGray: ; void image.NewGray(image.Rectangle r)
    003fccb0ldr x16, [x28+16]
    003fccb4subs xzr, sp, x16
    003fccb8b.ls 0x3fcde0
    003fccbcstr x30, [sp-128]!
    003fccc0stur x29, [sp-8]
    003fccc4sub x29, sp, 8
    003fccc8str x0, [sp+136]
    003fccccstr x1, [sp+144]
    003fccd0str x2, [sp+152]
    003fccd4str x3, [sp+160]
    003fccd8str xzr, [sp+80]
    003fccdcldr x1, [sp+136]
    003fcce0ldr x2, [sp+144]
    003fcce4ldr x3, [sp+152]
    003fcce8ldr x4, [sp+160]
    003fccecorr x0, xzr, 1
    003fccf0adrp x5, 0x2b4000
    003fccf4add x5, x5, 1330
    003fccf8orr x6, xzr, 4
    003fccfcbl image.pixelBufferLength
    003fcd00str x0, [sp+72]
    003fcd04mov x1, x0
    003fcd08mov x2, x1
    003fcd0cadrp x0, 0x1f9000
    003fcd10add x0, x0, 3072
    003fcd14bl runtime.makeslice
    003fcd18ldr x7, [sp+72]
    003fcd1cldr x8, [sp+72]
    003fcd20str x0, [sp+96]
    003fcd24str x7, [sp+104]
    003fcd28str x8, [sp+112]
    003fcd2cldr x0, [sp+136]
    003fcd30ldr x1, [sp+144]
    003fcd34ldr x2, [sp+152]
    003fcd38ldr x3, [sp+160]
    003fcd3cbl image.Rectangle.Dx
    003fcd40str x0, [sp+64]
    003fcd44adrp x0, 0x25c000
    003fcd48add x0, x0, 3776
    003fcd4cbl runtime.newobject
    003fcd50str x0, [sp+88]
    003fcd54ldr x7, [sp+96]
    003fcd58ldr x8, [sp+104]
    003fcd5cldr x9, [sp+112]
    003fcd60str x8, [x0+8]
    003fcd64str x9, [x0+16]
    003fcd68adrp x27, 0x64f000
    003fcd6cldr w8, [x27+3056]
    003fcd70cbz w8, 0x3fcd78
    003fcd74b 0x3fcd7c
    003fcd78
    003fcd78loc_3fcd78:
    003fcd78b 0x3fcd90
    003fcd7c
    003fcd7cloc_3fcd7c:
    003fcd7cbl runtime.gcWriteBarrier2
    003fcd80str x7, [x25]
    003fcd84ldr x1, [x0]
    003fcd88str x1, [x25+8]
    003fcd8cb 0x3fcd90
    003fcd90
    003fcd90loc_3fcd90:
    003fcd90str x7, [x0]
    003fcd94ldr x1, [sp+88]
    003fcd98ldrsb x27, [x1]
    003fcd9cldr x2, [sp+64]
    003fcda0str x2, [x1+24]
    003fcda4ldr x1, [sp+88]
    003fcda8ldrsb x27, [x1]
    003fcdacldr x2, [sp+136]
    003fcdb0ldr x3, [sp+144]
    003fcdb4ldr x4, [sp+152]
    003fcdb8ldr x5, [sp+160]
    003fcdbcstr x2, [x1+32]
    003fcdc0str x3, [x1+40]
    003fcdc4str x4, [x1+48]
    003fcdc8str x5, [x1+56]
    003fcdccldr x0, [sp+88]
    003fcdd0str x0, [sp+80]
    003fcdd4ldur x29, [sp-8]
    003fcdd8ldr x30, [sp], 128
    003fcddcret x30
    003fcde0
    003fcde0loc_3fcde0:
    003fcde0stp x0, x1, [sp+8]
    003fcde4stp x2, x3, [sp+24]
    003fcde8mov x3, x30
    003fcdecbl runtime.morestack_noctxt.abi0
    003fcdf0ldp x0, x1, [sp+8]
    003fcdf4ldp x2, x3, [sp+24]
    003fcdf8b 0x3fccb0
    003fcdfcudf 0
    003fccb0
    003fce00
    003fce00image.(*Gray16).Bounds: ; void image.(*Gray16).Bounds(image.Gray16 * p)
    003fce00str x30, [sp-48]!
    003fce04stur x29, [sp-8]
    003fce08sub x29, sp, 8
    003fce0cstr x0, [sp+56]
    003fce10stp xzr, xzr, [sp+8]
    003fce14stp xzr, xzr, [sp+24]
    003fce18ldr x4, [sp+56]
    003fce1cldrsb x27, [x4]
    003fce20ldr x0, [x4+32]
    003fce24ldr x1, [x4+40]
    003fce28ldr x2, [x4+48]
    003fce2cldr x3, [x4+56]
    003fce30str x0, [sp+8]
    003fce34str x1, [sp+16]
    003fce38str x2, [sp+24]
    003fce3cstr x3, [sp+32]
    003fce40add x29, sp, 40
    003fce44add sp, sp, 48
    003fce48ret x30
    003fce4cudf 0
    003fce00
    003fce50
    003fce50image.(*Gray16).PixOffset: ; void image.(*Gray16).PixOffset(image.Gray16 * p, int x, int y)
    003fce50str x30, [sp-32]!
    003fce54stur x29, [sp-8]
    003fce58sub x29, sp, 8
    003fce5cstr x0, [sp+40]
    003fce60str x1, [sp+48]
    003fce64str x2, [sp+56]
    003fce68str xzr, [sp+16]
    003fce6cldrsb x27, [x0]
    003fce70ldrsb x27, [x0]
    003fce74ldrsb x27, [x0]
    003fce78ldr x3, [x0+40]
    003fce7csub x2, x2, x3
    003fce80ldr x3, [x0+24]
    003fce84ldr x4, [x0+32]
    003fce88sub x1, x1, x4
    003fce8cubfm x1, x1, 63, 62
    003fce90madd x0, x3, x2, x1
    003fce94str x0, [sp+16]
    003fce98add x29, sp, 24
    003fce9cadd sp, sp, 32
    003fcea0ret x30
    003fcea4udf 0
    003fcea8udf 0
    003fceacudf 0
    003fce50
    003fceb0
    003fceb0image.(*Gray16).SetGray16: ; void image.(*Gray16).SetGray16(image.Gray16 * p, int x, int y, image/color.Gray16 c)
    003fceb0ldr x16, [x28+16]
    003fceb4sub x17, sp, 16
    003fceb8subs xzr, x17, x16
    003fcebcb.ls 0x3fcfc4
    003fcec0str x30, [sp-144]!
    003fcec4stur x29, [sp-8]
    003fcec8sub x29, sp, 8
    003fceccstr x0, [sp+152]
    003fced0str x1, [sp+160]
    003fced4str x2, [sp+168]
    003fced8strh w3, [sp+176]
    003fcedcstp xzr, xzr, [sp+120]
    003fcee0ldr x6, [sp+160]
    003fcee4str x6, [sp+120]
    003fcee8ldr x6, [sp+168]
    003fceecstr x6, [sp+128]
    003fcef0ldr x6, [sp+152]
    003fcef4ldrsb x27, [x6]
    003fcef8ldr x2, [x6+32]
    003fcefcldr x3, [x6+40]
    003fcf00ldr x4, [x6+48]
    003fcf04ldr x5, [x6+56]
    003fcf08str x2, [sp+88]
    003fcf0cstr x3, [sp+96]
    003fcf10str x4, [sp+104]
    003fcf14str x5, [sp+112]
    003fcf18ldr x0, [sp+120]
    003fcf1cldr x1, [sp+128]
    003fcf20bl image.Point.In
    003fcf24strb w0, [sp+63]
    003fcf28tbnz w0, 0, 0x3fcf30
    003fcf2cb 0x3fcfac
    003fcf30
    003fcf30loc_3fcf30:
    003fcf30ldr x1, [sp+160]
    003fcf34ldr x2, [sp+168]
    003fcf38ldr x0, [sp+152]
    003fcf3cbl image.(*Gray16).PixOffset
    003fcf40str x0, [sp+64]
    003fcf44str x0, [sp+80]
    003fcf48ldr x3, [sp+152]
    003fcf4cldrsb x27, [x3]
    003fcf50ldr x1, [x3+8]
    003fcf54ldr x3, [x3]
    003fcf58ldrh w4, [sp+176]
    003fcf5cubfm x4, x4, 8, 15
    003fcf60subs xzr, x0, x1
    003fcf64b.lo 0x3fcf6c
    003fcf68b 0x3fcfbc
    003fcf6c
    003fcf6cloc_3fcf6c:
    003fcf6cstrb w4, [x3+x0]
    003fcf70ldr x2, [sp+64]
    003fcf74add x0, x2, 1
    003fcf78str x0, [sp+72]
    003fcf7cldr x2, [sp+152]
    003fcf80ldrsb x27, [x2]
    003fcf84ldr x1, [x2+8]
    003fcf88ldr x2, [x2]
    003fcf8cldrh w3, [sp+176]
    003fcf90subs xzr, x1, x0
    003fcf94b.hi 0x3fcf9c
    003fcf98b 0x3fcfb8
    003fcf9c
    003fcf9cloc_3fcf9c:
    003fcf9cstrb w3, [x2+x0]
    003fcfa0ldur x29, [sp-8]
    003fcfa4ldr x30, [sp], 144
    003fcfa8ret x30
    003fcfac
    003fcfacloc_3fcfac:
    003fcfacldur x29, [sp-8]
    003fcfb0ldr x30, [sp], 144
    003fcfb4ret x30
    003fcfb8
    003fcfb8loc_3fcfb8:
    003fcfb8bl runtime.panicIndex
    003fcfbc
    003fcfbcloc_3fcfbc:
    003fcfbcbl runtime.panicIndex
    003fcfc0hint
    003fcfc4
    003fcfc4loc_3fcfc4:
    003fcfc4stp x0, x1, [sp+8]
    003fcfc8str x2, [sp+24]
    003fcfccstrh w3, [sp+32]
    003fcfd0mov x3, x30
    003fcfd4bl runtime.morestack_noctxt.abi0
    003fcfd8ldp x0, x1, [sp+8]
    003fcfdcldr x2, [sp+24]
    003fcfe0ldrh w3, [sp+32]
    003fcfe4b 0x3fceb0
    003fcfe8udf 0
    003fcfecudf 0
    003fceb0
    003fcff0
    003fcff0image.NewGray16: ; void image.NewGray16(image.Rectangle r)
    003fcff0ldr x16, [x28+16]
    003fcff4subs xzr, sp, x16
    003fcff8b.ls 0x3fd124
    003fcffcstr x30, [sp-128]!
    003fd000stur x29, [sp-8]
    003fd004sub x29, sp, 8
    003fd008str x0, [sp+136]
    003fd00cstr x1, [sp+144]
    003fd010str x2, [sp+152]
    003fd014str x3, [sp+160]
    003fd018str xzr, [sp+80]
    003fd01cldr x1, [sp+136]
    003fd020ldr x2, [sp+144]
    003fd024ldr x3, [sp+152]
    003fd028ldr x4, [sp+160]
    003fd02corr x0, xzr, 2
    003fd030adrp x5, 0x2b3000
    003fd034add x5, x5, 3199
    003fd038orr x6, xzr, 6
    003fd03cbl image.pixelBufferLength
    003fd040str x0, [sp+72]
    003fd044mov x1, x0
    003fd048mov x2, x1
    003fd04cadrp x0, 0x1f8000
    003fd050add x0, x0, 3072
    003fd054bl runtime.makeslice
    003fd058ldr x7, [sp+72]
    003fd05cldr x8, [sp+72]
    003fd060str x0, [sp+96]
    003fd064str x7, [sp+104]
    003fd068str x8, [sp+112]
    003fd06cldr x0, [sp+136]
    003fd070ldr x1, [sp+144]
    003fd074ldr x2, [sp+152]
    003fd078ldr x3, [sp+160]
    003fd07cbl image.Rectangle.Dx
    003fd080str x0, [sp+64]
    003fd084adrp x0, 0x25b000
    003fd088add x0, x0, 3584
    003fd08cbl runtime.newobject
    003fd090str x0, [sp+88]
    003fd094ldr x7, [sp+96]
    003fd098ldr x8, [sp+104]
    003fd09cldr x9, [sp+112]
    003fd0a0str x8, [x0+8]
    003fd0a4str x9, [x0+16]
    003fd0a8adrp x27, 0x64e000
    003fd0acldr w8, [x27+3056]
    003fd0b0cbz w8, 0x3fd0b8
    003fd0b4b 0x3fd0bc
    003fd0b8
    003fd0b8loc_3fd0b8:
    003fd0b8b 0x3fd0d0
    003fd0bc
    003fd0bcloc_3fd0bc:
    003fd0bcbl runtime.gcWriteBarrier2
    003fd0c0str x7, [x25]
    003fd0c4ldr x1, [x0]
    003fd0c8str x1, [x25+8]
    003fd0ccb 0x3fd0d0
    003fd0d0
    003fd0d0loc_3fd0d0:
    003fd0d0str x7, [x0]
    003fd0d4ldr x1, [sp+88]
    003fd0d8ldrsb x27, [x1]
    003fd0dcldr x2, [sp+64]
    003fd0e0ubfm x2, x2, 63, 62
    003fd0e4str x2, [x1+24]
    003fd0e8ldr x1, [sp+88]
    003fd0ecldrsb x27, [x1]
    003fd0f0ldr x2, [sp+136]
    003fd0f4ldr x3, [sp+144]
    003fd0f8ldr x4, [sp+152]
    003fd0fcldr x5, [sp+160]
    003fd100str x2, [x1+32]
    003fd104str x3, [x1+40]
    003fd108str x4, [x1+48]
    003fd10cstr x5, [x1+56]
    003fd110ldr x0, [sp+88]
    003fd114str x0, [sp+80]
    003fd118ldur x29, [sp-8]
    003fd11cldr x30, [sp], 128
    003fd120ret x30
    003fd124
    003fd124loc_3fd124:
    003fd124stp x0, x1, [sp+8]
    003fd128stp x2, x3, [sp+24]
    003fd12cmov x3, x30
    003fd130bl runtime.morestack_noctxt.abi0
    003fd134ldp x0, x1, [sp+8]
    003fd138ldp x2, x3, [sp+24]
    003fd13cb 0x3fcff0
    003fcff0
    003fd140
    003fd140image.(*Paletted).Bounds: ; void image.(*Paletted).Bounds(image.Paletted * p)
    003fd140str x30, [sp-48]!
    003fd144stur x29, [sp-8]
    003fd148sub x29, sp, 8
    003fd14cstr x0, [sp+56]
    003fd150stp xzr, xzr, [sp+8]
    003fd154stp xzr, xzr, [sp+24]
    003fd158ldr x4, [sp+56]
    003fd15cldrsb x27, [x4]
    003fd160ldr x0, [x4+32]
    003fd164ldr x1, [x4+40]
    003fd168ldr x2, [x4+48]
    003fd16cldr x3, [x4+56]
    003fd170str x0, [sp+8]
    003fd174str x1, [sp+16]
    003fd178str x2, [sp+24]
    003fd17cstr x3, [sp+32]
    003fd180add x29, sp, 40
    003fd184add sp, sp, 48
    003fd188ret x30
    003fd18cudf 0
    003fd140
    003fd190
    003fd190image.(*Paletted).PixOffset: ; void image.(*Paletted).PixOffset(image.Paletted * p, int x, int y)
    003fd190str x30, [sp-32]!
    003fd194stur x29, [sp-8]
    003fd198sub x29, sp, 8
    003fd19cstr x0, [sp+40]
    003fd1a0str x1, [sp+48]
    003fd1a4str x2, [sp+56]
    003fd1a8str xzr, [sp+16]
    003fd1acldrsb x27, [x0]
    003fd1b0ldrsb x27, [x0]
    003fd1b4ldrsb x27, [x0]
    003fd1b8ldr x3, [x0+40]
    003fd1bcsub x2, x2, x3
    003fd1c0ldr x3, [x0+24]
    003fd1c4ldr x4, [x0+32]
    003fd1c8sub x1, x1, x4
    003fd1ccmadd x0, x3, x2, x1
    003fd1d0str x0, [sp+16]
    003fd1d4add x29, sp, 24
    003fd1d8add sp, sp, 32
    003fd1dcret x30
    003fd190
    003fd1e0
    003fd1e0image.(*Paletted).SetColorIndex: ; void image.(*Paletted).SetColorIndex(image.Paletted * p, int x, int y, uint8 index)
    003fd1e0ldr x16, [x28+16]
    003fd1e4subs xzr, sp, x16
    003fd1e8b.ls 0x3fd2b4
    003fd1ecstr x30, [sp-128]!
    003fd1f0stur x29, [sp-8]
    003fd1f4sub x29, sp, 8
    003fd1f8str x0, [sp+136]
    003fd1fcstr x1, [sp+144]
    003fd200str x2, [sp+152]
    003fd204strb w3, [sp+160]
    003fd208stp xzr, xzr, [sp+104]
    003fd20cldr x6, [sp+144]
    003fd210str x6, [sp+104]
    003fd214ldr x6, [sp+152]
    003fd218str x6, [sp+112]
    003fd21cldr x6, [sp+136]
    003fd220ldrsb x27, [x6]
    003fd224ldr x2, [x6+32]
    003fd228ldr x3, [x6+40]
    003fd22cldr x4, [x6+48]
    003fd230ldr x5, [x6+56]
    003fd234str x2, [sp+72]
    003fd238str x3, [sp+80]
    003fd23cstr x4, [sp+88]
    003fd240str x5, [sp+96]
    003fd244ldr x0, [sp+104]
    003fd248ldr x1, [sp+112]
    003fd24cbl image.Point.In
    003fd250strb w0, [sp+63]
    003fd254tbnz w0, 0, 0x3fd25c
    003fd258b 0x3fd2a0
    003fd25c
    003fd25cloc_3fd25c:
    003fd25cldr x1, [sp+144]
    003fd260ldr x2, [sp+152]
    003fd264ldr x0, [sp+136]
    003fd268bl image.(*Paletted).PixOffset
    003fd26cstr x0, [sp+64]
    003fd270ldr x3, [sp+136]
    003fd274ldrsb x27, [x3]
    003fd278ldr x1, [x3+8]
    003fd27cldr x3, [x3]
    003fd280ldrb w4, [sp+160]
    003fd284subs xzr, x0, x1
    003fd288b.lo 0x3fd290
    003fd28cb 0x3fd2ac
    003fd290
    003fd290loc_3fd290:
    003fd290strb w4, [x3+x0]
    003fd294ldur x29, [sp-8]
    003fd298ldr x30, [sp], 128
    003fd29cret x30
    003fd2a0
    003fd2a0loc_3fd2a0:
    003fd2a0ldur x29, [sp-8]
    003fd2a4ldr x30, [sp], 128
    003fd2a8ret x30
    003fd2ac
    003fd2acloc_3fd2ac:
    003fd2acbl runtime.panicIndex
    003fd2b0hint
    003fd2b4
    003fd2b4loc_3fd2b4:
    003fd2b4stp x0, x1, [sp+8]
    003fd2b8str x2, [sp+24]
    003fd2bcstrb w3, [sp+32]
    003fd2c0mov x3, x30
    003fd2c4bl runtime.morestack_noctxt.abi0
    003fd2c8ldp x0, x1, [sp+8]
    003fd2ccldr x2, [sp+24]
    003fd2d0ldrb w3, [sp+32]
    003fd2d4b 0x3fd1e0
    003fd2d8udf 0
    003fd2dcudf 0
    003fd1e0
    003fd2e0
    003fd2e0image.NewPaletted: ; void image.NewPaletted(image.Rectangle r, image/color.Palette p)
    003fd2e0ldr x16, [x28+16]
    003fd2e4subs xzr, sp, x16
    003fd2e8b.ls 0x3fd464
    003fd2ecstr x30, [sp-128]!
    003fd2f0stur x29, [sp-8]
    003fd2f4sub x29, sp, 8
    003fd2f8str x0, [sp+136]
    003fd2fcstr x1, [sp+144]
    003fd300str x2, [sp+152]
    003fd304str x3, [sp+160]
    003fd308str x4, [sp+168]
    003fd30cstr x5, [sp+176]
    003fd310str x6, [sp+184]
    003fd314str xzr, [sp+80]
    003fd318ldr x1, [sp+136]
    003fd31cldr x2, [sp+144]
    003fd320ldr x3, [sp+152]
    003fd324ldr x4, [sp+160]
    003fd328orr x0, xzr, 1
    003fd32cadrp x5, 0x2b4000
    003fd330add x5, x5, 2076
    003fd334orr x6, xzr, 8
    003fd338bl image.pixelBufferLength
    003fd33cstr x0, [sp+72]
    003fd340mov x1, x0
    003fd344mov x2, x1
    003fd348adrp x0, 0x1f8000
    003fd34cadd x0, x0, 3072
    003fd350bl runtime.makeslice
    003fd354ldr x7, [sp+72]
    003fd358ldr x8, [sp+72]
    003fd35cstr x0, [sp+96]
    003fd360str x7, [sp+104]
    003fd364str x8, [sp+112]
    003fd368ldr x0, [sp+136]
    003fd36cldr x1, [sp+144]
    003fd370ldr x2, [sp+152]
    003fd374ldr x3, [sp+160]
    003fd378bl image.Rectangle.Dx
    003fd37cstr x0, [sp+64]
    003fd380adrp x0, 0x26b000
    003fd384add x0, x0, 608
    003fd388bl runtime.newobject
    003fd38cstr x0, [sp+88]
    003fd390ldr x7, [sp+96]
    003fd394ldr x8, [sp+104]
    003fd398ldr x9, [sp+112]
    003fd39cstr x8, [x0+8]
    003fd3a0str x9, [x0+16]
    003fd3a4adrp x27, 0x64e000
    003fd3a8ldr w8, [x27+3056]
    003fd3accbz w8, 0x3fd3b4
    003fd3b0b 0x3fd3b8
    003fd3b4
    003fd3b4loc_3fd3b4:
    003fd3b4b 0x3fd3cc
    003fd3b8
    003fd3b8loc_3fd3b8:
    003fd3b8bl runtime.gcWriteBarrier2
    003fd3bcstr x7, [x25]
    003fd3c0ldr x1, [x0]
    003fd3c4str x1, [x25+8]
    003fd3c8b 0x3fd3cc
    003fd3cc
    003fd3ccloc_3fd3cc:
    003fd3ccstr x7, [x0]
    003fd3d0ldr x1, [sp+88]
    003fd3d4ldrsb x27, [x1]
    003fd3d8ldr x2, [sp+64]
    003fd3dcstr x2, [x1+24]
    003fd3e0ldr x1, [sp+88]
    003fd3e4ldrsb x27, [x1]
    003fd3e8ldr x2, [sp+136]
    003fd3ecldr x3, [sp+144]
    003fd3f0ldr x4, [sp+152]
    003fd3f4ldr x5, [sp+160]
    003fd3f8str x2, [x1+32]
    003fd3fcstr x3, [x1+40]
    003fd400str x4, [x1+48]
    003fd404str x5, [x1+56]
    003fd408ldr x1, [sp+88]
    003fd40cldrsb x27, [x1]
    003fd410ldr x2, [sp+168]
    003fd414ldr x3, [sp+176]
    003fd418ldr x4, [sp+184]
    003fd41cstr x3, [x1+72]
    003fd420str x4, [x1+80]
    003fd424adrp x27, 0x64e000
    003fd428ldr w3, [x27+3056]
    003fd42ccbz w3, 0x3fd434
    003fd430b 0x3fd438
    003fd434
    003fd434loc_3fd434:
    003fd434b 0x3fd44c
    003fd438
    003fd438loc_3fd438:
    003fd438bl runtime.gcWriteBarrier2
    003fd43cstr x2, [x25]
    003fd440ldr x3, [x1+64]
    003fd444str x3, [x25+8]
    003fd448b 0x3fd44c
    003fd44c
    003fd44cloc_3fd44c:
    003fd44cstr x2, [x1+64]
    003fd450ldr x0, [sp+88]
    003fd454str x0, [sp+80]
    003fd458ldur x29, [sp-8]
    003fd45cldr x30, [sp], 128
    003fd460ret x30
    003fd464
    003fd464loc_3fd464:
    003fd464stp x0, x1, [sp+8]
    003fd468stp x2, x3, [sp+24]
    003fd46cstp x4, x5, [sp+40]
    003fd470str x6, [sp+56]
    003fd474mov x3, x30
    003fd478bl runtime.morestack_noctxt.abi0
    003fd47cldp x0, x1, [sp+8]
    003fd480ldp x2, x3, [sp+24]
    003fd484ldp x4, x5, [sp+40]
    003fd488ldr x6, [sp+56]
    003fd48cb 0x3fd2e0
    003fd2e0
    003fd490
    003fd490image.NewUniform: ; void image.NewUniform(image/color.Color c)
    003fd490ldr x16, [x28+16]
    003fd494subs xzr, sp, x16
    003fd498b.ls 0x3fd510
    003fd49cstr x30, [sp-64]!
    003fd4a0stur x29, [sp-8]
    003fd4a4sub x29, sp, 8
    003fd4a8str x0, [sp+72]
    003fd4acstr x1, [sp+80]
    003fd4b0str xzr, [sp+40]
    003fd4b4adrp x0, 0x230000
    003fd4b8add x0, x0, 4064
    003fd4bcbl runtime.newobject
    003fd4c0str x0, [sp+48]
    003fd4c4ldr x1, [sp+80]
    003fd4c8ldr x2, [sp+72]
    003fd4ccstr x2, [x0]
    003fd4d0adrp x27, 0x64e000
    003fd4d4ldr w2, [x27+3056]
    003fd4d8cbz w2, 0x3fd4e0
    003fd4dcb 0x3fd4e4
    003fd4e0
    003fd4e0loc_3fd4e0:
    003fd4e0b 0x3fd4f8
    003fd4e4
    003fd4e4loc_3fd4e4:
    003fd4e4bl runtime.gcWriteBarrier2
    003fd4e8str x1, [x25]
    003fd4ecldr x2, [x0+8]
    003fd4f0str x2, [x25+8]
    003fd4f4b 0x3fd4f8
    003fd4f8
    003fd4f8loc_3fd4f8:
    003fd4f8str x1, [x0+8]
    003fd4fcldr x0, [sp+48]
    003fd500str x0, [sp+40]
    003fd504ldur x29, [sp-8]
    003fd508ldr x30, [sp], 64
    003fd50cret x30
    003fd510
    003fd510loc_3fd510:
    003fd510stp x0, x1, [sp+8]
    003fd514mov x3, x30
    003fd518bl runtime.morestack_noctxt.abi0
    003fd51cldp x0, x1, [sp+8]
    003fd520b 0x3fd490
    003fd524udf 0
    003fd528udf 0
    003fd52cudf 0
    003fd490
    003fd530
    003fd530image.(*Point).String: ; void image.(*Point).String(image.Point * p)
    003fd530ldr x16, [x28+16]
    003fd534subs xzr, sp, x16
    003fd538b.ls 0x3fd5a4
    003fd53cstr x30, [sp-80]!
    003fd540stur x29, [sp-8]
    003fd544sub x29, sp, 8
    003fd548ldr x16, [x28+32]
    003fd54ccbnz x16, 0x3fd5b8
    003fd550
    003fd550loc_3fd550:
    003fd550str x0, [sp+88]
    003fd554stp xzr, xzr, [sp+40]
    003fd558ldr x2, [sp+88]
    003fd55ccbnz x2, 0x3fd564
    003fd560b 0x3fd59c
    003fd564
    003fd564loc_3fd564:
    003fd564ldr x2, [sp+88]
    003fd568ldrsb x27, [x2]
    003fd56cldr x0, [x2]
    003fd570ldr x1, [x2+8]
    003fd574str x0, [sp+24]
    003fd578str x1, [sp+32]
    003fd57cbl image.Point.String
    003fd580str x0, [sp+56]
    003fd584str x1, [sp+64]
    003fd588str x0, [sp+40]
    003fd58cstr x1, [sp+48]
    003fd590ldur x29, [sp-8]
    003fd594ldr x30, [sp], 80
    003fd598ret x30
    003fd59c
    003fd59cloc_3fd59c:
    003fd59cbl runtime.panicwrap
    003fd5a0hint
    003fd5a4
    003fd5a4loc_3fd5a4:
    003fd5a4str x0, [sp+8]
    003fd5a8mov x3, x30
    003fd5acbl runtime.morestack_noctxt.abi0
    003fd5b0ldr x0, [sp+8]
    003fd5b4b 0x3fd530
    003fd5b8
    003fd5b8loc_3fd5b8:
    003fd5b8ldr x17, [x16]
    003fd5bcadd x20, sp, 88
    003fd5c0subs xzr, x20, x17
    003fd5c4b.ne 0x3fd550
    003fd5c8add x20, sp, 8
    003fd5ccstr x20, [x16]
    003fd5d0b 0x3fd550
    003fd5d4udf 0
    003fd5d8udf 0
    003fd5dcudf 0
    003fd530
    003fd5e0
    003fd5e0image.(*Rectangle).Bounds: ; void image.(*Rectangle).Bounds(image.Rectangle * r)
    003fd5e0ldr x16, [x28+16]
    003fd5e4sub x17, sp, 16
    003fd5e8subs xzr, x17, x16
    003fd5ecb.ls 0x3fd67c
    003fd5f0str x30, [sp-144]!
    003fd5f4stur x29, [sp-8]
    003fd5f8sub x29, sp, 8
    003fd5fcldr x16, [x28+32]
    003fd600cbnz x16, 0x3fd690
    003fd604
    003fd604loc_3fd604:
    003fd604str x0, [sp+152]
    003fd608stp xzr, xzr, [sp+40]
    003fd60cstp xzr, xzr, [sp+56]
    003fd610ldr x4, [sp+152]
    003fd614cbnz x4, 0x3fd61c
    003fd618b 0x3fd674
    003fd61c
    003fd61cloc_3fd61c:
    003fd61cldr x4, [sp+152]
    003fd620ldrsb x27, [x4]
    003fd624ldr x0, [x4]
    003fd628ldr x1, [x4+8]
    003fd62cldr x2, [x4+16]
    003fd630ldr x3, [x4+24]
    003fd634str x0, [sp+72]
    003fd638str x1, [sp+80]
    003fd63cstr x2, [sp+88]
    003fd640str x3, [sp+96]
    003fd644bl image.Rectangle.Bounds
    003fd648str x0, [sp+104]
    003fd64cstr x1, [sp+112]
    003fd650str x2, [sp+120]
    003fd654str x3, [sp+128]
    003fd658str x0, [sp+40]
    003fd65cstr x1, [sp+48]
    003fd660str x2, [sp+56]
    003fd664str x3, [sp+64]
    003fd668ldur x29, [sp-8]
    003fd66cldr x30, [sp], 144
    003fd670ret x30
    003fd674
    003fd674loc_3fd674:
    003fd674bl runtime.panicwrap
    003fd678hint
    003fd67c
    003fd67cloc_3fd67c:
    003fd67cstr x0, [sp+8]
    003fd680mov x3, x30
    003fd684bl runtime.morestack_noctxt.abi0
    003fd688ldr x0, [sp+8]
    003fd68cb 0x3fd5e0
    003fd690
    003fd690loc_3fd690:
    003fd690ldr x17, [x16]
    003fd694add x20, sp, 152
    003fd698subs xzr, x20, x17
    003fd69cb.ne 0x3fd604
    003fd6a0add x20, sp, 8
    003fd6a4str x20, [x16]
    003fd6a8b 0x3fd604
    003fd6acudf 0
    003fd5e0
    003fd6b0
    003fd6b0image.(*Rectangle).String: ; void image.(*Rectangle).String(image.Rectangle * r)
    003fd6b0ldr x16, [x28+16]
    003fd6b4subs xzr, sp, x16
    003fd6b8b.ls 0x3fd734
    003fd6bcstr x30, [sp-112]!
    003fd6c0stur x29, [sp-8]
    003fd6c4sub x29, sp, 8
    003fd6c8ldr x16, [x28+32]
    003fd6cccbnz x16, 0x3fd748
    003fd6d0
    003fd6d0loc_3fd6d0:
    003fd6d0str x0, [sp+120]
    003fd6d4stp xzr, xzr, [sp+72]
    003fd6d8ldr x4, [sp+120]
    003fd6dccbnz x4, 0x3fd6e4
    003fd6e0b 0x3fd72c
    003fd6e4
    003fd6e4loc_3fd6e4:
    003fd6e4ldr x4, [sp+120]
    003fd6e8ldrsb x27, [x4]
    003fd6ecldr x0, [x4]
    003fd6f0ldr x1, [x4+8]
    003fd6f4ldr x2, [x4+16]
    003fd6f8ldr x3, [x4+24]
    003fd6fcstr x0, [sp+40]
    003fd700str x1, [sp+48]
    003fd704str x2, [sp+56]
    003fd708str x3, [sp+64]
    003fd70cbl image.Rectangle.String
    003fd710str x0, [sp+88]
    003fd714str x1, [sp+96]
    003fd718str x0, [sp+72]
    003fd71cstr x1, [sp+80]
    003fd720ldur x29, [sp-8]
    003fd724ldr x30, [sp], 112
    003fd728ret x30
    003fd72c
    003fd72cloc_3fd72c:
    003fd72cbl runtime.panicwrap
    003fd730hint
    003fd734
    003fd734loc_3fd734:
    003fd734str x0, [sp+8]
    003fd738mov x3, x30
    003fd73cbl runtime.morestack_noctxt.abi0
    003fd740ldr x0, [sp+8]
    003fd744b 0x3fd6b0
    003fd748
    003fd748loc_3fd748:
    003fd748ldr x17, [x16]
    003fd74cadd x20, sp, 120
    003fd750subs xzr, x20, x17
    003fd754b.ne 0x3fd6d0
    003fd758add x20, sp, 8
    003fd75cstr x20, [x16]
    003fd760b 0x3fd6d0
    003fd764udf 0
    003fd768udf 0
    003fd76cudf 0
    003fd6b0
    003fd770
    003fd770type:.eq.image.Config: ; void type:.eq.image.Config(image.Config * p, image.Config * q)
    003fd770ldr x16, [x28+16]
    003fd774subs xzr, sp, x16
    003fd778b.ls 0x3fd840
    003fd77cstr x30, [sp-80]!
    003fd780stur x29, [sp-8]
    003fd784sub x29, sp, 8
    003fd788str x0, [sp+88]
    003fd78cstr x1, [sp+96]
    003fd790strb wzr, [sp+39]
    003fd794ldr x3, [sp+96]
    003fd798ldr x4, [x3]
    003fd79cldr x3, [x3+8]
    003fd7a0str x4, [sp+56]
    003fd7a4str x3, [sp+64]
    003fd7a8ldr x3, [sp+88]
    003fd7acldr x0, [x3]
    003fd7b0ldr x1, [x3+8]
    003fd7b4str x0, [sp+40]
    003fd7b8str x1, [sp+48]
    003fd7bcldr x3, [sp+56]
    003fd7c0subs xzr, x3, x0
    003fd7c4b.eq 0x3fd7cc
    003fd7c8b 0x3fd820
    003fd7cc
    003fd7ccloc_3fd7cc:
    003fd7ccldr x2, [sp+64]
    003fd7d0bl runtime.ifaceeq
    003fd7d4tbnz w0, 0, 0x3fd7dc
    003fd7d8b 0x3fd81c
    003fd7dc
    003fd7dcloc_3fd7dc:
    003fd7dcldr x1, [sp+88]
    003fd7e0ldr x2, [sp+96]
    003fd7e4ldr x1, [x1+16]
    003fd7e8ldr x2, [x2+16]
    003fd7ecsubs xzr, x2, x1
    003fd7f0b.eq 0x3fd7f8
    003fd7f4b 0x3fd818
    003fd7f8
    003fd7f8loc_3fd7f8:
    003fd7f8ldr x1, [sp+88]
    003fd7fcldr x2, [sp+96]
    003fd800ldr x1, [x1+24]
    003fd804ldr x2, [x2+24]
    003fd808subs xzr, x2, x1
    003fd80ccset x1, eq
    003fd810strb w1, [sp+39]
    003fd814b 0x3fd830
    003fd818
    003fd818loc_3fd818:
    003fd818b 0x3fd828
    003fd81c
    003fd81cloc_3fd81c:
    003fd81cb 0x3fd824
    003fd820
    003fd820loc_3fd820:
    003fd820b 0x3fd824
    003fd824
    003fd824loc_3fd824:
    003fd824b 0x3fd828
    003fd828
    003fd828loc_3fd828:
    003fd828strb wzr, [sp+39]
    003fd82cb 0x3fd830
    003fd830
    003fd830loc_3fd830:
    003fd830ldrb w0, [sp+39]
    003fd834ldur x29, [sp-8]
    003fd838ldr x30, [sp], 80
    003fd83cret x30
    003fd840
    003fd840loc_3fd840:
    003fd840stp x0, x1, [sp+8]
    003fd844mov x3, x30
    003fd848bl runtime.morestack_noctxt.abi0
    003fd84cldp x0, x1, [sp+8]
    003fd850b 0x3fd770
    003fd854udf 0
    003fd858udf 0
    003fd85cudf 0
    003fd770
    003fd860
    003fd860hash/adler32.(*digest).Reset: ; void hash/adler32.(*digest).Reset(hash/adler32.digest * d)
    003fd860str x0, [sp+8]
    003fd864ldrsb x27, [x0]
    003fd868orr x1, xzr, 1
    003fd86cstr w1, [x0]
    003fd870ret x30
    003fd874udf 0
    003fd878udf 0
    003fd87cudf 0
    003fd860
    003fd880
    003fd880hash/adler32.New: ; void hash/adler32.New(void)
    003fd880ldr x16, [x28+16]
    003fd884subs xzr, sp, x16
    003fd888b.ls 0x3fd8dc
    003fd88cstr x30, [sp-80]!
    003fd890stur x29, [sp-8]
    003fd894sub x29, sp, 8
    003fd898stp xzr, xzr, [sp+40]
    003fd89cadrp x0, 0x1f9000
    003fd8a0add x0, x0, 3776
    003fd8a4bl runtime.newobject
    003fd8a8str x0, [sp+56]
    003fd8acbl hash/adler32.(*digest).Reset
    003fd8b0ldr x1, [sp+56]
    003fd8b4str x1, [sp+64]
    003fd8b8adrp x2, 0x31d000
    003fd8bcadd x2, x2, 1872
    003fd8c0str x2, [sp+40]
    003fd8c4str x1, [sp+48]
    003fd8c8ldr x0, [sp+40]
    003fd8ccldr x1, [sp+48]
    003fd8d0ldur x29, [sp-8]
    003fd8d4ldr x30, [sp], 80
    003fd8d8ret x30
    003fd8dc
    003fd8dcloc_3fd8dc:
    003fd8dcmov x3, x30
    003fd8e0bl runtime.morestack_noctxt.abi0
    003fd8e4b 0x3fd880
    003fd8e8udf 0
    003fd8ecudf 0
    003fd880
    003fd8f0
    003fd8f0hash/adler32.(*digest).Size: ; void hash/adler32.(*digest).Size(hash/adler32.digest * d)
    003fd8f0str x30, [sp-32]!
    003fd8f4stur x29, [sp-8]
    003fd8f8sub x29, sp, 8
    003fd8fcstr x0, [sp+40]
    003fd900str xzr, [sp+16]
    003fd904orr x0, xzr, 4
    003fd908str x0, [sp+16]
    003fd90cadd x29, sp, 24
    003fd910add sp, sp, 32
    003fd914ret x30
    003fd918udf 0
    003fd91cudf 0
    003fd8f0
    003fd920
    003fd920hash/adler32.(*digest).BlockSize: ; void hash/adler32.(*digest).BlockSize(hash/adler32.digest * d)
    003fd920str x30, [sp-32]!
    003fd924stur x29, [sp-8]
    003fd928sub x29, sp, 8
    003fd92cstr x0, [sp+40]
    003fd930str xzr, [sp+16]
    003fd934orr x0, xzr, 4
    003fd938str x0, [sp+16]
    003fd93cadd x29, sp, 24
    003fd940add sp, sp, 32
    003fd944ret x30
    003fd948udf 0
    003fd94cudf 0
    003fd920
    003fd950
    003fd950hash/adler32.(*digest).AppendBinary: ; void hash/adler32.(*digest).AppendBinary(hash/adler32.digest * d, struct []uint8 b)
    003fd950ldr x16, [x28+16]
    003fd954sub x17, sp, 32
    003fd958subs xzr, x17, x16
    003fd95cb.ls 0x3fda80
    003fd960str x30, [sp-160]!
    003fd964stur x29, [sp-8]
    003fd968sub x29, sp, 8
    003fd96cstr x0, [sp+168]
    003fd970str x1, [sp+176]
    003fd974str x2, [sp+184]
    003fd978str x3, [sp+192]
    003fd97cstr xzr, [sp+96]
    003fd980stp xzr, xzr, [sp+104]
    003fd984stp xzr, xzr, [sp+80]
    003fd988ldr x2, [sp+192]
    003fd98cldr x0, [sp+176]
    003fd990ldr x5, [sp+184]
    003fd994add x1, x5, 4
    003fd998str x0, [sp+128]
    003fd99cstr x5, [sp+136]
    003fd9a0str x2, [sp+144]
    003fd9a4str x1, [sp+72]
    003fd9a8subs xzr, x2, x1
    003fd9acb.hs 0x3fd9b4
    003fd9b0b 0x3fd9bc
    003fd9b4
    003fd9b4loc_3fd9b4:
    003fd9b4str x1, [sp+136]
    003fd9b8b 0x3fd9dc
    003fd9bc
    003fd9bcloc_3fd9bc:
    003fd9bcorr x3, xzr, 4
    003fd9c0adrp x4, 0x1f8000
    003fd9c4add x4, x4, 3072
    003fd9c8bl runtime.growslice
    003fd9ccstr x0, [sp+128]
    003fd9d0str x1, [sp+136]
    003fd9d4str x2, [sp+144]
    003fd9d8b 0x3fd9dc
    003fd9dc
    003fd9dcloc_3fd9dc:
    003fd9dcorr x3, xzr, 4
    003fd9e0str x3, [sp+64]
    003fd9e4ldr x3, [sp+72]
    003fd9e8sub x3, x3, 4
    003fd9ecldr x4, [sp+128]
    003fd9f0add x0, x4, x3
    003fd9f4str x0, [sp+120]
    003fd9f8ldr x2, [sp+64]
    003fd9fcadrp x1, 0x2b3000
    003fda00add x1, x1, 1478
    003fda04bl runtime.memmove
    003fda08ldr x3, [sp+128]
    003fda0cldr x4, [sp+136]
    003fda10ldr x5, [sp+144]
    003fda14str x3, [sp+176]
    003fda18str x4, [sp+184]
    003fda1cstr x5, [sp+192]
    003fda20ldr x3, [sp+168]
    003fda24ldrsb x27, [x3]
    003fda28ldr w3, [x3]
    003fda2cstr w3, [sp+60]
    003fda30ldr w3, [sp+60]
    003fda34ldr x0, [sp+176]
    003fda38ldr x1, [sp+184]
    003fda3cldr x2, [sp+192]
    003fda40bl internal/byteorder.BEAppendUint32
    003fda44str x0, [sp+176]
    003fda48str x1, [sp+184]
    003fda4cstr x2, [sp+192]
    003fda50str x0, [sp+96]
    003fda54str x1, [sp+104]
    003fda58str x2, [sp+112]
    003fda5cstp xzr, xzr, [sp+80]
    003fda60ldr x0, [sp+96]
    003fda64ldr x1, [sp+104]
    003fda68ldr x2, [sp+112]
    003fda6cmov x3, xzr
    003fda70mov x4, xzr
    003fda74ldur x29, [sp-8]
    003fda78ldr x30, [sp], 160
    003fda7cret x30
    003fda80
    003fda80loc_3fda80:
    003fda80stp x0, x1, [sp+8]
    003fda84stp x2, x3, [sp+24]
    003fda88mov x3, x30
    003fda8cbl runtime.morestack_noctxt.abi0
    003fda90ldp x0, x1, [sp+8]
    003fda94ldp x2, x3, [sp+24]
    003fda98b 0x3fd950
    003fda9cudf 0
    003fd950
    003fdaa0
    003fdaa0hash/adler32.(*digest).MarshalBinary: ; void hash/adler32.(*digest).MarshalBinary(hash/adler32.digest * d)
    003fdaa0ldr x16, [x28+16]
    003fdaa4sub x17, sp, 64
    003fdaa8subs xzr, x17, x16
    003fdaacb.ls 0x3fdb8c
    003fdab0str x30, [sp-192]!
    003fdab4stur x29, [sp-8]
    003fdab8sub x29, sp, 8
    003fdabcstr x0, [sp+200]
    003fdac0str xzr, [sp+56]
    003fdac4stp xzr, xzr, [sp+64]
    003fdac8stp xzr, xzr, [sp+40]
    003fdaccadrp x0, 0x1f8000
    003fdad0add x0, x0, 3072
    003fdad4mov x1, xzr
    003fdad8orr x2, xzr, 8
    003fdadcbl runtime.makeslice
    003fdae0str x0, [sp+120]
    003fdae4str xzr, [sp+128]
    003fdae8orr x3, xzr, 8
    003fdaecstr x3, [sp+136]
    003fdaf0str xzr, [sp+96]
    003fdaf4stp xzr, xzr, [sp+104]
    003fdaf8stp xzr, xzr, [sp+80]
    003fdafcldr x0, [sp+200]
    003fdb00ldr x1, [sp+120]
    003fdb04ldr x2, [sp+128]
    003fdb08ldr x3, [sp+136]
    003fdb0cbl hash/adler32.(*digest).AppendBinary
    003fdb10str x0, [sp+96]
    003fdb14str x1, [sp+104]
    003fdb18str x2, [sp+112]
    003fdb1cstr x3, [sp+80]
    003fdb20str x4, [sp+88]
    003fdb24ldr x3, [sp+96]
    003fdb28ldr x4, [sp+104]
    003fdb2cldr x5, [sp+112]
    003fdb30str x3, [sp+160]
    003fdb34str x4, [sp+168]
    003fdb38str x5, [sp+176]
    003fdb3cldr x3, [sp+80]
    003fdb40ldr x4, [sp+88]
    003fdb44str x3, [sp+144]
    003fdb48str x4, [sp+152]
    003fdb4cldr x3, [sp+160]
    003fdb50ldr x4, [sp+168]
    003fdb54ldr x5, [sp+176]
    003fdb58str x3, [sp+56]
    003fdb5cstr x4, [sp+64]
    003fdb60str x5, [sp+72]
    003fdb64ldr x3, [sp+144]
    003fdb68ldr x4, [sp+152]
    003fdb6cstr x3, [sp+40]
    003fdb70str x4, [sp+48]
    003fdb74ldr x0, [sp+56]
    003fdb78ldr x1, [sp+64]
    003fdb7cldr x2, [sp+72]
    003fdb80ldur x29, [sp-8]
    003fdb84ldr x30, [sp], 192
    003fdb88ret x30
    003fdb8c
    003fdb8cloc_3fdb8c:
    003fdb8cstr x0, [sp+8]
    003fdb90mov x3, x30
    003fdb94bl runtime.morestack_noctxt.abi0
    003fdb98ldr x0, [sp+8]
    003fdb9cb 0x3fdaa0
    003fdaa0
    003fdba0
    003fdba0hash/adler32.(*digest).UnmarshalBinary: ; void hash/adler32.(*digest).UnmarshalBinary(hash/adler32.digest * d, struct []uint8 b)
    003fdba0ldr x16, [x28+16]
    003fdba4subs xzr, sp, x16
    003fdba8b.ls 0x3fdd6c
    003fdbacstr x30, [sp-128]!
    003fdbb0stur x29, [sp-8]
    003fdbb4sub x29, sp, 8
    003fdbb8str x0, [sp+136]
    003fdbbcstr x1, [sp+144]
    003fdbc0str x2, [sp+152]
    003fdbc4str x3, [sp+160]
    003fdbc8stp xzr, xzr, [sp+48]
    003fdbccldr x3, [sp+152]
    003fdbd0str x3, [sp+40]
    003fdbd4subs xzr, x3, 4
    003fdbd8cset x3, lt
    003fdbdcstrb w3, [sp+35]
    003fdbe0b.lt 0x3fdbe8
    003fdbe4b 0x3fdbf0
    003fdbe8
    003fdbe8loc_3fdbe8:
    003fdbe8orr x0, xzr, 4
    003fdbecb 0x3fdc78
    003fdbf0
    003fdbf0loc_3fdbf0:
    003fdbf0ldr x3, [sp+144]
    003fdbf4ldr x2, [sp+160]
    003fdbf8subs xzr, x2, 4
    003fdbfcb.hs 0x3fdc04
    003fdc00b 0x3fdd60
    003fdc04
    003fdc04loc_3fdc04:
    003fdc04b 0x3fdc08
    003fdc08
    003fdc08loc_3fdc08:
    003fdc08str x3, [sp+96]
    003fdc0corr x0, xzr, 4
    003fdc10str x0, [sp+104]
    003fdc14str x2, [sp+112]
    003fdc18str x3, [sp+64]
    003fdc1cstr x0, [sp+72]
    003fdc20b 0x3fdc24
    003fdc24
    003fdc24loc_3fdc24:
    003fdc24b 0x3fdc28
    003fdc28
    003fdc28loc_3fdc28:
    003fdc28ldrb w4, [x3]
    003fdc2cb 0x3fdc30
    003fdc30
    003fdc30loc_3fdc30:
    003fdc30ldrb w5, [x3+1]
    003fdc34ubfm x5, x5, 56, 7
    003fdc38orr x4, x4, x5
    003fdc3cb 0x3fdc40
    003fdc40
    003fdc40loc_3fdc40:
    003fdc40ldrb w5, [x3+2]
    003fdc44ubfm x5, x5, 48, 7
    003fdc48orr x4, x4, x5
    003fdc4cb 0x3fdc50
    003fdc50
    003fdc50loc_3fdc50:
    003fdc50ldrb w3, [x3+3]
    003fdc54ubfm x3, x3, 40, 7
    003fdc58orr x3, x4, x3
    003fdc5cmovz x4, 25697
    003fdc60movk x4, 0x16c0000
    003fdc64subs wzr, w3, w4
    003fdc68cset x3, ne
    003fdc6cb 0x3fdc70
    003fdc70
    003fdc70loc_3fdc70:
    003fdc70strb w3, [sp+35]
    003fdc74b 0x3fdc78
    003fdc78
    003fdc78loc_3fdc78:
    003fdc78ldrb w3, [sp+35]
    003fdc7ctbnz w3, 0, 0x3fdc84
    003fdc80b 0x3fdcb0
    003fdc84
    003fdc84loc_3fdc84:
    003fdc84adrp x0, 0x2c9000
    003fdc88add x0, x0, 806
    003fdc8cmovz x1, 43
    003fdc90bl errors.New
    003fdc94str x0, [sp+80]
    003fdc98str x1, [sp+88]
    003fdc9cstr x0, [sp+48]
    003fdca0str x1, [sp+56]
    003fdca4ldur x29, [sp-8]
    003fdca8ldr x30, [sp], 128
    003fdcacret x30
    003fdcb0
    003fdcb0loc_3fdcb0:
    003fdcb0ldr x3, [sp+152]
    003fdcb4str x3, [sp+40]
    003fdcb8subs xzr, x3, 8
    003fdcbcb.ne 0x3fdcc4
    003fdcc0b 0x3fdcf0
    003fdcc4
    003fdcc4loc_3fdcc4:
    003fdcc4adrp x0, 0x2c5000
    003fdcc8add x0, x0, 2393
    003fdcccmovz x1, 37
    003fdcd0bl errors.New
    003fdcd4str x0, [sp+80]
    003fdcd8str x1, [sp+88]
    003fdcdcstr x0, [sp+48]
    003fdce0str x1, [sp+56]
    003fdce4ldur x29, [sp-8]
    003fdce8ldr x30, [sp], 128
    003fdcecret x30
    003fdcf0
    003fdcf0loc_3fdcf0:
    003fdcf0ldr x1, [sp+152]
    003fdcf4ldr x3, [sp+144]
    003fdcf8ldr x4, [sp+160]
    003fdcfcb 0x3fdd00
    003fdd00
    003fdd00loc_3fdd00:
    003fdd00subs xzr, x1, 4
    003fdd04b.hs 0x3fdd0c
    003fdd08b 0x3fdd5c
    003fdd0c
    003fdd0cloc_3fdd0c:
    003fdd0csub x2, x4, 4
    003fdd10sub x1, x1, 4
    003fdd14sub x4, xzr, x2
    003fdd18sbfm x4, x4, 63, 63
    003fdd1cand x4, x4, 4
    003fdd20add x0, x3, x4
    003fdd24str x0, [sp+96]
    003fdd28str x1, [sp+104]
    003fdd2cstr x2, [sp+112]
    003fdd30bl internal/byteorder.BEUint32
    003fdd34str w0, [sp+36]
    003fdd38ldr x3, [sp+136]
    003fdd3cldrsb x27, [x3]
    003fdd40str w0, [x3]
    003fdd44stp xzr, xzr, [sp+48]
    003fdd48mov x0, xzr
    003fdd4cmov x1, xzr
    003fdd50ldur x29, [sp-8]
    003fdd54ldr x30, [sp], 128
    003fdd58ret x30
    003fdd5c
    003fdd5cloc_3fdd5c:
    003fdd5cbl runtime.panicSliceB
    003fdd60
    003fdd60loc_3fdd60:
    003fdd60orr x1, xzr, 4
    003fdd64bl runtime.panicSliceAcap
    003fdd68hint
    003fdd6c
    003fdd6cloc_3fdd6c:
    003fdd6cstp x0, x1, [sp+8]
    003fdd70stp x2, x3, [sp+24]
    003fdd74mov x3, x30
    003fdd78bl runtime.morestack_noctxt.abi0
    003fdd7cldp x0, x1, [sp+8]
    003fdd80ldp x2, x3, [sp+24]
    003fdd84b 0x3fdba0
    003fdd88udf 0
    003fdd8cudf 0
    003fdba0
    003fdd90
    003fdd90hash/adler32.update: ; void hash/adler32.update(hash/adler32.digest d, struct []uint8 p)
    003fdd90ldr x16, [x28+16]
    003fdd94sub x17, sp, 32
    003fdd98subs xzr, x17, x16
    003fdd9cb.ls 0x3fe0ec
    003fdda0str x30, [sp-160]!
    003fdda4stur x29, [sp-8]
    003fdda8sub x29, sp, 8
    003fddacstr w0, [sp+168]
    003fddb0str x1, [sp+176]
    003fddb4str x2, [sp+184]
    003fddb8str x3, [sp+192]
    003fddbcstr wzr, [sp+36]
    003fddc0and x3, x0, 65535
    003fddc4str w3, [sp+44]
    003fddc8ubfm x3, x0, 16, 31
    003fddccstr w3, [sp+40]
    003fddd0b 0x3fddd4
    003fddd4
    003fddd4loc_3fddd4:
    003fddd4ldr x3, [sp+184]
    003fddd8str x3, [sp+56]
    003fdddccbnz x3, 0x3fdde4
    003fdde0b 0x3fdec0
    003fdde4
    003fdde4loc_3fdde4:
    003fdde4str xzr, [sp+80]
    003fdde8stp xzr, xzr, [sp+88]
    003fddecldr x3, [sp+184]
    003fddf0str x3, [sp+48]
    003fddf4movz x4, 5552
    003fddf8subs xzr, x3, x4
    003fddfcb.gt 0x3fde04
    003fde00b 0x3fdeb4
    003fde04
    003fde04loc_3fde04:
    003fde04ldr x2, [sp+192]
    003fde08ldr x3, [sp+176]
    003fde0cmovz x4, 5552
    003fde10subs xzr, x2, x4
    003fde14b.hs 0x3fde1c
    003fde18b 0x3fe0e0
    003fde1c
    003fde1cloc_3fde1c:
    003fde1cb 0x3fde20
    003fde20
    003fde20loc_3fde20:
    003fde20str x3, [sp+104]
    003fde24movz x0, 5552
    003fde28str x0, [sp+112]
    003fde2cstr x2, [sp+120]
    003fde30ldr x1, [sp+184]
    003fde34ldr x3, [sp+176]
    003fde38ldr x4, [sp+192]
    003fde3cb 0x3fde40
    003fde40
    003fde40loc_3fde40:
    003fde40movz x5, 5552
    003fde44subs xzr, x1, x5
    003fde48b.hs 0x3fde50
    003fde4cb 0x3fe0dc
    003fde50
    003fde50loc_3fde50:
    003fde50movz x5, 5552
    003fde54sub x5, x1, x5
    003fde58movz x6, 5552
    003fde5csub x4, x4, x6
    003fde60sub x6, xzr, x4
    003fde64sbfm x6, x6, 63, 63
    003fde68movz x7, 5552
    003fde6cand x6, x6, x7
    003fde70add x3, x3, x6
    003fde74str x3, [sp+128]
    003fde78str x5, [sp+136]
    003fde7cstr x4, [sp+144]
    003fde80ldr x3, [sp+104]
    003fde84ldr x4, [sp+112]
    003fde88ldr x5, [sp+120]
    003fde8cstr x3, [sp+176]
    003fde90str x4, [sp+184]
    003fde94str x5, [sp+192]
    003fde98ldr x3, [sp+128]
    003fde9cldr x4, [sp+136]
    003fdea0ldr x5, [sp+144]
    003fdea4str x3, [sp+80]
    003fdea8str x4, [sp+88]
    003fdeacstr x5, [sp+96]
    003fdeb0b 0x3fdebc
    003fdeb4
    003fdeb4loc_3fdeb4:
    003fdeb4movz x0, 5552
    003fdeb8b 0x3fdebc
    003fdebc
    003fdebcloc_3fdebc:
    003fdebcb 0x3fdee0
    003fdec0
    003fdec0loc_3fdec0:
    003fdec0ldr w1, [sp+40]
    003fdec4ldr w2, [sp+44]
    003fdec8orr x1, x2, x1, lsl #16
    003fdeccstr w1, [sp+36]
    003fded0ldr w0, [sp+36]
    003fded4ldur x29, [sp-8]
    003fded8ldr x30, [sp], 160
    003fdedcret x30
    003fdee0
    003fdee0loc_3fdee0:
    003fdee0ldr x3, [sp+184]
    003fdee4str x3, [sp+48]
    003fdee8subs xzr, x3, 4
    003fdeecb.ge 0x3fdef4
    003fdef0b 0x3fdfe4
    003fdef4
    003fdef4loc_3fdef4:
    003fdef4ldr w3, [sp+44]
    003fdef8ldr x1, [sp+184]
    003fdefcldr x4, [sp+176]
    003fdf00subs xzr, x1, 0
    003fdf04b.hi 0x3fdf0c
    003fdf08b 0x3fe0d4
    003fdf0c
    003fdf0cloc_3fdf0c:
    003fdf0cldrb w4, [x4]
    003fdf10add x3, x3, x4
    003fdf14str w3, [sp+44]
    003fdf18ldr w4, [sp+40]
    003fdf1cadd x4, x4, x3
    003fdf20str w4, [sp+40]
    003fdf24ldr x1, [sp+184]
    003fdf28ldr x5, [sp+176]
    003fdf2csubs xzr, x1, 1
    003fdf30b.hi 0x3fdf38
    003fdf34b 0x3fe0cc
    003fdf38
    003fdf38loc_3fdf38:
    003fdf38ldrb w5, [x5+1]
    003fdf3cadd x3, x3, x5
    003fdf40str w3, [sp+44]
    003fdf44add x4, x4, x3
    003fdf48str w4, [sp+40]
    003fdf4cldr x1, [sp+184]
    003fdf50ldr x5, [sp+176]
    003fdf54subs xzr, x1, 2
    003fdf58b.hi 0x3fdf60
    003fdf5cb 0x3fe0c4
    003fdf60
    003fdf60loc_3fdf60:
    003fdf60ldrb w5, [x5+2]
    003fdf64add x3, x3, x5
    003fdf68str w3, [sp+44]
    003fdf6cadd x4, x4, x3
    003fdf70str w4, [sp+40]
    003fdf74ldr x1, [sp+184]
    003fdf78ldr x5, [sp+176]
    003fdf7csubs xzr, x1, 3
    003fdf80b.hi 0x3fdf88
    003fdf84b 0x3fe0bc
    003fdf88
    003fdf88loc_3fdf88:
    003fdf88ldrb w5, [x5+3]
    003fdf8cadd x3, x3, x5
    003fdf90str w3, [sp+44]
    003fdf94add x3, x4, x3
    003fdf98str w3, [sp+40]
    003fdf9cldr x1, [sp+184]
    003fdfa0ldr x3, [sp+176]
    003fdfa4ldr x4, [sp+192]
    003fdfa8b 0x3fdfac
    003fdfac
    003fdfacloc_3fdfac:
    003fdfacsubs xzr, x1, 4
    003fdfb0b.hs 0x3fdfb8
    003fdfb4b 0x3fe0b4
    003fdfb8
    003fdfb8loc_3fdfb8:
    003fdfb8sub x4, x4, 4
    003fdfbcsub x5, xzr, x4
    003fdfc0sub x6, x1, 4
    003fdfc4sbfm x5, x5, 63, 63
    003fdfc8and x5, x5, 4
    003fdfccadd x3, x3, x5
    003fdfd0str x3, [sp+176]
    003fdfd4str x6, [sp+184]
    003fdfd8str x4, [sp+192]
    003fdfdcb 0x3fdfe0
    003fdfe0
    003fdfe0loc_3fdfe0:
    003fdfe0b 0x3fdee0
    003fdfe4
    003fdfe4loc_3fdfe4:
    003fdfe4ldr x3, [sp+184]
    003fdfe8ldr x4, [sp+176]
    003fdfecldr x5, [sp+192]
    003fdff0str x4, [sp+128]
    003fdff4str x3, [sp+136]
    003fdff8str x5, [sp+144]
    003fdffcstr xzr, [sp+72]
    003fe000str x3, [sp+64]
    003fe004b 0x3fe008
    003fe008
    003fe008loc_3fe008:
    003fe008ldr x3, [sp+64]
    003fe00cldr x4, [sp+72]
    003fe010subs xzr, x3, x4
    003fe014b.gt 0x3fe01c
    003fe018b 0x3fe058
    003fe01c
    003fe01cloc_3fe01c:
    003fe01cldr x3, [sp+72]
    003fe020ldr x4, [sp+128]
    003fe024ldrb w3, [x4+x3]
    003fe028strb w3, [sp+35]
    003fe02cldr w4, [sp+44]
    003fe030add x3, x4, x3
    003fe034str w3, [sp+44]
    003fe038ldr w4, [sp+40]
    003fe03cadd x3, x4, x3
    003fe040str w3, [sp+40]
    003fe044b 0x3fe048
    003fe048
    003fe048loc_3fe048:
    003fe048ldr x3, [sp+72]
    003fe04cadd x3, x3, 1
    003fe050str x3, [sp+72]
    003fe054b 0x3fe008
    003fe058
    003fe058loc_3fe058:
    003fe058ldr w3, [sp+44]
    003fe05cmov x4, x3
    003fe060movz x5, 32881
    003fe064movk x5, 0x80070000
    003fe068madd x4, x5, x4, xzr
    003fe06cubfm x4, x4, 47, 63
    003fe070movz x6, 65521
    003fe074msub w3, w6, w4, w3
    003fe078str w3, [sp+44]
    003fe07cldr w3, [sp+40]
    003fe080mov x4, x3
    003fe084madd x4, x5, x4, xzr
    003fe088ubfm x4, x4, 47, 63
    003fe08cmsub w3, w6, w4, w3
    003fe090str w3, [sp+40]
    003fe094ldr x3, [sp+80]
    003fe098ldr x4, [sp+88]
    003fe09cldr x7, [sp+96]
    003fe0a0str x3, [sp+176]
    003fe0a4str x4, [sp+184]
    003fe0a8str x7, [sp+192]
    003fe0acb 0x3fe0b0
    003fe0b0
    003fe0b0loc_3fe0b0:
    003fe0b0b 0x3fddd4
    003fe0b4
    003fe0b4loc_3fe0b4:
    003fe0b4orr x0, xzr, 4
    003fe0b8bl runtime.panicSliceB
    003fe0bc
    003fe0bcloc_3fe0bc:
    003fe0bcorr x0, xzr, 3
    003fe0c0bl runtime.panicIndex
    003fe0c4
    003fe0c4loc_3fe0c4:
    003fe0c4orr x0, xzr, 2
    003fe0c8bl runtime.panicIndex
    003fe0cc
    003fe0ccloc_3fe0cc:
    003fe0ccorr x0, xzr, 1
    003fe0d0bl runtime.panicIndex
    003fe0d4
    003fe0d4loc_3fe0d4:
    003fe0d4mov x0, xzr
    003fe0d8bl runtime.panicIndex
    003fe0dc
    003fe0dcloc_3fe0dc:
    003fe0dcbl runtime.panicSliceB
    003fe0e0
    003fe0e0loc_3fe0e0:
    003fe0e0movz x1, 5552
    003fe0e4bl runtime.panicSliceAcap
    003fe0e8hint
    003fe0ec
    003fe0ecloc_3fe0ec:
    003fe0ecstr w0, [sp+8]
    003fe0f0stp x1, x2, [sp+16]
    003fe0f4str x3, [sp+32]
    003fe0f8mov x3, x30
    003fe0fcbl runtime.morestack_noctxt.abi0
    003fe100ldr w0, [sp+8]
    003fe104ldp x1, x2, [sp+16]
    003fe108ldr x3, [sp+32]
    003fe10cb 0x3fdd90
    003fdd90