// File: /workspace/github_cpp_makefile_star2_O3/nachogoro[P]wordcrack-herminia/src/main.cpp
// Function: processNewWord(Board&, Dictionary const&, std::map<Word, int, std::less<Word>, std::allocator<std::pair<Word const, int>>>&, Coordinate const&, Word)
void processNewWord(Board& board, const Dictionary& dict, std::map<Word, int>& results, const Coordinate& coord, Word word)
{
    Coordinate next = coord.left();
    verifyWord(board, dict, results, next, word);

    next = coord.topLeft();
    verifyWord(board, dict, results, next, word);

    next = coord.up();
    verifyWord(board, dict, results, next, word);

    next = coord.topRight();
    verifyWord(board, dict, results, next, word);

    next = coord.right();
    verifyWord(board, dict, results, next, word);

    next = coord.bottomRight();
    verifyWord(board, dict, results, next, word);

    next = coord.down();
    verifyWord(board, dict, results, next, word);

    next = coord.bottomLeft();
    verifyWord(board, dict, results, next, word);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x6b8, %rsp            # imm = 0x6B8
movq %r8, %r12
movq %rcx, %r13
movq %rdx, -0x48(%rbp)
movq %rsi, -0x40(%rbp)
movq %rdi, -0x38(%rbp)
callq 0x21a0
movl (%r13), %eax
movl 0x4(%r13), %ecx
decl %eax
shlq $0x20, %rcx
orq %rcx, %rax
movq %rax, -0x30(%rbp)
movl (%r12), %eax
leaq -0x600(%rbp), %rdi
movl %eax, -0x8(%rdi)
leaq -0x5f0(%rbp), %rax
movq %rax, -0x10(%rax)
movq 0x8(%r12), %rsi
movq 0x10(%r12), %rdx
addq %rsi, %rdx
callq 0x3dac
leaq -0x5e0(%rbp), %rbx
leaq 0x28(%r12), %rsi
movq %rbx, %rdi
movq %rsi, -0x58(%rbp)
callq 0x79f8
leaq -0x590(%rbp), %r14
leaq 0x78(%r12), %rsi
movq %r14, %rdi
movq %rsi, -0x50(%rbp)
callq 0x3a44
movl 0xc8(%r12), %eax
leaq -0x608(%rbp), %r15
movl %eax, 0xc8(%r15)
leaq -0x30(%rbp), %rcx
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r15, %r8
callq 0x6e82
movq %r14, %rdi
callq 0x42d6
movq %rbx, %rdi
callq 0x3cbc
movq -0x600(%rbp), %rdi
leaq -0x5f0(%rbp), %rax
cmpq %rax, %rdi
je 0x6648
callq 0x21e0
movl (%r13), %eax
movl 0x4(%r13), %ecx
decl %eax
decl %ecx
shlq $0x20, %rcx
orq %rcx, %rax
movq %rax, -0x30(%rbp)
movl (%r12), %eax
leaq -0x530(%rbp), %rdi
movl %eax, -0x8(%rdi)
leaq -0x520(%rbp), %rax
movq %rax, -0x10(%rax)
movq 0x8(%r12), %rsi
movq 0x10(%r12), %rdx
addq %rsi, %rdx
callq 0x3dac
leaq -0x510(%rbp), %rbx
movq %rbx, %rdi
movq -0x58(%rbp), %rsi
callq 0x79f8
leaq -0x4c0(%rbp), %r14
movq %r14, %rdi
movq -0x50(%rbp), %rsi
callq 0x3a44
movl 0xc8(%r12), %eax
leaq -0x538(%rbp), %r15
movl %eax, 0xc8(%r15)
leaq -0x30(%rbp), %rcx
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r15, %r8
callq 0x6e82
movq %r14, %rdi
callq 0x42d6
movq %rbx, %rdi
callq 0x3cbc
movq -0x530(%rbp), %rdi
leaq -0x520(%rbp), %rax
cmpq %rax, %rdi
je 0x6706
callq 0x21e0
movl (%r13), %eax
movl 0x4(%r13), %ecx
decl %ecx
shlq $0x20, %rcx
orq %rax, %rcx
movq %rcx, -0x30(%rbp)
movl (%r12), %eax
leaq -0x460(%rbp), %rdi
movl %eax, -0x8(%rdi)
leaq -0x450(%rbp), %rax
movq %rax, -0x10(%rax)
movq 0x8(%r12), %rsi
movq 0x10(%r12), %rdx
addq %rsi, %rdx
callq 0x3dac
leaq -0x440(%rbp), %rbx
movq %rbx, %rdi
movq -0x58(%rbp), %rsi
callq 0x79f8
leaq -0x3f0(%rbp), %r14
movq %r14, %rdi
movq -0x50(%rbp), %rsi
callq 0x3a44
movl 0xc8(%r12), %eax
leaq -0x468(%rbp), %r15
movl %eax, 0xc8(%r15)
leaq -0x30(%rbp), %rcx
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r15, %r8
callq 0x6e82
movq %r14, %rdi
callq 0x42d6
movq %rbx, %rdi
callq 0x3cbc
movq -0x460(%rbp), %rdi
leaq -0x450(%rbp), %rax
cmpq %rax, %rdi
je 0x67c2
callq 0x21e0
movl (%r13), %eax
movl 0x4(%r13), %ecx
incl %eax
decl %ecx
shlq $0x20, %rcx
orq %rcx, %rax
movq %rax, -0x30(%rbp)
movl (%r12), %eax
leaq -0x390(%rbp), %rdi
movl %eax, -0x8(%rdi)
leaq -0x380(%rbp), %rax
movq %rax, -0x10(%rax)
movq 0x8(%r12), %rsi
movq 0x10(%r12), %rdx
addq %rsi, %rdx
callq 0x3dac
leaq -0x370(%rbp), %rbx
movq %rbx, %rdi
movq -0x58(%rbp), %rsi
callq 0x79f8
leaq -0x320(%rbp), %r14
movq %r14, %rdi
movq -0x50(%rbp), %rsi
callq 0x3a44
movl 0xc8(%r12), %eax
leaq -0x398(%rbp), %r15
movl %eax, 0xc8(%r15)
leaq -0x30(%rbp), %rcx
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r15, %r8
callq 0x6e82
movq %r14, %rdi
callq 0x42d6
movq %rbx, %rdi
callq 0x3cbc
movq -0x390(%rbp), %rdi
leaq -0x380(%rbp), %rax
cmpq %rax, %rdi
je 0x6880
callq 0x21e0
movl (%r13), %eax
movl 0x4(%r13), %ecx
incl %eax
shlq $0x20, %rcx
orq %rcx, %rax
movq %rax, -0x30(%rbp)
movl (%r12), %eax
leaq -0x2c0(%rbp), %rdi
movl %eax, -0x8(%rdi)
leaq -0x2b0(%rbp), %rax
movq %rax, -0x10(%rax)
movq 0x8(%r12), %rsi
movq 0x10(%r12), %rdx
addq %rsi, %rdx
callq 0x3dac
leaq -0x2a0(%rbp), %rbx
movq %rbx, %rdi
movq -0x58(%rbp), %rsi
callq 0x79f8
leaq -0x250(%rbp), %r14
movq %r14, %rdi
movq -0x50(%rbp), %rsi
callq 0x3a44
movl 0xc8(%r12), %eax
leaq -0x2c8(%rbp), %r15
movl %eax, 0xc8(%r15)
leaq -0x30(%rbp), %rcx
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r15, %r8
callq 0x6e82
movq %r14, %rdi
callq 0x42d6
movq %rbx, %rdi
callq 0x3cbc
movq -0x2c0(%rbp), %rdi
leaq -0x2b0(%rbp), %rax
cmpq %rax, %rdi
je 0x693c
callq 0x21e0
movl (%r13), %eax
movl 0x4(%r13), %ecx
incl %eax
incl %ecx
shlq $0x20, %rcx
orq %rcx, %rax
movq %rax, -0x30(%rbp)
movl (%r12), %eax
leaq -0x1f0(%rbp), %rdi
movl %eax, -0x8(%rdi)
leaq -0x1e0(%rbp), %rax
movq %rax, -0x10(%rax)
movq 0x8(%r12), %rsi
movq 0x10(%r12), %rdx
addq %rsi, %rdx
callq 0x3dac
leaq -0x1d0(%rbp), %rbx
movq %rbx, %rdi
movq -0x58(%rbp), %rsi
callq 0x79f8
leaq -0x180(%rbp), %r14
movq %r14, %rdi
movq -0x50(%rbp), %rsi
callq 0x3a44
movl 0xc8(%r12), %eax
leaq -0x1f8(%rbp), %r15
movl %eax, 0xc8(%r15)
leaq -0x30(%rbp), %rcx
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r15, %r8
callq 0x6e82
movq %r14, %rdi
callq 0x42d6
movq %rbx, %rdi
callq 0x3cbc
movq -0x1f0(%rbp), %rdi
leaq -0x1e0(%rbp), %rax
cmpq %rax, %rdi
je 0x69fa
callq 0x21e0
movl (%r13), %eax
movl 0x4(%r13), %ecx
incl %ecx
shlq $0x20, %rcx
orq %rax, %rcx
movq %rcx, -0x30(%rbp)
movl (%r12), %eax
leaq -0x120(%rbp), %rdi
movl %eax, -0x8(%rdi)
leaq -0x110(%rbp), %rbx
movq %rbx, -0x10(%rbx)
movq 0x8(%r12), %rsi
movq 0x10(%r12), %rdx
addq %rsi, %rdx
callq 0x3dac
leaq -0x100(%rbp), %rdi
movq -0x58(%rbp), %rsi
callq 0x79f8
leaq -0xb0(%rbp), %r14
movq %r14, %rdi
movq -0x50(%rbp), %rsi
callq 0x3a44
movl 0xc8(%r12), %eax
leaq -0x128(%rbp), %r15
movl %eax, 0xc8(%r15)
leaq -0x30(%rbp), %rcx
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r15, %r8
callq 0x6e82
movq %r14, %rdi
callq 0x42d6
leaq -0x100(%rbp), %rdi
callq 0x3cbc
movq -0x120(%rbp), %rdi
cmpq %rbx, %rdi
je 0x6ab0
callq 0x21e0
movl (%r13), %eax
movl 0x4(%r13), %ecx
decl %eax
incl %ecx
shlq $0x20, %rcx
orq %rcx, %rax
movq %rax, -0x30(%rbp)
movl (%r12), %eax
leaq -0x6d0(%rbp), %rdi
movl %eax, -0x8(%rdi)
leaq -0x6c0(%rbp), %r13
movq %r13, -0x10(%r13)
movq 0x8(%r12), %rsi
movq 0x10(%r12), %rdx
addq %rsi, %rdx
callq 0x3dac
leaq -0x6b0(%rbp), %rbx
movq %rbx, %rdi
movq -0x58(%rbp), %rsi
callq 0x79f8
leaq -0x660(%rbp), %r14
movq %r14, %rdi
movq -0x50(%rbp), %rsi
callq 0x3a44
movl 0xc8(%r12), %eax
leaq -0x6d8(%rbp), %r15
movl %eax, 0xc8(%r15)
leaq -0x30(%rbp), %rcx
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r15, %r8
callq 0x6e82
movq %r14, %rdi
callq 0x42d6
movq %rbx, %rdi
callq 0x3cbc
movq -0x6d0(%rbp), %rdi
cmpq %r13, %rdi
je 0x6b67
callq 0x21e0
addq $0x6b8, %rsp            # imm = 0x6B8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x6c87
movq %rax, %r14
movq %rbx, %rdi
callq 0x3cbc
jmp 0x6b8e
movq %rax, %r14
movq -0x6d0(%rbp), %rdi
cmpq %r13, %rdi
jne 0x6cb7
jmp 0x6cbc
jmp 0x6c87
movq %rax, %r14
leaq -0x100(%rbp), %rdi
callq 0x3cbc
jmp 0x6bbc
movq %rax, %r14
movq -0x120(%rbp), %rdi
cmpq %rbx, %rdi
jne 0x6cb7
jmp 0x6cbc
jmp 0x6c87
movq %rax, %r14
movq %rbx, %rdi
callq 0x3cbc
jmp 0x6be6
movq %rax, %r14
movq -0x1f0(%rbp), %rdi
leaq -0x1e0(%rbp), %rax
jmp 0x6cb2
jmp 0x6c87
movq %rax, %r14
movq %rbx, %rdi
callq 0x3cbc
jmp 0x6c0e
movq %rax, %r14
movq -0x2c0(%rbp), %rdi
leaq -0x2b0(%rbp), %rax
jmp 0x6cb2
jmp 0x6c87
movq %rax, %r14
movq %rbx, %rdi
callq 0x3cbc
jmp 0x6c33
movq %rax, %r14
movq -0x390(%rbp), %rdi
leaq -0x380(%rbp), %rax
jmp 0x6cb2
jmp 0x6c87
movq %rax, %r14
movq %rbx, %rdi
callq 0x3cbc
jmp 0x6c55
movq %rax, %r14
movq -0x460(%rbp), %rdi
leaq -0x450(%rbp), %rax
jmp 0x6cb2
jmp 0x6c87
movq %rax, %r14
movq %rbx, %rdi
callq 0x3cbc
jmp 0x6c77
movq %rax, %r14
movq -0x530(%rbp), %rdi
leaq -0x520(%rbp), %rax
jmp 0x6cb2
movq %rax, %r14
movq %r15, %rdi
callq 0x77e4
jmp 0x6cbc
movq %rax, %r14
movq %rbx, %rdi
callq 0x3cbc
jmp 0x6ca4
movq %rax, %r14
movq -0x600(%rbp), %rdi
leaq -0x5f0(%rbp), %rax
cmpq %rax, %rdi
je 0x6cbc
callq 0x21e0
movq %r14, %rdi
callq 0x2360