[Huawei P8 ROMs, Kernels, Recoveries, & Other Devel] GodzillaMonster:
It's pretty cool that you want to do this and learn how to do it - I'm moderately old so this sort of thing is familiarish. So I'm happy for you to do this yourself since it will be more satisfying for you. In my opinion, the thing you want to do is change the conditional jump in the code you posted earlier into an unconditional jump. This basically will bypass the loop but not change anything else. The conditional jump is the: 0x0001d594 cbz x0, 0x1d5cc - it means branch-if-register-x0-is-zero to the address given. This disassembly has rendered that address, but it will be probably be relative in the instruction itself.

An alternate approach is to replace all of the instructions (inclusive) from the cbz through to b.hi 0x1d598 with instructions that do nothing. So long as you do that in the same number of bytes, things should be good.

;-- HwcPartialUpdates::UpdateSourceLayer:
| 0x0001d564 stp x29, x30, [sp, -0xa0]!
| 0x0001d568 mov x29, sp
| 0x0001d56c stp x21, x22, [sp, 0x20]
| 0x0001d570 add x21, x29, 0x50
| 0x0001d574 mov x22, x0
| 0x0001d578 stp x19, x20, [sp, 0x10]
| 0x0001d57c mov x0, x21
| 0x0001d580 mov x20, x1
| 0x0001d584 stp x23, x24, [sp, 0x30]
| 0x0001d588 bl sym.android::Region::Region
| 0x0001d58c movz x19, 0
| 0x0001d590 ldr x0, [x20, 0x40] ; [0x40:4]=1 ; '@'
,==< 0x0001d594 cbz x0, 0x1d5cc
.---> 0x0001d598 ldr x3, [x20, 0x48] ; [0x48:4]=0 ; 'H'
||| 0x0001d59c lsl x2, x19, 4
||| 0x0001d5a0 mov x0, x21
||| 0x0001d5a4 add x19, x19, 1
||| 0x0001d5a8 add x4, x3, x2
||| 0x0001d5ac ldr w1, [x3, x2]
||| 0x0001d5b0 ldr w2, [x4, 4] ; [0x4:4]=0x10102
||| 0x0001d5b4 ldr w3, [x4, 8] ; [0x8:4]=0
||| 0x0001d5b8 ldr w4, [x4, 0xc] ; [0xc:4]=0
||| 0x0001d5bc bl sym.android::Region::addRectUnchecked
||| 0x0001d5c0 ldr x1, [x20, 0x40] ; [0x40:4]=1 ; '@'
||| 0x0001d5c4 cmp x1, x19
`===< 0x0001d5c8 b.hi 0x1d598
`--> 0x0001d5cc add x19, x29, 0x78
| 0x0001d5d0 mov x0, x21
| 0x0001d5d4 mov x8, x19
| 0x0001d5d8 mov x1, x22
| 0x0001d5dc bl 0x12770
| 0x0001d5e0 ldr x6, [x29, 0x88]
| 0x0001d5e4 ldr x5, [x29, 0x80]
| 0x0001d5e8 sub x7, x6, 1
| 0x0001d5ec lsl x8, x7, 4
| 0x0001d5f0 add x9, x5, x8
| 0x0001d5f4 ldr w10, [x5, x8]
| 0x0001d5f8 ldr w11, [x9, 8] ; [0x8:4]=0
| 0x0001d5fc ldr w12, [x9, 4] ; [0x4:4]=0x10102
| 0x0001d600 sub w13, w11, w10
| 0x0001d604 ldr w14, [x9, 0xc] ; [0xc:4]=0
| 0x0001d608 cmp w13, wzr
,==< 0x0001d60c b.le 0x1d66c
|| 0x0001d610 sub w15, w14, w12
|| 0x0001d614 cmp w15, wzr
,===< 0x0001d618 b.le 0x1d66c
||| 0x0001d61c add x23, x29, 0xa0
||| 0x0001d620 mov x1, x22
||| 0x0001d624 ldp x16, x17, [x20, 0x30]
||| 0x0001d628 stp x16, x17, [x23, -0x60]!
||| 0x0001d62c mov x0, x23
||| 0x0001d630 mov x2, x23
||| 0x0001d634 bl sym.android::Rect::intersect
||| 0x0001d638 uxtb w24, w0
,====< 0x0001d63c cbnz w24, 0x1d674
|||| 0x0001d640 movz w24, 0x1
..-----> 0x0001d644 mov x0, x19
|||||| 0x0001d648 bl sym.android::Region::_Region
|||||| 0x0001d64c mov x0, x21
|||||| 0x0001d650 bl sym.android::Region::_Region
|||||| 0x0001d654 mov w0, w24
|||||| 0x0001d658 ldp x19, x20, [sp, 0x10] ; [0x10:4]=0xb70003
|||||| 0x0001d65c ldp x21, x22, [sp, 0x20] ; [0x20:4]=64 ; "@" 0x00000020
|||||| 0x0001d660 ldp x23, x24, [sp, 0x30] ; [0x30:4]=0 ; '0'
|||||| 0x0001d664 ldp x29, x30, [sp], 0xa0
|||||| 0x0001d668 ret
|||``--> 0x0001d66c movz w24, 0
`======< 0x0001d670 b 0x1d644
|`----> 0x0001d674 mov x0, x22
| | 0x0001d678 mov x1, x20
| | 0x0001d67c mov x2, x23
| | 0x0001d680 bl 0x12fe0
| | 0x0001d684 mov x0, x22
| | 0x0001d688 mov x1, x20
| | 0x0001d68c mov x2, x23
| | 0x0001d690 bl 0x13dc0
`=====< 0x0001d694 b 0x1d644
| 0x0001d698 ret
`=< 0x0001d69c b sym.operatordelete