// File: /workspace/github_cpp_makefile_star2_O2/sisong[P]ApkDiffPatch/HDiffPatch/libHDiffPatch/HDiff/match_block.cpp
// Function: hdiff_private::TMatchBlock::unpackData(IDiffInsertCover*, void*, unsigned long, bool)
void TMatchBlock::unpackData(IDiffInsertCover* diffi,void* pcovers,size_t coverCount,bool isCover32){
    doUnpackData(oldData,oldData_end,packedCoversForOld);
    oldData_end_cur=oldData_end;
    doUnpackData(newData,newData_end,packedCoversForNew);
    newData_end_cur=newData_end;

    std::vector<hpatch_TCover> clipCovers;
    doClipCover<true>(pcovers,coverCount,isCover32,packedCoversForNew,clipCovers);
    _clearV(packedCoversForNew);
    _insertCovers(clipCovers);

    sortCover<false>(pcovers,coverCount,isCover32);
    clipCovers.clear();
    doClipCover<false>(pcovers,coverCount,isCover32,packedCoversForOld,clipCovers);
    _clearV(packedCoversForOld);
    _insertCovers(clipCovers);
    _clearV(clipCovers);
    _insertCovers(blockCovers);
    _clearV(blockCovers);

    sortCover<true>(pcovers,coverCount,isCover32);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x88, %rsp
movl %r8d, 0xc(%rsp)
movq %rcx, %r14
movq %rdx, 0x30(%rsp)
movq %rsi, 0x70(%rsp)
movq %rdi, %rbx
movq 0x18(%rdi), %rdi
movq 0x20(%rbx), %rsi
leaq 0x58(%rbx), %rdx
movq %rdx, 0x78(%rsp)
callq 0x14666
movq 0x20(%rbx), %rax
movq %rax, 0x28(%rbx)
movq (%rbx), %rdi
movq 0x8(%rbx), %rsi
leaq 0x70(%rbx), %rdx
movq %rdx, 0x80(%rsp)
callq 0x14666
movq 0x8(%rbx), %rax
movq %rbx, 0x68(%rsp)
movq %rax, 0x10(%rbx)
pxor %xmm0, %xmm0
movdqa %xmm0, 0x50(%rsp)
andq $0x0, 0x60(%rsp)
movq %r14, (%rsp)
testq %r14, %r14
je 0x14165
movq 0x68(%rsp), %rax
movq 0x70(%rax), %rcx
movq 0x78(%rax), %r15
cmpb $0x0, 0xc(%rsp)
je 0x1404f
cmpq %r15, %rcx
je 0x14165
movq 0x8(%rcx), %r14
xorl %ebp, %ebp
pushq $-0x1
popq %r12
xorl %esi, %esi
cmpq (%rsp), %rsi
je 0x14165
imulq $0xc, %rsi, %rax
movq 0x30(%rsp), %rdx
leaq (%rdx,%rax), %rbx
movl 0x4(%rdx,%rax), %eax
movq %rcx, %r13
cmpq %rax, %r14
ja 0x13f9b
cmpq %r15, %r13
je 0x145bb
movq (%r13), %rbp
subq 0x8(%r13), %rbp
leaq 0x18(%r13), %rcx
movq %r12, %r14
cmpq %r15, %rcx
je 0x13f70
movq 0x20(%r13), %r14
jmp 0x13f70
movq %rsi, 0x20(%rsp)
movl 0x8(%rbx), %ecx
movq %r13, 0x10(%rsp)
movq %r14, 0x18(%rsp)
movq %rbp, 0x28(%rsp)
movl %ecx, %ecx
addq %rax, %rcx
cmpq %r14, %rcx
jbe 0x1402e
movl (%rbx), %ecx
movq %rcx, 0x38(%rsp)
movl %eax, %ecx
movq %r14, %rdx
subq %rax, %rdx
movq %rdx, 0x48(%rsp)
movl %ebp, %eax
addq %rcx, %rax
movq %rax, 0x40(%rsp)
leaq 0x50(%rsp), %rdi
leaq 0x38(%rsp), %rsi
callq 0x12554
movl 0x48(%rsp), %edx
addl %edx, (%rbx)
movl 0x4(%rbx), %eax
addl %edx, %eax
movl %eax, 0x4(%rbx)
movl 0x8(%rbx), %ecx
subl %edx, %ecx
movl %ecx, 0x8(%rbx)
movq %r13, %rdx
cmpq %rax, %r14
ja 0x14029
cmpq %r15, %rdx
je 0x14537
movq (%rdx), %rbp
subq 0x8(%rdx), %rbp
leaq 0x18(%rdx), %r13
movq %r12, %r14
cmpq %r15, %r13
je 0x13fff
movq 0x20(%rdx), %r14
jmp 0x13fff
movq %rdx, %r13
jmp 0x13fb2
addl %ebp, %eax
movl %eax, 0x4(%rbx)
movq 0x20(%rsp), %rsi
incq %rsi
movq 0x10(%rsp), %rcx
movq 0x28(%rsp), %rbp
movq 0x18(%rsp), %r14
jmp 0x13f55
cmpq %r15, %rcx
je 0x14165
pushq $-0x1
popq %rbp
movq 0x8(%rcx), %r14
xorl %r12d, %r12d
xorl %esi, %esi
cmpq (%rsp), %rsi
je 0x14165
imulq $0x18, %rsi, %rax
movq 0x30(%rsp), %rdx
leaq (%rdx,%rax), %rbx
movq 0x8(%rdx,%rax), %rax
movq %rcx, %r13
cmpq %r14, %rax
jb 0x140ab
cmpq %r15, %r13
je 0x145d7
movq (%r13), %r12
subq 0x8(%r13), %r12
leaq 0x18(%r13), %rcx
movq %rbp, %r14
cmpq %r15, %rcx
je 0x14080
movq 0x20(%r13), %r14
jmp 0x14080
movq %rsi, 0x20(%rsp)
movq 0x10(%rbx), %rcx
movq %r13, 0x10(%rsp)
movq %r14, 0x18(%rsp)
movq %r12, 0x28(%rsp)
addq %rax, %rcx
cmpq %r14, %rcx
jbe 0x14142
movq (%rbx), %rcx
movq %rcx, 0x38(%rsp)
movq %r14, %rcx
subq %rax, %rcx
movq %rcx, 0x48(%rsp)
addq %r12, %rax
movq %rax, 0x40(%rsp)
leaq 0x50(%rsp), %rdi
leaq 0x38(%rsp), %rsi
callq 0x12554
movq 0x48(%rsp), %rdx
addq %rdx, (%rbx)
movq 0x8(%rbx), %rax
addq %rdx, %rax
movq %rax, 0x8(%rbx)
movq 0x10(%rbx), %rcx
subq %rdx, %rcx
movq %rcx, 0x10(%rbx)
movq %r13, %rdx
cmpq %r14, %rax
jb 0x1413d
cmpq %r15, %rdx
je 0x14553
movq (%rdx), %r12
subq 0x8(%rdx), %r12
leaq 0x18(%rdx), %r13
movq %rbp, %r14
cmpq %r15, %r13
je 0x14113
movq 0x20(%rdx), %r14
jmp 0x14113
movq %rdx, %r13
jmp 0x140c3
addq %rax, %r12
movq %r12, 0x8(%rbx)
movq 0x20(%rsp), %rsi
incq %rsi
movq 0x10(%rsp), %rcx
movq 0x28(%rsp), %r12
movq 0x18(%rsp), %r14
jmp 0x14064
movq 0x80(%rsp), %rdi
callq 0x146f9
movq 0x70(%rsp), %rdi
movq (%rdi), %r8
movq 0x50(%rsp), %rsi
movq 0x58(%rsp), %rax
subq %rsi, %rax
pushq $0x18
popq %rbx
cqto
idivq %rbx
movq %rax, %rdx
xorl %ecx, %ecx
callq *%r8
movq %rax, 0x30(%rsp)
movq 0x58(%rsp), %rax
subq 0x50(%rsp), %rax
cqto
idivq %rbx
addq (%rsp), %rax
movq %rax, (%rsp)
je 0x141e2
cmpb $0x0, 0xc(%rsp)
je 0x141d0
imulq $0xc, (%rsp), %rsi
movq 0x30(%rsp), %rdi
addq %rdi, %rsi
callq 0x15736
jmp 0x141e2
imulq $0x18, (%rsp), %rsi
movq 0x30(%rsp), %rdi
addq %rdi, %rsi
callq 0x15dd5
movq 0x50(%rsp), %rax
cmpq %rax, 0x58(%rsp)
je 0x141f3
movq %rax, 0x58(%rsp)
cmpq $0x0, (%rsp)
je 0x14450
movq 0x68(%rsp), %rax
movq 0x58(%rax), %rcx
movq 0x60(%rax), %r15
cmpb $0x0, 0xc(%rsp)
je 0x14326
cmpq %r15, %rcx
je 0x14450
movq 0x8(%rcx), %r14
xorl %r13d, %r13d
pushq $-0x1
popq %r12
xorl %esi, %esi
cmpq (%rsp), %rsi
je 0x14450
imulq $0xc, %rsi, %rax
movq 0x30(%rsp), %rdx
leaq (%rdx,%rax), %rbx
movl (%rdx,%rax), %eax
movq %rcx, %rbp
cmpq %rax, %r14
ja 0x14271
cmpq %r15, %rbp
je 0x145f3
movq (%rbp), %r13
subq 0x8(%rbp), %r13
leaq 0x18(%rbp), %rcx
movq %r12, %r14
cmpq %r15, %rcx
je 0x14246
movq 0x20(%rbp), %r14
jmp 0x14246
movq %rsi, 0x20(%rsp)
movl 0x8(%rbx), %ecx
movq %rbp, 0x10(%rsp)
movq %r14, 0x18(%rsp)
movq %r13, 0x28(%rsp)
movl %ecx, %ecx
addq %rax, %rcx
cmpq %r14, %rcx
jbe 0x14305
movl %eax, %ecx
movl 0x4(%rbx), %edx
movq %rdx, 0x40(%rsp)
movq %r14, %rdx
subq %rax, %rdx
movq %rdx, 0x48(%rsp)
movl %r13d, %eax
addq %rcx, %rax
movq %rax, 0x38(%rsp)
leaq 0x50(%rsp), %rdi
leaq 0x38(%rsp), %rsi
callq 0x12554
movl 0x48(%rsp), %edx
movl (%rbx), %eax
addl %edx, %eax
movl %eax, (%rbx)
addl %edx, 0x4(%rbx)
movl 0x8(%rbx), %ecx
subl %edx, %ecx
movl %ecx, 0x8(%rbx)
movq %rbp, %rdx
cmpq %rax, %r14
ja 0x14300
cmpq %r15, %rdx
je 0x1456f
movq (%rdx), %r13
subq 0x8(%rdx), %r13
leaq 0x18(%rdx), %rbp
movq %r12, %r14
cmpq %r15, %rbp
je 0x142d6
movq 0x20(%rdx), %r14
jmp 0x142d6
movq %rdx, %rbp
jmp 0x14288
addl %r13d, %eax
movl %eax, (%rbx)
movq 0x20(%rsp), %rsi
incq %rsi
movq 0x10(%rsp), %rcx
movq 0x28(%rsp), %r13
movq 0x18(%rsp), %r14
jmp 0x1422c
cmpq %r15, %rcx
je 0x14450
movq 0x8(%rcx), %r14
xorl %r12d, %r12d
pushq $-0x1
popq %r13
xorl %esi, %esi
cmpq (%rsp), %rsi
je 0x14450
imulq $0x18, %rsi, %rax
movq 0x30(%rsp), %rdx
leaq (%rdx,%rax), %rbx
movq (%rdx,%rax), %rax
movq %rcx, %rbp
cmpq %r14, %rax
jb 0x14382
cmpq %r15, %rbp
je 0x1460f
movq (%rbp), %r12
subq 0x8(%rbp), %r12
leaq 0x18(%rbp), %rcx
movq %r13, %r14
cmpq %r15, %rcx
je 0x14357
movq 0x20(%rbp), %r14
jmp 0x14357
movq %rsi, 0x20(%rsp)
movq 0x10(%rbx), %rcx
movq %rbp, 0x10(%rsp)
movq %r14, 0x18(%rsp)
movq %r12, 0x28(%rsp)
addq %rax, %rcx
cmpq %r14, %rcx
jbe 0x1442e
movq 0x8(%rbx), %rcx
movq %rcx, 0x40(%rsp)
movq %r14, %rcx
subq %rax, %rcx
movq %rcx, 0x48(%rsp)
addq %r12, %rax
movq %rax, 0x38(%rsp)
leaq 0x50(%rsp), %rdi
leaq 0x38(%rsp), %rsi
callq 0x12554
movq 0x48(%rsp), %rax
movdqu (%rbx), %xmm0
movq %rax, %xmm1
pshufd $0x44, %xmm1, %xmm1     # xmm1 = xmm1[0,1,0,1]
paddq %xmm0, %xmm1
movdqu %xmm1, (%rbx)
movq 0x10(%rbx), %rcx
subq %rax, %rcx
movq %rcx, 0x10(%rbx)
movq %xmm1, %rax
movq %rbp, %rdx
cmpq %r14, %rax
jb 0x14426
cmpq %r15, %rdx
je 0x1458b
movq (%rdx), %r12
subq 0x8(%rdx), %r12
leaq 0x18(%rdx), %rbp
movq %r13, %r14
cmpq %r15, %rbp
je 0x143fc
movq 0x20(%rdx), %r14
jmp 0x143fc
movq %rdx, %rbp
jmp 0x1439a
addq %rax, %r12
movq %r12, (%rbx)
movq 0x20(%rsp), %rsi
incq %rsi
movq 0x10(%rsp), %rcx
movq 0x28(%rsp), %r12
movq 0x18(%rsp), %r14
jmp 0x1433c
movq 0x78(%rsp), %rdi
callq 0x146f9
movq 0x70(%rsp), %rdi
movq (%rdi), %r8
movq 0x50(%rsp), %rsi
movq 0x58(%rsp), %rax
subq %rsi, %rax
cqto
pushq $0x18
popq %r13
idivq %r13
movq %rax, %rdx
xorl %ecx, %ecx
callq *%r8
leaq 0x50(%rsp), %rdi
movq (%rdi), %r14
movq 0x8(%rdi), %r12
callq 0x146f9
movq 0x70(%rsp), %rdi
movq (%rdi), %r8
movq 0x68(%rsp), %rax
movq 0x40(%rax), %rsi
movq 0x48(%rax), %rax
subq %rsi, %rax
cqto
idivq %r13
movq %rax, %rdx
xorl %ecx, %ecx
callq *%r8
movq %rax, %rbx
movq 0x68(%rsp), %rcx
leaq 0x40(%rcx), %rdi
subq %r14, %r12
movq %r12, %rax
cqto
idivq %r13
movq %rax, %r15
addq (%rsp), %r15
movq 0x48(%rcx), %rax
subq 0x40(%rcx), %rax
cqto
idivq %r13
movq %rax, %r14
callq 0x146f9
addq %r15, %r14
je 0x1451b
cmpb $0x0, 0xc(%rsp)
je 0x14509
imulq $0xc, %r14, %rax
movq %rbx, %rsi
addq %rax, %rsi
movq %rbx, %rdi
callq 0x164f8
jmp 0x1451b
imulq $0x18, %r14, %rax
movq %rbx, %rsi
addq %rax, %rsi
movq %rbx, %rdi
callq 0x16ba7
leaq 0x50(%rsp), %rdi
callq 0x13988
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
pushq $0x10
popq %rdi
callq 0x41c0
movq %rax, %rbx
leaq 0x3d33b(%rip), %rsi     # 0x51884
movq %rax, %rdi
callq 0x4120
jmp 0x145a5
pushq $0x10
popq %rdi
callq 0x41c0
movq %rax, %rbx
leaq 0x3d31f(%rip), %rsi     # 0x51884
movq %rax, %rdi
callq 0x4120
jmp 0x145a5
pushq $0x10
popq %rdi
callq 0x41c0
movq %rax, %rbx
leaq 0x3d303(%rip), %rsi     # 0x51884
movq %rax, %rdi
callq 0x4120
jmp 0x145a5
pushq $0x10
popq %rdi
callq 0x41c0
movq %rax, %rbx
leaq 0x3d2e7(%rip), %rsi     # 0x51884
movq %rax, %rdi
callq 0x4120
movq 0x60a3c(%rip), %rsi     # 0x74fe8
movq 0x60a05(%rip), %rdx     # 0x74fb8
movq %rbx, %rdi
callq 0x45b0
pushq $0x10
popq %rdi
callq 0x41c0
movq %rax, %rbx
leaq 0x3d2b7(%rip), %rsi     # 0x51884
movq %rax, %rdi
callq 0x4120
jmp 0x145a5
pushq $0x10
popq %rdi
callq 0x41c0
movq %rax, %rbx
leaq 0x3d29b(%rip), %rsi     # 0x51884
movq %rax, %rdi
callq 0x4120
jmp 0x145a5
pushq $0x10
popq %rdi
callq 0x41c0
movq %rax, %rbx
leaq 0x3d27f(%rip), %rsi     # 0x51884
movq %rax, %rdi
callq 0x4120
jmp 0x145a5
pushq $0x10
popq %rdi
callq 0x41c0
movq %rax, %rbx
leaq 0x3d263(%rip), %rsi     # 0x51884
movq %rax, %rdi
callq 0x4120
jmp 0x145a5
jmp 0x14644
jmp 0x14644
jmp 0x14644
jmp 0x14644
jmp 0x14651
jmp 0x14651
jmp 0x14651
jmp 0x14651
jmp 0x14644
jmp 0x14644
jmp 0x14644
movq %rax, %r14
movq %rbx, %rdi
callq 0x4290
jmp 0x14654
movq %rax, %r14
leaq 0x50(%rsp), %rdi
callq 0x13988
movq %r14, %rdi
callq 0x4600