// File: /workspace/github_cpp_makefile_star2_O2/sisong[P]ApkDiffPatch/HDiffPatch/libHDiffPatch/HDiff/private_diff/limit_mem_diff/covers.h
// Function: hdiff_private::TCoversBuf::_collate_covers(hpatch_TOutputCovers*)
static void _collate_covers(struct hpatch_TOutputCovers* out_covers){
        TCoversBuf* self=(TCoversBuf*)out_covers;
        if (self->_isCover32){
            tm_collate_covers(self->m_covers_limit);
            self->_update(self->m_covers_limit);
        }else{
            tm_collate_covers(self->m_covers_larger);
            self->_update(self->m_covers_larger);
        }
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
cmpb $0x1, 0x20(%rdi)
jne 0x1240d
movq 0x28(%rbx), %rdi
movq 0x30(%rbx), %rsi
movq %rsi, %rax
subq %rdi, %rax
pushq $0xc
popq %r12
cqto
idivq %r12
cmpq $0x2, %rax
jb 0x12519
leaq 0x28(%rbx), %r14
leaq 0x30(%rbx), %r15
callq 0x128b0
pushq $0x1
popq %rcx
xorl %esi, %esi
movq %r12, %rdi
movq (%r15), %rax
movq (%r14), %r8
subq %r8, %rax
cqto
idivq %r12
cmpq %rax, %rcx
jae 0x124ee
leaq (%r8,%rdi), %rax
movl 0x4(%r8,%rdi), %r9d
imulq $0xc, %rsi, %r11
leaq (%r8,%r11), %rdx
movl 0x4(%r8,%r11), %r10d
movl 0x8(%r8,%r11), %r11d
leal (%r11,%r10), %ebp
cmpl %ebp, %r9d
jae 0x123c1
movl 0x8(%r8,%rdi), %r11d
addl %r9d, %r11d
cmpl %ebp, %r11d
jbe 0x12401
movl (%rax), %ebp
addl %r10d, %ebp
movl (%rdx), %r13d
addl %r9d, %r13d
cmpl %r13d, %ebp
jne 0x123de
subl %r10d, %r11d
movl %r11d, 0x8(%rdx)
jmp 0x12401
jne 0x123d9
movl (%rdx), %r9d
addl %r11d, %r9d
cmpl %r9d, (%rax)
jne 0x123d9
addl 0x8(%r8,%rdi), %r11d
movl %r11d, 0x8(%rdx)
jmp 0x12401
incq %rsi
jmp 0x123ed
subl %r10d, %r9d
movl %r9d, 0x8(%rdx)
cmpl $0x5, %r9d
sbbq $-0x1, %rsi
imulq $0xc, %rsi, %rdx
movl 0x8(%rax), %r9d
movl %r9d, 0x8(%r8,%rdx)
movq (%rax), %rax
movq %rax, (%r8,%rdx)
incq %rcx
addq $0xc, %rdi
jmp 0x12360
movq 0x40(%rbx), %rdi
movq 0x48(%rbx), %rsi
movq %rsi, %rax
subq %rdi, %rax
pushq $0x18
popq %r12
cqto
idivq %r12
cmpq $0x2, %rax
jb 0x12519
leaq 0x40(%rbx), %r14
leaq 0x48(%rbx), %r15
callq 0x130f4
pushq $0x1
popq %rcx
xorl %esi, %esi
movq %r12, %rdi
movq (%r15), %rax
movq (%r14), %r8
subq %r8, %rax
cqto
idivq %r12
cmpq %rax, %rcx
jae 0x124fd
leaq (%r8,%rdi), %rax
movq 0x8(%r8,%rdi), %r9
imulq $0x18, %rsi, %r11
leaq (%r8,%r11), %rdx
movq 0x8(%r8,%r11), %r10
movq 0x10(%r8,%r11), %r11
leaq (%r11,%r10), %r13
cmpq %r13, %r9
jae 0x124a1
movq 0x10(%r8,%rdi), %r11
addq %r9, %r11
cmpq %r13, %r11
jbe 0x124e2
movq (%rax), %r13
addq %r10, %r13
movq (%rdx), %rbp
addq %r9, %rbp
cmpq %rbp, %r13
jne 0x124be
subq %r10, %r11
jmp 0x124b3
jne 0x124b9
movq (%rdx), %r9
addq %r11, %r9
cmpq %r9, (%rax)
jne 0x124b9
addq 0x10(%r8,%rdi), %r11
movq %r11, 0x10(%rdx)
jmp 0x124e2
incq %rsi
jmp 0x124cd
subq %r10, %r9
movq %r9, 0x10(%rdx)
cmpq $0x5, %r9
sbbq $-0x1, %rsi
imulq $0x18, %rsi, %rdx
movq 0x10(%rax), %r9
movq %r9, 0x10(%r8,%rdx)
movups (%rax), %xmm0
movups %xmm0, (%r8,%rdx)
incq %rcx
addq $0x18, %rdi
jmp 0x12443
incq %rsi
movq %r14, %rdi
callq 0x12878
pushq $0xc
jmp 0x1250a
incq %rsi
movq %r14, %rdi
callq 0x130bc
pushq $0x18
popq %rcx
movq (%r14), %rdi
movq (%r15), %rax
subq %rdi, %rax
cqto
idivq %rcx
movq %rdi, 0x10(%rbx)
movq %rax, 0x18(%rbx)
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq