// File: /workspace/github_cpp_makefile_star2_O3/XDragonSl[P]git-switcher/src/main.cpp
// Function: main
int main(int argc, char **argv) {
    setlocale(LC_ALL, "Russian");
    Options opts(argc, argv);
    if (opts.isExists("-h") || opts.isExists("--help")) {
        help();
    } else if (opts.isExists("-v") || opts.isExists("--version")) {
        version();
    } else if (opts.isExists("-c") || opts.isExists("--current")) {
        current();
    } else if (opts.isExists("-a") || opts.isExists("--add")) {
        add(opts.get("--name"), opts.get("--email"));
    } else if (opts.isExists("-u") || opts.isExists("--update")) {
        try {
            string number = opts.get("--number");
            if (!number.empty()) {
                update(stoi(number), opts.get("--name"), opts.get("--email"));
            } else {
                throw invalid_argument(WRONG_UPDATE_PARAM_MESSAGE.c_str());
            }
        }
        catch(const exception& e) {
            cout << WRONG_UPDATE_PARAM_MESSAGE << endl;
            cout << RUN_HELP_MESSAGE;
        }
        
    } else if (opts.isExists("-s") || opts.isExists("--switch")) {
        string shortParam(opts.get("-s"));
        string longParam(opts.get("--switch"));
        try {
            if (!shortParam.empty()) {
                swap(stoi(shortParam));
            } else if (!longParam.empty()) {
                swap(stoi(longParam));
            } else {
                throw invalid_argument(WRONG_SWITCH_PARAM_MESSAGE.c_str());
            }
        } catch(const exception& e) {
            cout << WRONG_SWITCH_PARAM_MESSAGE << endl;
            cout << RUN_HELP_MESSAGE;
        }
    } else if (opts.isExists("-r") || opts.isExists("--remove")) {
        string shortParam(opts.get("-r"));
        string longParam(opts.get("--remove"));
        try {
            if (!shortParam.empty()) {
                remove(stoi(shortParam));
            } else if (!longParam.empty()) {
                remove(stoi(longParam));
            } else {
                throw invalid_argument(WRONG_REMOVE_PARAM_MESSAGE.c_str());
            }
        } catch(const exception& e) {
            cout << WRONG_REMOVE_PARAM_MESSAGE << endl;
            cout << RUN_HELP_MESSAGE;
        }
    } else if (opts.isExists("-l") || opts.isExists("--list")) {
        list();
    } else {
        cout << WRONG_OPTS_MESSAGE << endl;
        cout << RUN_HELP_MESSAGE;
    }
    return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x88, %rsp
movq %rsi, %rbx
leaq -0xac(%rbp), %r14
movl %edi, (%r14)
leaq 0x3255(%rip), %rsi      # 0x6329
movl $0x6, %edi
callq 0x21e0
leaq -0x80(%rbp), %rdi
movq %r14, %rsi
movq %rbx, %rdx
callq 0x4dd4
leaq -0x58(%rbp), %r13
movq %r13, -0x10(%r13)
leaq 0x3235(%rip), %rsi      # 0x6331
leaq 0x3230(%rip), %rdx      # 0x6333
leaq -0x68(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x4f3c
movb $0x1, %bl
testb %al, %al
jne 0x315b
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x3206(%rip), %rsi      # 0x6334
leaq 0x3205(%rip), %rdx      # 0x633a
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4f3c
movl %eax, %ebx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x315b
callq 0x21f0
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x3169
callq 0x21f0
testb %bl, %bl
je 0x3177
callq 0x3cb5
jmp 0x3399
leaq -0x68(%rbp), %rdi
movq %r13, (%rdi)
leaq 0x31b6(%rip), %rsi      # 0x633b
leaq 0x31b1(%rip), %rdx      # 0x633d
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x4f3c
movb $0x1, %bl
testb %al, %al
jne 0x31e0
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x318b(%rip), %rsi      # 0x633e
leaq 0x318d(%rip), %rdx      # 0x6347
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4f3c
movl %eax, %ebx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x31e0
callq 0x21f0
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x31ee
callq 0x21f0
testb %bl, %bl
je 0x3211
leaq 0x604f(%rip), %rax      # 0x9248
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq 0x5dc1(%rip), %rdi      # 0x8fc8
callq 0x2230
jmp 0x3399
leaq -0x68(%rbp), %rdi
movq %r13, (%rdi)
leaq 0x3129(%rip), %rsi      # 0x6348
leaq 0x3124(%rip), %rdx      # 0x634a
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x4f3c
movb $0x1, %bl
testb %al, %al
jne 0x327a
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x30fe(%rip), %rsi      # 0x634b
leaq 0x3100(%rip), %rdx      # 0x6354
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4f3c
movl %eax, %ebx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x327a
callq 0x21f0
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x3288
callq 0x21f0
testb %bl, %bl
je 0x329d
movq 0x61d5(%rip), %rdi      # 0x9468
callq 0x21c0
jmp 0x3399
leaq -0x68(%rbp), %rdi
movq %r13, (%rdi)
leaq 0x30aa(%rip), %rsi      # 0x6355
leaq 0x30a5(%rip), %rdx      # 0x6357
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x4f3c
movb $0x1, %bl
testb %al, %al
jne 0x3306
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x307f(%rip), %rsi      # 0x6358
leaq 0x307d(%rip), %rdx      # 0x635d
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4f3c
movl %eax, %ebx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x3306
callq 0x21f0
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x3314
callq 0x21f0
leaq -0x68(%rbp), %rdi
testb %bl, %bl
je 0x33b6
movq %r13, (%rdi)
leaq 0x3034(%rip), %rsi      # 0x635e
leaq 0x3033(%rip), %rdx      # 0x6364
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x4e7c
movq %rax, %rbx
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x3010(%rip), %rsi      # 0x6365
leaq 0x3010(%rip), %rdx      # 0x636c
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4e7c
movq %rbx, %rdi
movq %rax, %rsi
callq 0x3f99
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x338b
callq 0x21f0
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x3399
callq 0x21f0
leaq -0x80(%rbp), %rdi
callq 0x4b1c
xorl %eax, %eax
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %r13, (%rdi)
leaq 0x2fad(%rip), %rsi      # 0x636d
leaq 0x2fa8(%rip), %rdx      # 0x636f
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x4f3c
movb $0x1, %bl
testb %al, %al
jne 0x341b
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x2f82(%rip), %rsi      # 0x6370
leaq 0x2f83(%rip), %rdx      # 0x6378
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4f3c
movl %eax, %ebx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x341b
callq 0x21f0
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x3429
callq 0x21f0
testb %bl, %bl
je 0x3577
leaq -0x38(%rbp), %r15
movq %r15, -0x10(%r15)
leaq 0x2f39(%rip), %rsi      # 0x6379
leaq 0x2f3a(%rip), %rdx      # 0x6381
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4e7c
leaq -0x68(%rbp), %rdi
movq %r13, (%rdi)
movq (%rax), %rsi
movq 0x8(%rax), %rdx
addq %rsi, %rdx
callq 0x4b74
movq -0x48(%rbp), %rdi
cmpq %r15, %rdi
je 0x3481
callq 0x21f0
cmpq $0x0, -0x60(%rbp)
je 0x38fb
movq -0x68(%rbp), %r14
callq 0x2040
movq %rax, %r15
movl (%rax), %eax
movl %eax, -0x84(%rbp)
movl $0x0, (%r15)
leaq -0x48(%rbp), %r12
movq %r14, %rdi
movq %r12, %rsi
movl $0xa, %edx
callq 0x2290
cmpq %r14, (%r12)
je 0x392f
movq %rax, %rbx
movslq %ebx, %rax
cmpq %rbx, %rax
leaq -0x38(%rbp), %r12
jne 0x393b
movl (%r15), %eax
cmpl $0x22, %eax
je 0x393b
testl %eax, %eax
jne 0x34f1
movl -0x84(%rbp), %eax
movl %eax, (%r15)
leaq -0x48(%rbp), %rdi
movq %r12, (%rdi)
leaq 0x2e5f(%rip), %rsi      # 0x635e
leaq 0x2e5e(%rip), %rdx      # 0x6364
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4e7c
movq %rax, %r14
leaq -0x98(%rbp), %r15
movq %r15, -0x10(%r15)
leaq 0x2e38(%rip), %rsi      # 0x6365
leaq 0x2e38(%rip), %rdx      # 0x636c
leaq -0xa8(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x4e7c
movl %ebx, %edi
movq %r14, %rsi
movq %rax, %rdx
callq 0x40a9
movq -0xa8(%rbp), %rdi
cmpq %r15, %rdi
je 0x3836
callq 0x21f0
jmp 0x3836
leaq -0x68(%rbp), %rdi
movq %r13, (%rdi)
leaq 0x2dfd(%rip), %rsi      # 0x6382
leaq 0x2df8(%rip), %rdx      # 0x6384
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x4f3c
movb $0x1, %bl
testb %al, %al
jne 0x35e0
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x2dd2(%rip), %rsi      # 0x6385
leaq 0x2dd3(%rip), %rdx      # 0x638d
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4f3c
movl %eax, %ebx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x35e0
callq 0x21f0
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x35ee
callq 0x21f0
testb %bl, %bl
je 0x36d9
leaq -0x38(%rbp), %r12
movq %r12, -0x10(%r12)
leaq 0x2d7c(%rip), %rsi      # 0x6382
leaq 0x2d77(%rip), %rdx      # 0x6384
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4e7c
leaq -0x68(%rbp), %rbx
movq %r13, (%rbx)
movq (%rax), %rsi
movq 0x8(%rax), %rdx
addq %rsi, %rdx
movq %rbx, %rdi
callq 0x4b74
movq -0x48(%rbp), %rdi
cmpq %r12, %rdi
je 0x364a
callq 0x21f0
leaq -0x98(%rbp), %r15
movq %r15, -0x10(%r15)
leaq 0x2d29(%rip), %rsi      # 0x6385
leaq 0x2d2a(%rip), %rdx      # 0x638d
leaq -0xa8(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x4e7c
leaq -0x48(%rbp), %r14
movq %r12, (%r14)
movq (%rax), %rsi
movq 0x8(%rax), %rdx
addq %rsi, %rdx
movq %r14, %rdi
callq 0x4b74
movq -0xa8(%rbp), %rdi
cmpq %r15, %rdi
je 0x36a9
callq 0x21f0
cmpq $0x0, -0x60(%rbp)
jne 0x36be
cmpq $0x0, -0x40(%rbp)
movq %r14, %rbx
je 0x3947
movq %rbx, %rdi
xorl %esi, %esi
movl $0xa, %edx
callq 0x4916
movl %eax, %edi
callq 0x4250
jmp 0x3836
leaq -0x68(%rbp), %rdi
movq %r13, (%rdi)
leaq 0x2ca7(%rip), %rsi      # 0x638e
leaq 0x2ca2(%rip), %rdx      # 0x6390
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x4f3c
movb $0x1, %bl
testb %al, %al
jne 0x3742
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x2c7c(%rip), %rsi      # 0x6391
leaq 0x2c7d(%rip), %rdx      # 0x6399
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4f3c
movl %eax, %ebx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x3742
callq 0x21f0
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x3750
callq 0x21f0
testb %bl, %bl
je 0x3848
leaq -0x38(%rbp), %r12
movq %r12, -0x10(%r12)
leaq 0x2c26(%rip), %rsi      # 0x638e
leaq 0x2c21(%rip), %rdx      # 0x6390
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4e7c
leaq -0x68(%rbp), %rbx
movq %r13, (%rbx)
movq (%rax), %rsi
movq 0x8(%rax), %rdx
addq %rsi, %rdx
movq %rbx, %rdi
callq 0x4b74
movq -0x48(%rbp), %rdi
cmpq %r12, %rdi
je 0x37ac
callq 0x21f0
leaq -0x98(%rbp), %r15
movq %r15, -0x10(%r15)
leaq 0x2bd3(%rip), %rsi      # 0x6391
leaq 0x2bd4(%rip), %rdx      # 0x6399
leaq -0xa8(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x4e7c
leaq -0x48(%rbp), %r14
movq %r12, (%r14)
movq (%rax), %rsi
movq 0x8(%rax), %rdx
addq %rsi, %rdx
movq %r14, %rdi
callq 0x4b74
movq -0xa8(%rbp), %rdi
cmpq %r15, %rdi
je 0x380b
callq 0x21f0
cmpq $0x0, -0x60(%rbp)
jne 0x3820
cmpq $0x0, -0x40(%rbp)
movq %r14, %rbx
je 0x397b
movq %rbx, %rdi
xorl %esi, %esi
movl $0xa, %edx
callq 0x4916
movl %eax, %edi
callq 0x464c
movq -0x48(%rbp), %rdi
cmpq %r12, %rdi
jne 0x3386
jmp 0x338b
leaq -0x68(%rbp), %rdi
movq %r13, (%rdi)
leaq 0x2b44(%rip), %rsi      # 0x639a
leaq 0x2b3f(%rip), %rdx      # 0x639c
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x4f3c
movb $0x1, %bl
testb %al, %al
jne 0x38b1
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x2b19(%rip), %rsi      # 0x639d
leaq 0x2b18(%rip), %rdx      # 0x63a3
leaq -0x48(%rbp), %rdi
callq 0x4c12
leaq -0x80(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x4f3c
movl %eax, %ebx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x38b1
callq 0x21f0
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x38bf
callq 0x21f0
testb %bl, %bl
je 0x38cd
callq 0x4717
jmp 0x3399
movq 0x5ad4(%rip), %rsi      # 0x93a8
movq 0x5ad5(%rip), %rdx      # 0x93b0
movq 0x56e6(%rip), %rdi      # 0x8fc8
callq 0x2230
movq %rax, %rdi
callq 0x2100
leaq 0x5a92(%rip), %rax      # 0x9388
jmp 0x31f9
movl $0x10, %edi
callq 0x2110
movq %rax, %r15
movq 0x5ab9(%rip), %rsi      # 0x93c8
movq %rax, %rdi
callq 0x2390
movq 0x56c2(%rip), %rsi      # 0x8fe0
movq 0x56ab(%rip), %rdx      # 0x8fd0
movq %r15, %rdi
callq 0x2320
jmp 0x39ad
leaq 0x2a77(%rip), %rdi      # 0x63ad
callq 0x2140
leaq 0x2a6b(%rip), %rdi      # 0x63ad
callq 0x22b0
movl $0x10, %edi
callq 0x2110
movq %rax, %r14
movq 0x5a8d(%rip), %rsi      # 0x93e8
movq %rax, %rdi
callq 0x2390
movq 0x5676(%rip), %rsi      # 0x8fe0
movq 0x565f(%rip), %rdx      # 0x8fd0
movq %r14, %rdi
callq 0x2320
jmp 0x39ad
movl $0x10, %edi
callq 0x2110
movq %rax, %r14
movq 0x5a79(%rip), %rsi      # 0x9408
movq %rax, %rdi
callq 0x2390
movq 0x5642(%rip), %rsi      # 0x8fe0
movq 0x562b(%rip), %rdx      # 0x8fd0
movq %r14, %rdi
callq 0x2320
movq %rdx, %r15
movq %rax, %rbx
movq %r14, %rdi
callq 0x2190
jmp 0x3a41
movq %rdx, %r15
movq %rax, %rbx
movq %r14, %rdi
callq 0x2190
jmp 0x3b15
jmp 0x3c77
jmp 0x3c8e
jmp 0x3c8e
jmp 0x3c8e
jmp 0x3ca1
jmp 0x3ca1
jmp 0x3c77
jmp 0x3c8e
jmp 0x3aad
jmp 0x3adb
jmp 0x3c8e
jmp 0x3c8e
jmp 0x3ad0
movq %rdx, %r14
movq %rax, %rbx
movq %r15, %rdi
callq 0x2190
jmp 0x3bc8
jmp 0x3ca1
jmp 0x3ca1
jmp 0x3c77
jmp 0x3c8e
movq %rdx, %r15
movq %rax, %rbx
cmpl $0x1, %r15d
jne 0x3b76
movq %rbx, %rdi
callq 0x20e0
movq 0x59ae(%rip), %rsi      # 0x9408
movq 0x59af(%rip), %rdx      # 0x9410
movq 0x5560(%rip), %rdi      # 0x8fc8
callq 0x2230
movq %rax, %rdi
callq 0x2100
movq 0x590c(%rip), %rsi      # 0x9388
movq 0x590d(%rip), %rdx      # 0x9390
movq 0x553e(%rip), %rdi      # 0x8fc8
callq 0x2230
callq 0x22f0
jmp 0x3836
jmp 0x3b69
movq %rax, %rbx
callq 0x22f0
jmp 0x3b76
jmp 0x3ac5
movq %rax, %rbx
movq -0xa8(%rbp), %rdi
cmpq %r15, %rdi
jne 0x3c83
jmp 0x3c91
movq %rdx, %r14
movq %rax, %rbx
jmp 0x3b9f
movq %rdx, %r14
movq %rax, %rbx
jmp 0x3bc8
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r12, %rdi
jne 0x3c9a
jmp 0x3ca4
jmp 0x3c8e
jmp 0x3ca1
movq %rdx, %r14
movq %rax, %rbx
jmp 0x3bd6
jmp 0x3c77
jmp 0x3c8e
movq %rdx, %r15
movq %rax, %rbx
cmpl $0x1, %r15d
jne 0x3b76
movq %rbx, %rdi
callq 0x20e0
movq 0x58be(%rip), %rsi      # 0x93e8
movq 0x58bf(%rip), %rdx      # 0x93f0
movq 0x5490(%rip), %rdi      # 0x8fc8
callq 0x2230
movq %rax, %rdi
callq 0x2100
movq 0x583c(%rip), %rsi      # 0x9388
movq 0x583d(%rip), %rdx      # 0x9390
movq 0x546e(%rip), %rdi      # 0x8fc8
callq 0x2230
callq 0x22f0
jmp 0x3836
movq %rax, %rbx
jmp 0x3b76
movq %rax, %rbx
callq 0x22f0
movq -0x48(%rbp), %rdi
cmpq %r12, %rdi
jne 0x3c83
jmp 0x3c91
movq %rdx, %r14
movq %rax, %rbx
movq -0xa8(%rbp), %rdi
cmpq %r15, %rdi
je 0x3b9f
callq 0x21f0
movq -0x48(%rbp), %rdi
leaq -0x38(%rbp), %rax
cmpq %rax, %rdi
je 0x3bc8
callq 0x21f0
jmp 0x3bc8
movq %rdx, %r14
movq %rax, %rbx
cmpl $0x0, (%r15)
jne 0x3bc8
movl -0x84(%rbp), %eax
movl %eax, (%r15)
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x3bd6
callq 0x21f0
cmpl $0x1, %r14d
jne 0x3ca4
movq %rbx, %rdi
callq 0x20e0
movq 0x57d9(%rip), %rsi      # 0x93c8
movq 0x57da(%rip), %rdx      # 0x93d0
movq 0x53cb(%rip), %rdi      # 0x8fc8
callq 0x2230
movq %rax, %rdi
callq 0x2100
movq 0x5777(%rip), %rsi      # 0x9388
movq 0x5778(%rip), %rdx      # 0x9390
movq 0x53a9(%rip), %rdi      # 0x8fc8
callq 0x2230
callq 0x22f0
jmp 0x3399
jmp 0x3ca1
movq %rax, %rbx
callq 0x22f0
jmp 0x3ca4
movq %rax, %rdi
callq 0x49b7
movq %rdx, %r14
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r15, %rdi
jne 0x3bd1
jmp 0x3bd6
jmp 0x3c8e
jmp 0x3c8e
jmp 0x3c8e
jmp 0x3ca1
jmp 0x3ca1
jmp 0x3c77
jmp 0x3c8e
jmp 0x3c77
jmp 0x3c8e
jmp 0x3ca1
jmp 0x3c77
jmp 0x3c8e
jmp 0x3c8e
jmp 0x3ca1
jmp 0x3c77
jmp 0x3c8e
jmp 0x3c8e
jmp 0x3ca1
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x3c91
callq 0x21f0
jmp 0x3c91
jmp 0x3c8e
jmp 0x3ca1
movq %rax, %rbx
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
je 0x3ca4
callq 0x21f0
jmp 0x3ca4
movq %rax, %rbx
leaq -0x80(%rbp), %rdi
callq 0x4b1c
movq %rbx, %rdi
callq 0x2340