// File: /workspace/github_c_makefile_star2_O1/beejjorgensen[P]conquest/conqtf.c
// Function: join_tf
void join_tf(void)
{
    char tf1, tf2;
    int tf1n, tf2n, ind, value;
    char iline[81];
    printw("oin tfs:");
    ind = 1;
    get_line(iline, &ind, true);
    cle3r_left();
    get_token(iline, &ind, &value, &tf1);
    tf1n = tf1 - 'A' + 1;
    if ((tf1n < 1) || (tf1n > 26)) {
        error_message();
        printw("  ! illegal tf %c", tf1);
    } else if ((tf[player][tf1n].eta) > 0) {
        error_message();
        printw("  !tf%c is not in normal space ", tf1);
    } else if (tf[player][tf1n].dest == 0) {
        error_message();
        printw("  !nonexistent tf");
    } else if (tf[player][tf1n].blasting) {
        error_message();
        printw("  !Tf is blasting a planet    ");
    } else {
        get_token(iline, &ind, &value, &tf2);
        while (tf2 != ' ') {
            tf2n = tf2 - 'A' + 1;
            if ((tf2n < 1) || (tf2n > 26)) {
                error_message();
                printw("  !illegal tf %c", tf2);
            } else if (tf2n == tf1n) {
                error_message();
                printw("!Duplicate tf %c", tf2);
            } else if (tf[player][tf2n].dest == 0) {
                error_message();
                printw("!Nonexistant TF%c", tf2);
            } else if ((tf[player][tf2n].x != tf[player][tf1n].x) ||
                       (tf[player][tf2n].y != tf[player][tf2n].y)) {
                error_message();
                printw("  !tf%c bad location", tf2);
            } else if (tf[player][tf2n].eta != 0) {
                error_message();
                printw("  !tf%c is not in normal space ", tf2);
            } else if (tf[player][tf2n].blasting) {
                error_message();
                printw(" !Tf%c is blasting a planet    ", tf2);
            } else {
                joinsilent(player, &tf[player][tf1n], &tf[player][tf2n]);
            };
            get_token(iline, &ind, &value, &tf2);
        };
        on_board(tf[player][tf1n].x, tf[player][tf1n].y);
        point(1, 19);
        pr3nt_tf(tf1n);
    };
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x68, %rsp
leaq 0x1d74(%rip), %rdi      # 0x9f51
xorl %eax, %eax
callq 0x2030
leaq 0xc(%rsp), %rbx
movl $0x1, (%rbx)
leaq 0x10(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
movl $0x1, %edx
callq 0x71a2
callq 0x7377
leaq 0x8(%rsp), %rdx
leaq 0x7(%rsp), %r15
movq %r14, %rdi
movq %rbx, %rsi
movq %r15, %rcx
callq 0x73f2
movsbl (%r15), %ebx
movl %ebx, %r12d
leal -0x5b(%r12), %eax
cmpb $-0x1b, %al
ja 0x8244
callq 0x73e3
movsbl 0x7(%rsp), %esi
leaq 0x1d18(%rip), %rdi      # 0x9f5a
jmp 0x8270
addl $-0x40, %ebx
movl %ebx, %eax
imulq $0x34, %rax, %rax
leaq 0x674c(%rip), %r13      # 0xe9a0
cmpl $0x0, 0x5a0(%r13,%rax)
jle 0x8286
callq 0x73e3
movsbl 0x7(%rsp), %esi
leaq 0x1cfc(%rip), %rdi      # 0x9f6c
xorl %eax, %eax
callq 0x2030
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq (%rax,%r13), %r14
addq $0x57c, %r14            # imm = 0x57C
cmpl $0x0, 0x20(%r14)
je 0x82ad
cmpl $0x0, 0x2c(%r14)
je 0x82c2
callq 0x73e3
leaq 0x1ce1(%rip), %rdi      # 0x9f8c
jmp 0x82b9
callq 0x73e3
leaq 0x16e9(%rip), %rdi      # 0x99a2
xorl %eax, %eax
callq 0x2030
jmp 0x8277
leaq 0x10(%rsp), %rdi
leaq 0xc(%rsp), %rsi
leaq 0x8(%rsp), %rdx
leaq 0x6(%rsp), %r15
movq %r15, %rcx
callq 0x73f2
movb (%r15), %al
cmpb $0x20, %al
jne 0x830c
movl (%r14), %edi
movl 0x4(%r14), %esi
callq 0x7580
movl $0x1, %edi
movl $0x13, %esi
callq 0x4f69
movl %ebx, %edi
callq 0x7683
jmp 0x8277
leaq 0x8(%rsp), %rbp
leaq 0x6(%rsp), %r15
leal -0x5b(%rax), %ecx
cmpb $-0x1b, %cl
ja 0x8331
callq 0x73e3
movsbl 0x6(%rsp), %esi
leaq 0x1c7c(%rip), %rdi      # 0x9fab
jmp 0x83ac
cmpb %r12b, %al
jne 0x8349
callq 0x73e3
movsbl 0x6(%rsp), %esi
leaq 0x1c75(%rip), %rdi      # 0x9fbc
jmp 0x83ac
andb $0x1f, %al
movzbl %al, %eax
imulq $0x34, %rax, %rax
cmpl $0x0, 0x59c(%r13,%rax)
je 0x8388
leaq (%rax,%r13), %rdx
addq $0x57c, %rdx            # imm = 0x57C
movl (%rdx), %eax
cmpl (%r14), %eax
jne 0x839b
cmpl $0x0, 0x24(%rdx)
je 0x83d9
callq 0x73e3
movsbl 0x6(%rsp), %esi
leaq 0x1be6(%rip), %rdi      # 0x9f6c
jmp 0x83ac
callq 0x73e3
movsbl 0x6(%rsp), %esi
leaq 0x1c34(%rip), %rdi      # 0x9fcd
jmp 0x83ac
callq 0x73e3
movsbl 0x6(%rsp), %esi
leaq 0x1c33(%rip), %rdi      # 0x9fdf
xorl %eax, %eax
callq 0x2030
leaq 0x10(%rsp), %rdi
leaq 0xc(%rsp), %rsi
movq %rbp, %rdx
movq %r15, %rcx
callq 0x73f2
movb 0x6(%rsp), %al
cmpb $0x20, %al
jne 0x8316
jmp 0x82e5
cmpl $0x0, 0x2c(%rdx)
je 0x83f2
callq 0x73e3
movsbl 0x6(%rsp), %esi
leaq 0x1c04(%rip), %rdi      # 0x9ff4
jmp 0x83ac
movl $0x1, %edi
movq %r14, %rsi
callq 0x2a93
jmp 0x83b3
nopl (%rax)