// File: ndsol[P]git-mine/git-mine.cpp
// Function: MineBoss::dumpMatchAt(unsigned long)
void dumpMatchAt(size_t wantBest) {
    CommitMessage noodle(orig);
    Sha1Hash sha;
    Blake2Hash b2h;
    for (size_t i = 0; i < pool.size(); i++) {
      if (pool.at(i)->best >= wantBest) {
        fprintf(stderr, "Thread %zu says:\n", i);
        noodle.set_atime(pool.at(i)->best_atime);
        noodle.set_ctime(pool.at(i)->best_ctime);
        noodle.hash(sha, b2h);
        char buf[1024];
        if (sha.dump(buf, sizeof(buf))) {
          fprintf(stderr, "sha.dump failed\n");
          return;
        }
        fprintf(stderr, "sha1:   %s\n", buf);
        if (b2h.dump(buf, sizeof(buf))) {
          fprintf(stderr, "b2h.dump failed\n");
          return;
        }
        fprintf(stderr, "blake2: %s\n", buf);
        fprintf(stderr, "author time=%lld\n", pool.at(i)->best_atime);
        fprintf(stderr, "committer  =%lld\n", pool.at(i)->best_ctime);
        return;
      }
    }
    fprintf(stderr, "No best of %zu found.\n", wantBest);
  }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x780, %rsp            # imm = 0x780
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rsi
movq %rsi, -0x720(%rbp)
leaq -0x140(%rbp), %rdi
callq 0xa0a0
leaq -0x1b8(%rbp), %rdi
callq 0x5040
jmp 0xbb08
leaq -0x308(%rbp), %rdi
callq 0x5060
jmp 0xbb16
movq $0x0, -0x310(%rbp)
movq -0x720(%rbp), %rdi
movq -0x310(%rbp), %rax
movq %rax, -0x728(%rbp)
addq $0x1b0, %rdi            # imm = 0x1B0
callq 0x8500
movq %rax, %rcx
movq -0x728(%rbp), %rax
cmpq %rcx, %rax
jae 0xbe48
movq -0x720(%rbp), %rdi
addq $0x1b0, %rdi            # imm = 0x1B0
movq -0x310(%rbp), %rsi
callq 0xb980
movq %rax, -0x730(%rbp)
jmp 0xbb78
movq -0x730(%rbp), %rdi
callq 0xb9c0
movq 0x168(%rax), %rax
cmpq -0x10(%rbp), %rax
jb 0xbe2f
movq 0x1443c(%rip), %rax     # 0x1ffd8
movq (%rax), %rdi
movq -0x310(%rbp), %rdx
leaq 0xc8a6(%rip), %rsi      # 0x18453
xorl %eax, %eax
callq 0x44c0
movq -0x720(%rbp), %rdi
addq $0x1b0, %rdi            # imm = 0x1B0
movq -0x310(%rbp), %rsi
callq 0xb980
movq %rax, -0x738(%rbp)
jmp 0xbbd7
movq -0x738(%rbp), %rdi
callq 0xb9c0
movq 0x170(%rax), %rsi
leaq -0x140(%rbp), %rdi
callq 0xaad0
jmp 0xbbf8
movq -0x720(%rbp), %rdi
addq $0x1b0, %rdi            # imm = 0x1B0
movq -0x310(%rbp), %rsi
callq 0xb980
movq %rax, -0x740(%rbp)
jmp 0xbc1b
movq -0x740(%rbp), %rdi
callq 0xb9c0
movq 0x178(%rax), %rsi
leaq -0x140(%rbp), %rdi
callq 0xa330
jmp 0xbc3c
leaq -0x140(%rbp), %rdi
leaq -0x1b8(%rbp), %rsi
leaq -0x308(%rbp), %rdx
callq 0x5080
jmp 0xbc58
leaq -0x1b8(%rbp), %rdi
leaq -0x710(%rbp), %rsi
movl $0x400, %edx            # imm = 0x400
callq 0x51f0
movl %eax, -0x744(%rbp)
jmp 0xbc78
movl -0x744(%rbp), %eax
cmpl $0x0, %eax
je 0xbccd
movq 0x1434e(%rip), %rax     # 0x1ffd8
movq (%rax), %rdi
leaq 0xc7d1(%rip), %rsi      # 0x18465
movb $0x0, %al
callq 0x44c0
movl $0x1, -0x714(%rbp)
jmp 0xbe6e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1c0(%rbp)
movl %eax, -0x1c4(%rbp)
leaq -0x140(%rbp), %rdi
callq 0x5eb0
jmp 0xbe83
movq 0x14304(%rip), %rax     # 0x1ffd8
movq (%rax), %rdi
leaq 0xc798(%rip), %rsi      # 0x18476
xorl %eax, %eax
leaq -0x710(%rbp), %rdx
movq %rdx, -0x750(%rbp)
callq 0x44c0
movq -0x750(%rbp), %rsi
leaq -0x308(%rbp), %rdi
movl $0x400, %edx            # imm = 0x400
callq 0xc5d0
movl %eax, -0x748(%rbp)
jmp 0xbd13
movl -0x748(%rbp), %eax
cmpl $0x0, %eax
je 0xbd45
movq 0x142b3(%rip), %rax     # 0x1ffd8
movq (%rax), %rdi
leaq 0xc753(%rip), %rsi      # 0x18482
movb $0x0, %al
callq 0x44c0
movl $0x1, -0x714(%rbp)
jmp 0xbe6e
movq 0x1428c(%rip), %rax     # 0x1ffd8
movq %rax, -0x768(%rbp)
movq (%rax), %rdi
leaq 0xcb53(%rip), %rsi      # 0x188b0
xorl %eax, %eax
leaq -0x710(%rbp), %rdx
callq 0x44c0
movq -0x720(%rbp), %rdi
movq -0x768(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x760(%rbp)
addq $0x1b0, %rdi            # imm = 0x1B0
movq -0x310(%rbp), %rsi
callq 0xb980
movq %rax, -0x758(%rbp)
jmp 0xbd9f
movq -0x758(%rbp), %rdi
callq 0xb9c0
movq -0x760(%rbp), %rdi
movq 0x170(%rax), %rdx
leaq 0xc6d3(%rip), %rsi      # 0x18493
xorl %eax, %eax
callq 0x44c0
movq -0x720(%rbp), %rdi
movq 0x14203(%rip), %rax     # 0x1ffd8
movq (%rax), %rax
movq %rax, -0x778(%rbp)
addq $0x1b0, %rdi            # imm = 0x1B0
movq -0x310(%rbp), %rsi
callq 0xb980
movq %rax, -0x770(%rbp)
jmp 0xbdfb
movq -0x770(%rbp), %rdi
callq 0xb9c0
movq -0x778(%rbp), %rdi
movq 0x178(%rax), %rdx
leaq 0xc689(%rip), %rsi      # 0x184a5
movb $0x0, %al
callq 0x44c0
movl $0x1, -0x714(%rbp)
jmp 0xbe6e
jmp 0xbe31
movq -0x310(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x310(%rbp)
jmp 0xbb21
movq 0x14189(%rip), %rax     # 0x1ffd8
movq (%rax), %rdi
movq -0x10(%rbp), %rdx
leaq 0xc65a(%rip), %rsi      # 0x184b7
movb $0x0, %al
callq 0x44c0
movl $0x0, -0x714(%rbp)
leaq -0x140(%rbp), %rdi
callq 0x5eb0
addq $0x780, %rsp            # imm = 0x780
popq %rbp
retq
movq -0x1c0(%rbp), %rdi
callq 0x4600
nop