// File: XDragonSl[P]git-switcher/src/main.cpp
// Function: swap(int)
void swap(int number) {
    Store store;
    if (number <= 0 || number > store.size()) {
        cout << NONEXISTENT_INDEX_MESSAGE << endl;
        cout << RUN_HELP_MESSAGE;
        return;
    }
    Profile chosen = store.get(number - 1);
    string swapName(SWAP_NAME_GIT_CMD + QUOTE + chosen.getName() + QUOTE);
    string swapEmail(SWAP_EMAIL_GIT_CMD + QUOTE + chosen.getEmail() + QUOTE);
    system(swapName.c_str());
    system(swapEmail.c_str());
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x370, %rsp            # imm = 0x370
movl %edi, -0x4(%rbp)
leaq -0x238(%rbp), %rdi
callq 0x8d90
cmpl $0x0, -0x4(%rbp)
jle 0x611d
movl -0x4(%rbp), %eax
movl %eax, -0x350(%rbp)
leaq -0x238(%rbp), %rdi
callq 0x91f0
movl %eax, -0x34c(%rbp)
jmp 0x610d
movl -0x350(%rbp), %eax
movl -0x34c(%rbp), %ecx
cmpl %ecx, %eax
jle 0x6189
movq 0x9e9c(%rip), %rdi      # 0xffc0
leaq 0xa345(%rip), %rsi      # 0x10470
callq 0x31f0
movq %rax, -0x358(%rbp)
jmp 0x6139
movq -0x358(%rbp), %rdi
movq 0x9e61(%rip), %rsi      # 0xffa8
callq 0x3240
jmp 0x614e
movq 0x9e6b(%rip), %rdi      # 0xffc0
leaq 0xa274(%rip), %rsi      # 0x103d0
callq 0x31f0
jmp 0x6163
movl $0x1, -0x248(%rbp)
jmp 0x6314
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x240(%rbp)
movl %eax, -0x244(%rbp)
jmp 0x640a
movl -0x4(%rbp), %esi
decl %esi
leaq -0x238(%rbp), %rdi
callq 0x9090
movq %rax, -0x360(%rbp)
jmp 0x61a3
movq -0x360(%rbp), %rsi
leaq -0x288(%rbp), %rdi
callq 0x6b60
jmp 0x61b8
leaq 0xa311(%rip), %rsi      # 0x104d0
leaq 0xa34a(%rip), %rdx      # 0x10510
leaq -0x2e8(%rbp), %rdi
callq 0x6c10
jmp 0x61d4
leaq -0x288(%rbp), %rdi
callq 0x8c40
movq %rax, -0x368(%rbp)
jmp 0x61e9
movq -0x368(%rbp), %rdx
leaq -0x2c8(%rbp), %rdi
leaq -0x2e8(%rbp), %rsi
callq 0x6bc0
jmp 0x6205
leaq 0xa304(%rip), %rdx      # 0x10510
leaq -0x2a8(%rbp), %rdi
leaq -0x2c8(%rbp), %rsi
callq 0x6bc0
jmp 0x6221
leaq -0x2c8(%rbp), %rdi
callq 0x3448
leaq -0x2e8(%rbp), %rdi
callq 0x3448
leaq 0xa2b0(%rip), %rsi      # 0x104f0
leaq 0xa2c9(%rip), %rdx      # 0x10510
leaq -0x348(%rbp), %rdi
callq 0x6c10
jmp 0x6255
leaq -0x288(%rbp), %rdi
callq 0x8c50
movq %rax, -0x370(%rbp)
jmp 0x626a
movq -0x370(%rbp), %rdx
leaq -0x328(%rbp), %rdi
leaq -0x348(%rbp), %rsi
callq 0x6bc0
jmp 0x6286
leaq 0xa283(%rip), %rdx      # 0x10510
leaq -0x308(%rbp), %rdi
leaq -0x328(%rbp), %rsi
callq 0x6bc0
jmp 0x62a2
leaq -0x328(%rbp), %rdi
callq 0x3448
leaq -0x348(%rbp), %rdi
callq 0x3448
leaq -0x2a8(%rbp), %rdi
callq 0x30e0
movq %rax, %rdi
callq 0x31d0
jmp 0x62d0
leaq -0x308(%rbp), %rdi
callq 0x30e0
movq %rax, %rdi
callq 0x31d0
jmp 0x62e6
leaq -0x308(%rbp), %rdi
callq 0x3448
leaq -0x2a8(%rbp), %rdi
callq 0x3448
leaq -0x288(%rbp), %rdi
callq 0x6b30
movl $0x0, -0x248(%rbp)
leaq -0x238(%rbp), %rdi
callq 0x9220
addq $0x370, %rsp            # imm = 0x370
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x240(%rbp)
movl %eax, -0x244(%rbp)
jmp 0x63fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x240(%rbp)
movl %eax, -0x244(%rbp)
jmp 0x6372
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x240(%rbp)
movl %eax, -0x244(%rbp)
leaq -0x2c8(%rbp), %rdi
callq 0x3448
leaq -0x2e8(%rbp), %rdi
callq 0x3448
jmp 0x63fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x240(%rbp)
movl %eax, -0x244(%rbp)
jmp 0x63f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x240(%rbp)
movl %eax, -0x244(%rbp)
jmp 0x63c6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x240(%rbp)
movl %eax, -0x244(%rbp)
leaq -0x328(%rbp), %rdi
callq 0x3448
leaq -0x348(%rbp), %rdi
callq 0x3448
jmp 0x63f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x240(%rbp)
movl %eax, -0x244(%rbp)
leaq -0x308(%rbp), %rdi
callq 0x3448
leaq -0x2a8(%rbp), %rdi
callq 0x3448
leaq -0x288(%rbp), %rdi
callq 0x6b30
leaq -0x238(%rbp), %rdi
callq 0x9220
movq -0x240(%rbp), %rdi
callq 0x33d0
nopw %cs:(%rax,%rax)