// File: /workspace/github_c_makefile_star2_O2/canboat[P]canboat/n2kd/main.c
// Function: handleClientRequest
static void handleClientRequest(int i)
{
  ssize_t r;
  char   *p;
  size_t  remain;

  if (stream[i].len >= sizeof(stream[i].buffer) - 2)
  {
    logAbort("Input line on stream %d too long: %s\n", i, stream[i].buffer);
  }
  remain = sizeof(stream[i].buffer) - stream[i].len - 2;

  logDebug("handleClientRequest: read i=%d\n", i);
  logDebug("read %s i=%d fd=%d len=%u remain=%u\n", streamTypeName[stream[i].type], i, stream[i].fd, stream[i].len, remain);
  r = read(stream[i].fd, stream[i].buffer + stream[i].len, remain);

  if (r <= 0)
  {
    logDebug("read %s i=%d fd=%d r=%d\n", streamTypeName[stream[i].type], i, stream[i].fd, r);
    if (stream[i].type == DATA_INPUT_STREAM)
    {
      stop = true;
    }
    else
    {
      closeStream(i);
      return;
    }
  }
  logDebug("processing stream %d\n", i);

  stream[i].len += r;
  stream[i].buffer[stream[i].len] = 0;

  while (stream[i].len > 0)
  {
    size_t len;

    logDebug("processing stream %d buffer '%-1.20s...' len=%zu\n", i, stream[i].buffer, stream[i].len);
    p = strchr(stream[i].buffer, '\n');
    if (!p)
    {
      break;
    }
    len = p - stream[i].buffer;
    if (stream[i].type == CLIENT_INPUT_STREAM)
    {
      write(stdoutfd, stream[i].buffer, len + 1);
    }
    else
    {
      sbAppendData(&tcpMessage, stream[i].buffer, len + 1);
      if (stream[i].type != DATA_INPUT_STREAM || stream[outputIdx].type == DATA_OUTPUT_COPY)
      {
        /* Send all TCP client input and the main stdin stream if the mode is -o */
        /* directly to stdout */
        sbAppendData(&outMessage, stream[i].buffer, len + 1);
      }
    }
    *p = 0;
    if (storeMessage(stream[i].buffer, len) && haveNMEA0183Client)
    {
      convertJSONToNMEA0183(&nmeaMessage, stream[i].buffer);
    }
    p++, len++;
    stream[i].len -= len;

    /* Now remove [buffer..p> == the entire line */
    memmove(stream[i].buffer, p, stream[i].len + 1);
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xf8, %rsp
movl %edi, %ebp
movslq %edi, %rax
imulq $0x8038, %rax, %rax     # imm = 0x8038
leaq 0xb040(%rip), %rcx      # 0xd530
leaq (%rcx,%rax), %r13
movq 0x8030(%rax,%rcx), %rax
cmpq $0x7ffe, %rax           # imm = 0x7FFE
jb 0x251f
leaq 0x18(%r13), %rdx
leaq 0x63b0(%rip), %rdi      # 0x88bf
movl %ebp, %esi
xorl %eax, %eax
callq 0x6e9a
movq 0x8030(%r13), %rax
movl $0x7ffe, %ebx           # imm = 0x7FFE
subq %rax, %rbx
leaq 0x63b7(%rip), %rdi      # 0x88e5
movl %ebp, %esi
xorl %eax, %eax
callq 0x6d78
movl (%r13), %ecx
movl 0x4(%r13), %eax
leaq 0xacca(%rip), %r14      # 0xd210
movq (%r14,%rax,8), %rsi
movq 0x8030(%r13), %r8
leaq 0x63ad(%rip), %rdi      # 0x8905
movl %ebp, %edx
movq %rbx, %r9
xorl %eax, %eax
callq 0x6d78
movl (%r13), %edi
leaq 0x18(%r13), %rax
movq 0x8030(%r13), %rsi
movq %rax, 0x48(%rsp)
addq %rax, %rsi
movq %rbx, %rdx
callq 0x21b0
movq %rax, %rbx
testq %rax, %rax
jg 0x25bc
movl (%r13), %ecx
movl 0x4(%r13), %eax
movq (%r14,%rax,8), %rsi
leaq 0x638c(%rip), %rdi      # 0x892a
movl %ebp, %edx
movq %rbx, %r8
xorl %eax, %eax
callq 0x6d78
cmpl $0xe, 0x4(%r13)
jne 0x3020
movb $0x1, 0xaf66(%rip)      # 0xd522
leaq 0x4(%r13), %rax
movq %rax, 0x78(%rsp)
leaq 0x6377(%rip), %rdi      # 0x8943
movl %ebp, %esi
xorl %eax, %eax
callq 0x6d78
movq 0x8030(%r13), %rax
addq %rbx, %rax
movq %rax, 0x8030(%r13)
movb $0x0, 0x18(%r13,%rax)
leaq 0x16(%r13), %rax
movq %rax, 0x70(%rsp)
movq %r13, 0x58(%rsp)
movq 0x48(%rsp), %r14
movq 0x8030(%r13), %rcx
testq %rcx, %rcx
je 0x300e
leaq 0x6343(%rip), %rdi      # 0x8959
movl %ebp, %esi
movq %r14, %rdx
xorl %eax, %eax
callq 0x6d78
movq %r14, %rdi
pushq $0xa
popq %rsi
callq 0x2110
testq %rax, %rax
je 0x300e
movq %rax, %r15
movq %rax, %r12
subq %r14, %r12
leaq 0x1(%r12), %rdx
movq 0x78(%rsp), %rbx
cmpl $0x2, (%rbx)
movq %rdx, 0x68(%rsp)
jne 0x2660
pushq $0x1
popq %rdi
movq %r14, %rsi
callq 0x20e0
jmp 0x26a4
leaq 0x2018ed1(%rip), %rdi   # 0x201b538
movq %r14, %rsi
callq 0x70cf
cmpl $0xe, (%rbx)
jne 0x2690
movslq 0xaccd(%rip), %rax      # 0xd348
imulq $0x8038, %rax, %rax     # imm = 0x8038
leaq 0xaea7(%rip), %rcx      # 0xd530
cmpl $0x10, 0x4(%rax,%rcx)
jne 0x26a4
leaq 0x2018eb9(%rip), %rdi   # 0x201b550
movq %r14, %rsi
movq 0x68(%rsp), %rdx
callq 0x70cf
movb $0x0, (%r15)
andl $0x0, 0x24(%rsp)
movl $0xff, 0x54(%rsp)
andl $0x0, 0xc(%rsp)
callq 0x6b84
movq %rax, 0x60(%rsp)
pushq $0x7
popq %rdi
callq 0x6fa3
testb %al, %al
je 0x2704
cmpq $0x51, %r12
jb 0x26f0
leaq (%rbx,%r12), %rdx
leaq 0x62cd(%rip), %rdi      # 0x89ae
movq %r14, %rsi
movq %r12, %rcx
xorl %eax, %eax
callq 0x6d78
jmp 0x2704
leaq 0x62db(%rip), %rdi      # 0x89d2
movq %r14, %rsi
movq %r12, %rdx
xorl %eax, %eax
callq 0x6d78
movq %r14, %rdi
leaq 0x62db(%rip), %rsi      # 0x89e9
callq 0x2380
testq %rax, %rax
je 0x2732
movq %r14, %rdi
leaq 0x62d1(%rip), %rsi      # 0x89f3
pushq $0xb
popq %rdx
callq 0x2260
testl %eax, %eax
je 0x27d6
movq %r12, 0x30(%rsp)
movq %r14, %rdi
leaq 0x5a8c(%rip), %rsi      # 0x81cd
leaq 0xa0(%rsp), %rbx
movq %rbx, %rdx
pushq $0x10
popq %r12
movq %r12, %rcx
callq 0x7415
testb %al, %al
je 0x27be
leaq 0x629c(%rip), %rdi      # 0x89ff
movq %rbx, %rsi
xorl %eax, %eax
callq 0x6c6b
movq %r14, %rdi
leaq 0x62b3(%rip), %rsi      # 0x8a2a
movq %rbx, %rdx
movq %r12, %rcx
callq 0x7415
testb %al, %al
je 0x2fa5
movq %rbx, %rdi
leaq 0x629c(%rip), %rsi      # 0x8a30
pushq $0x3
popq %rdx
callq 0x2260
testl %eax, %eax
jne 0x2fa5
leaq 0x6288(%rip), %rdi      # 0x8a33
xorl %eax, %eax
callq 0x6c6b
movb $0x1, 0xabbf(%rip)      # 0xd378
jmp 0x2fa5
leaq 0x6288(%rip), %rdi      # 0x8a4d
xorl %eax, %eax
callq 0x6d78
movq 0x30(%rsp), %r12
jmp 0x2fc2
movq 0x70(%rsp), %rax
cmpw $0x7d7d, (%rax,%r12)    # imm = 0x7D7D
leaq 0xa0(%rsp), %rbx
je 0x2802
leaq 0x627e(%rip), %rdi      # 0x8a71
movq %r14, %rsi
xorl %eax, %eax
callq 0x6d78
jmp 0x2fc2
movq %r14, %rdi
leaq 0x6280(%rip), %rsi      # 0x8a8c
movq %rbx, %rdx
pushq $0x10
popq %rcx
callq 0x7415
testb %al, %al
je 0x2831
movq %rbx, %rdi
leaq 0x6e05(%rip), %rsi      # 0x962a
leaq 0x24(%rsp), %rdx
xorl %eax, %eax
callq 0x2240
movq %r14, %rdi
leaq 0x6255(%rip), %rsi      # 0x8a90
movq %rbx, %rdx
pushq $0x10
popq %rcx
callq 0x7415
testb %al, %al
je 0x2860
movq %rbx, %rdi
leaq 0x6dd6(%rip), %rsi      # 0x962a
leaq 0x54(%rsp), %rdx
xorl %eax, %eax
callq 0x2240
movq %r14, %rdi
leaq 0x622a(%rip), %rsi      # 0x8a94
movq %rbx, %rdx
pushq $0x10
popq %rcx
callq 0x7415
testb %al, %al
je 0x288f
movq %rbx, %rdi
leaq 0x6da7(%rip), %rsi      # 0x962a
leaq 0xc(%rsp), %rdx
xorl %eax, %eax
callq 0x2240
movl 0xc(%rsp), %ecx
cmpl $0x1ffb8, %ecx          # imm = 0x1FFB8
jg 0x28a4
leal -0xe7ff(%rcx), %r8d
jmp 0x28bd
leal -0x40000(%rcx), %eax
leal -0x2e846(%rcx), %r8d
cmpl $0x201, %eax            # imm = 0x201
pushq $-0x1
popq %rax
cmovael %eax, %r8d
movl %r8d, 0x40(%rsp)
movl 0x24(%rsp), %esi
movl 0x54(%rsp), %edx
leaq 0x61c7(%rip), %rdi      # 0x8a98
xorl %eax, %eax
callq 0x6d78
movl 0xc(%rsp), %esi
cmpl $0x0, 0x40(%rsp)
js 0x28fe
cmpl $0xee00, %esi           # imm = 0xEE00
movl %ebp, 0x50(%rsp)
movq %r12, 0x30(%rsp)
jne 0x2914
xorl %esi, %esi
pushq $0x78
popq %rax
jmp 0x2b16
leaq 0x61b0(%rip), %rdi      # 0x8ab5
movq %r14, %rdx
xorl %eax, %eax
callq 0x6e09
jmp 0x2fc2
leaq 0xa005(%rip), %rcx      # 0xc920
leaq 0x576e(%rip), %rax      # 0x8090
xorl %r12d, %r12d
pushq $0x78
popq %rbp
cmpq $0x5, %r12
je 0x29fa
movq %rax, 0x10(%rsp)
movq %rcx, 0x18(%rsp)
movq (%rcx), %r13
movq %r14, %rdi
movq %r13, %rsi
callq 0x2380
testq %rax, %rax
je 0x29e0
movq %rax, %rbx
movq %rax, %r14
leaq 0x616b(%rip), %rdi      # 0x8acb
movl %r12d, %esi
movq %r13, %rdx
xorl %eax, %eax
callq 0x6d78
movq %r13, %rdi
callq 0x2100
addq %rax, %rbx
cmpb $0x7b, (%r14,%rax)
jne 0x2a05
movq %rbx, %rdi
leaq 0x6155(%rip), %rsi      # 0x8ae2
callq 0x2380
movq %rax, %r13
movq %rbx, %rdi
pushq $0x7d
popq %rsi
callq 0x2110
movq %rax, %rbp
testq %r13, %r13
sete %al
cmpq %rbp, %r13
seta %cl
orb %al, %cl
cmpb $0x1, %cl
movq 0x48(%rsp), %r14
jne 0x2a0c
movq %rbx, %rdi
leaq 0x6124(%rip), %rsi      # 0x8ae9
callq 0x2380
movq %rax, %rbx
testq %rax, %rax
sete %al
cmpq %rbp, %rbx
seta %cl
orb %al, %cl
pushq $0x78
popq %rbp
je 0x2a15
incq %r12
movq 0x10(%rsp), %rax
addq $0x4, %rax
movq 0x18(%rsp), %rcx
addq $0x8, %rcx
jmp 0x2928
xorl %esi, %esi
movl %ebp, 0x3c(%rsp)
jmp 0x2b1a
movq 0x48(%rsp), %r14
jmp 0x2a19
addq $0x6, %r13
movq %r13, %rbx
jmp 0x2a19
addq $0x7, %rbx
pushq $0x1
popq %rbp
xorl %r12d, %r12d
pushq $0x4
popq %r13
movsbl (%rbx,%r12), %esi
leaq 0x60c2(%rip), %rdi      # 0x8af1
movq %r13, %rdx
callq 0x21a0
incq %r12
decq %rbp
testq %rax, %rax
jne 0x2a23
leaq (%rbx,%r12), %r13
decq %r13
movq %r13, %rdi
pushq $0x20
popq %rsi
callq 0x2110
movq %rax, 0x28(%rsp)
movq %r13, 0x18(%rsp)
movq %r13, %rdi
pushq $0x22
popq %rsi
callq 0x2110
movq 0x28(%rsp), %rcx
cmpq %rcx, %rax
movq %rcx, %r13
cmovbq %rax, %r13
testq %rcx, %rcx
cmoveq %rax, %r13
testq %r13, %r13
jne 0x2a98
movq 0x18(%rsp), %rdi
callq 0x2100
addq %rbx, %rax
leaq (%r12,%rax), %r13
decq %r13
movq 0x18(%rsp), %rax
cmpq %rax, %r13
jbe 0x2aaf
leaq -0x1(%r13), %rax
cmpb $0x2c, -0x1(%r13)
cmoveq %rax, %r13
movq %r13, %rdi
subq %rbx, %rdi
subq %r12, %rdi
leaq 0x1(%rdi), %rax
movq %rax, 0x28(%rsp)
addq $0x2, %rdi
callq 0x2220
movq %rax, %rcx
testq %rax, %rax
jne 0x2aeb
leaq 0x601c(%rip), %rdi      # 0x8af5
movq 0x28(%rsp), %rsi
xorl %eax, %eax
movq %rcx, %r12
callq 0x6e9a
movq %r12, %rcx
movq %rcx, %rdi
movq 0x18(%rsp), %rsi
movq %rcx, %r12
movq 0x28(%rsp), %rdx
callq 0x2200
movq %r12, %rsi
addq %r12, %r13
subq %rbx, %r13
movb $0x0, (%r13,%rbp)
movq 0x10(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x3c(%rsp)
movl 0x40(%rsp), %eax
leaq 0x2018a6b(%rip), %rcx   # 0x201b590
leaq (%rcx,%rax,8), %rax
movq %rax, 0x28(%rsp)
movq (%rax), %r13
testq %r13, %r13
movq %rsi, 0x10(%rsp)
jne 0x2bba
cmpq $0x200, 0x20a681a(%rip) # imm = 0x200
jne 0x2b56
leaq 0x5fc9(%rip), %rdi      # 0x8b18
xorl %eax, %eax
callq 0x6e9a
pushq $0x1
popq %rdi
pushq $0x40
popq %rsi
callq 0x21c0
movq %rax, %r13
testq %rax, %rax
jne 0x2b7a
leaq 0x5f85(%rip), %rdi      # 0x8af5
pushq $0x40
popq %rsi
xorl %eax, %eax
callq 0x6e9a
movq 0x28(%rsp), %rdx
movq %r13, (%rdx)
movq 0x20a67d7(%rip), %rax   # 0x20a9360
leaq 0x1(%rax), %rcx
movq %rcx, 0x20a67cc(%rip)   # 0x20a9360
leaq 0x20a57c5(%rip), %rcx   # 0x20a8360
movq %rdx, (%rcx,%rax,8)
movl 0xc(%rsp), %esi
leaq 0x5f7d(%rip), %rdi      # 0x8b27
movl 0x40(%rsp), %edx
xorl %eax, %eax
callq 0x6d78
movq 0x10(%rsp), %rsi
cmpq $0x0, 0x8(%r13)
je 0x2c46
leaq 0x10(%r13), %rax
movq %rax, 0x40(%rsp)
movq %r13, %rax
movl 0x4(%r13), %r13d
movl 0x24(%rsp), %ebp
movq %rax, 0x18(%rsp)
leaq 0x30(%rax), %r14
movq %r14, %rbx
xorl %r12d, %r12d
cmpq %r12, %r13
je 0x2c22
movzbl -0x20(%rbx), %eax
cmpl %eax, %ebp
jne 0x2c10
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x2c19
testq %rsi, %rsi
je 0x2c10
callq 0x21d0
movq 0x10(%rsp), %rsi
testl %eax, %eax
je 0x2c19
incq %r12
addq $0x30, %rbx
jmp 0x2be8
cmpl %r12d, %r13d
jne 0x2d2f
xorl %r12d, %r12d
movq 0x60(%rsp), %rax
cmpq %r12, %r13
je 0x2d0b
cmpq %rax, -0x18(%r14)
jb 0x2d12
incq %r12
addq $0x30, %r14
jmp 0x2c2a
movl 0xc(%rsp), %eax
movl %eax, (%r13)
movq %r14, %rdi
leaq 0x5eef(%rip), %rsi      # 0x8b47
callq 0x2380
movq 0x10(%rsp), %rsi
testq %rax, %rax
je 0x2bc5
movq %rax, %rbx
movq %r13, %rbp
addq $0xf, %rbx
movq %rbx, %rdi
pushq $0x3a
popq %rsi
callq 0x2110
movq %rax, %r13
movq %rbx, %rdi
pushq $0x22
popq %rsi
callq 0x2110
cmpq %r13, %rax
movq %r13, %r12
cmovbq %rax, %r12
testq %r13, %r13
cmoveq %rax, %r12
testq %r12, %r12
je 0x2fef
subq %rbx, %r12
leaq 0x5eca(%rip), %rdi      # 0x8b7c
movq %r12, %rsi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x6d78
leaq 0x1(%r12), %rdi
callq 0x2220
movq %rbp, %r13
movq %rax, 0x8(%rbp)
testq %rax, %rax
jne 0x2cea
leaq 0x5e19(%rip), %rdi      # 0x8af5
movq %r12, %rsi
xorl %eax, %eax
callq 0x6e9a
movq 0x8(%r13), %rax
movq %rax, %rdi
movq %rbx, %rsi
movq %r12, %rdx
callq 0x2200
movq 0x8(%r13), %rax
movb $0x0, (%rax,%r12)
movq 0x10(%rsp), %rsi
jmp 0x2bc5
movq 0x48(%rsp), %r14
jmp 0x2d42
movb %bpl, -0x20(%r14)
movq (%r14), %rdi
movq %rsi, %rbx
callq 0x2030
movq %rbx, (%r14)
movq 0x18(%rsp), %rax
movl 0x4(%rax), %r13d
xorl %esi, %esi
cmpl %r13d, %r12d
movq 0x48(%rsp), %r14
movq %rsi, 0x10(%rsp)
jne 0x2e57
leal 0x1(%r13), %eax
movq 0x18(%rsp), %rcx
movl %eax, 0x4(%rcx)
imulq $0x30, %rax, %r12
addq $0x10, %r12
movq 0x28(%rsp), %rbp
movq (%rbp), %rdi
movq %r12, %rsi
callq 0x2270
movq %rax, %rbx
testq %rax, %rax
jne 0x2d80
leaq 0x5d7f(%rip), %rdi      # 0x8af5
movq %r12, %rsi
xorl %eax, %eax
callq 0x6e9a
movb 0x24(%rsp), %al
movl %r13d, %ecx
imulq $0x30, %rcx, %rcx
movb %al, 0x10(%rbx,%rcx)
movq 0x10(%rsp), %rax
movq %rax, 0x30(%rbx,%rcx)
andq $0x0, 0x38(%rbx,%rcx)
andl $0x0, 0x14(%rbx,%rcx)
andq $0x0, 0x20(%rbx,%rcx)
movq %rbx, (%rbp)
andl $0x0, 0x28(%rbx,%rcx)
leaq (%rbx,%rcx), %r12
addq $0x10, %r12
addq %rcx, %rbx
addq $0x38, %rbx
movq 0x30(%rsp), %rax
addq $0x2, %rax
movq $0x0, 0x10(%rsp)
movq 0x58(%rsp), %r13
movq %rax, %rdi
callq 0x2220
movq %rax, %rdi
movq %rdi, 0x28(%r12)
testq %rdi, %rdi
movq 0x68(%rsp), %rsi
jne 0x2e04
leaq 0x5cfb(%rip), %rdi      # 0x8af5
xorl %eax, %eax
callq 0x6e9a
movq (%rbx), %rdi
movq %r14, %rsi
movq 0x30(%rsp), %rbp
movq %rbp, %rdx
callq 0x2200
movq (%rbx), %rax
movb $0xa, (%rax,%rbp)
movq (%rbx), %rax
movb $0x0, 0x1(%rax,%rbp)
movl 0xc(%rsp), %esi
pushq $0x78
popq %rax
movl %eax, %ebx
cmpl $0xee00, %esi           # imm = 0xEE00
je 0x2ea8
movl %eax, %ebx
cmpl $0x1f014, %esi          # imm = 0x1F014
je 0x2ea8
movl %eax, %ebx
cmpl $0x1f016, %esi          # imm = 0x1F016
je 0x2ea8
cmpl $0x1ff00, %esi          # imm = 0x1FF00
jne 0x2ea4
movl $0x83d600, %ebx         # imm = 0x83D600
jmp 0x2ea8
movl %r12d, %eax
imulq $0x30, %rax, %rax
movq 0x40(%rsp), %rcx
movq 0x28(%rcx,%rax), %rdi
movq 0x18(%rsp), %rcx
leaq (%rcx,%rax), %r12
addq $0x10, %r12
leaq (%rcx,%rax), %rbx
addq $0x38, %rbx
movq 0x30(%rsp), %rax
addq $0x2, %rax
testq %rdi, %rdi
je 0x2dd4
movq %rax, %rsi
callq 0x2270
movq %rax, %rdi
movq 0x58(%rsp), %r13
jmp 0x2de4
movl 0x3c(%rsp), %ebx
leaq 0x5cdd(%rip), %rdi      # 0x8b8c
movl %ebx, %edx
xorl %eax, %eax
callq 0x6d78
movq 0x10(%rsp), %rdi
callq 0x2030
movslq %ebx, %rax
imulq $0x3e8, %rax, %rax      # imm = 0x3E8
movq 0x60(%rsp), %rdx
addq %rdx, %rax
movq %rax, 0x8(%r12)
movq 0x10(%r12), %rax
testq %rax, %rax
je 0x2eec
movl %edx, %ecx
subl %eax, %ecx
movl %ecx, 0x4(%r12)
movq %rdx, 0x10(%r12)
incl 0x18(%r12)
movq 0x2018683(%rip), %rax   # 0x201b580
movl $0xea60, %ecx           # imm = 0xEA60
addq %rcx, %rax
cmpq %rdx, %rax
movl 0x50(%rsp), %ebp
ja 0x2fa5
movq %rdx, 0x2018667(%rip)   # 0x201b580
movl 0x1264d(%rip), %eax     # 0x1556c
andl $-0x2, %eax
cmpl $0x10, %eax
jne 0x2fa5
leaq 0x20abcfa(%rip), %rcx   # 0x20aec28
movq 0x10(%rcx), %rax
movq %rax, 0x90(%rsp)
movups (%rcx), %xmm0
movaps %xmm0, 0x80(%rsp)
leaq 0xb0(%rsp), %rbx
movq %rbx, %rdi
callq 0x6c64
leaq 0x80(%rsp), %r12
movq %r12, %rdi
leaq 0x5c82(%rip), %rsi      # 0x8be9
movq %rax, %rdx
xorl %eax, %eax
callq 0x71e6
movq %rbx, %rdi
callq 0x6c64
movq %r12, %rdi
leaq 0x5c83(%rip), %rsi      # 0x8c06
movq %rax, %rdx
xorl %eax, %eax
callq 0x71e6
pushq $0x1
popq %rdi
movq %r12, %rsi
callq 0x3f62
movq 0x80(%rsp), %rdi
callq 0x2030
cmpb $0x1, 0xa3dc(%rip)      # 0xd388
movq 0x30(%rsp), %r12
jne 0x2fc2
leaq 0x20185ae(%rip), %rdi   # 0x201b568
movq %r14, %rsi
callq 0x62e5
incq %r15
movq %r12, %rax
notq %rax
movq 0x8030(%r13), %rdx
addq %rdx, %rax
movq %rax, 0x8030(%r13)
subq %r12, %rdx
movq %r14, %rdi
movq %r15, %rsi
callq 0x22a0
jmp 0x25ff
leaq 0x5b60(%rip), %rdi      # 0x8b56
movq %rbx, %rsi
xorl %eax, %eax
callq 0x6d78
movl 0x50(%rsp), %ebp
movq 0x58(%rsp), %r13
jmp 0x27cc
addq $0xf8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl %ebp, %edi
addq $0xf8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3e5c