// File: /workspace/github_cpp_makefile_star2_O1/eschwabe[P]interview-practice/src/anagrams.cpp
// Function: main
int main(int argc, char *argv[])
{
    vector<string> list;
    list.push_back("dog");
    list.push_back("something");
    list.push_back("god");
    list.push_back("licker");
    list.push_back("dice");
    list.push_back("kicler");
    list.push_back("cide");
    SortAnagramList(&list);
    for(auto str : list) {
        cout << str << endl;
    }
    return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
xorps %xmm0, %xmm0
movaps %xmm0, 0x20(%rsp)
movq $0x0, 0x30(%rsp)
leaq 0x10(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x1a32(%rip), %rsi      # 0x4004
leaq 0x1a2e(%rip), %rdx      # 0x4007
movq %rsp, %rdi
callq 0x3808
leaq 0x20(%rsp), %rdi
movq %rsp, %rsi
callq 0x3600
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x2604
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x2120
movq %rsp, %rdi
movq %r12, (%rdi)
leaq 0x19f7(%rip), %rsi      # 0x4008
leaq 0x19f9(%rip), %rdx      # 0x4011
callq 0x3808
leaq 0x20(%rsp), %rdi
movq %rsp, %rsi
callq 0x3600
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x2640
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x2120
movq %rsp, %rdi
movq %r12, (%rdi)
leaq 0x19c5(%rip), %rsi      # 0x4012
leaq 0x19c1(%rip), %rdx      # 0x4015
callq 0x3808
leaq 0x20(%rsp), %rdi
movq %rsp, %rsi
callq 0x3600
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x267c
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x2120
movq %rsp, %rdi
movq %r12, (%rdi)
leaq 0x198d(%rip), %rsi      # 0x4016
leaq 0x198c(%rip), %rdx      # 0x401c
callq 0x3808
leaq 0x20(%rsp), %rdi
movq %rsp, %rsi
callq 0x3600
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x26b8
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x2120
movq %rsp, %rdi
movq %r12, (%rdi)
leaq 0x1958(%rip), %rsi      # 0x401d
leaq 0x1955(%rip), %rdx      # 0x4021
callq 0x3808
leaq 0x20(%rsp), %rdi
movq %rsp, %rsi
callq 0x3600
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x26f4
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x2120
movq %rsp, %rdi
movq %r12, (%rdi)
leaq 0x1921(%rip), %rsi      # 0x4022
leaq 0x1920(%rip), %rdx      # 0x4028
callq 0x3808
leaq 0x20(%rsp), %rdi
movq %rsp, %rsi
callq 0x3600
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x2730
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x2120
movq %rsp, %rdi
movq %r12, (%rdi)
leaq 0x18ec(%rip), %rsi      # 0x4029
leaq 0x18e9(%rip), %rdx      # 0x402d
callq 0x3808
leaq 0x20(%rsp), %rdi
movq %rsp, %rsi
callq 0x3600
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x276c
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x2120
leaq 0x20(%rsp), %rdi
callq 0x230c
movq 0x20(%rsp), %r13
movq 0x28(%rsp), %rbp
cmpq %rbp, %r13
je 0x2800
movq %rsp, %rbx
movq 0x3849(%rip), %r14      # 0x5fd8
movq %r12, (%rsp)
movq (%r13), %rsi
movq 0x8(%r13), %rdx
addq %rsi, %rdx
movq %rbx, %rdi
callq 0x2bbe
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
movq %r14, %rdi
callq 0x2140
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x2100
movsbl %al, %esi
movq %r15, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20b0
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x27f7
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x2120
addq $0x20, %r13
cmpq %rbp, %r13
jne 0x278f
leaq 0x20(%rsp), %rdi
callq 0x2926
xorl %eax, %eax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x2839
jmp 0x283e
jmp 0x2839
jmp 0x283e
jmp 0x2839
jmp 0x283e
jmp 0x2839
jmp 0x283e
jmp 0x2839
jmp 0x283e
jmp 0x2839
jmp 0x283e
jmp 0x2839
jmp 0x283e
jmp 0x2839
movq %rax, %rbx
jmp 0x2857
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0x2857
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x2120
leaq 0x20(%rsp), %rdi
callq 0x2926
movq %rbx, %rdi
callq 0x21a0
nop