// File: /workspace/github_cpp_makefile_star2_O2/mortrevere[P]ninjat/main.cpp
// Function: clientCare(int, std::vector<int, std::allocator<int>>&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>&)
int clientCare(int csock, std::vector<int>& clients, std::vector<std::string>& nicks) {
  char buffer[65535];
  std::string in, nick, lastPrivate, to, password;
  int error = 0, attempt = 0;
  bool authenticated = !PRIVATE;
  info("Taken care of client !");
  if(csock != INVALID_SOCKET) {

    if(fileExists(MOTD_PATH)) {
      std::string motd = "\n" + fileRead(MOTD_PATH);
      size_t pos = 0;
      while((pos = motd.find("\n", pos)) != std::string::npos) {
        motd.replace(pos, 1, "\n\t\t\t\t\t\t");
        pos += 7;
      }
      s(motd + "\n", csock);
    }

    while(1) {
      info("Waiting for data ...");
      error = recv(csock,buffer,65535,0);
      if (error <= 0) {
        info("Peer disconnected.");
        clientCleanup(csock, clients, nicks);
        return 0;
      }
      else {
        buffer[error] = '\0';
        in = buffer;

        if(in.substr(0,5) == "/quit")
        {
          clientCleanup(csock, clients, nicks);
          return 0;
        }

        if(!authenticated) {
          if(in.substr(0,6) == "/auth ") {
            password = in.substr(6);
            password = password.substr(0,password.length() - 1);
            if(password == PASSWORD) {
              authenticated = true;
              s("OK. Use /nick to get a nickname and talk now.\n", csock);
            } else {
              attempt++;
              s("WRONG PASSWORD. (" + std::to_string(attempt) + "/" + std::to_string(MAX_ATTEMPT)  + ")\n", csock);
              if(attempt == MAX_ATTEMPT) {
                clientCleanup(csock, clients, nicks, false);
                return 0;
              }
            }
          } else {
            s("THIS SERVER IS PASSWORD-PROTECTED : use /auth <pw> to log in\n", csock);
          }
        } else {
          if(in.substr(0,6) == "/nick ") {
            nick = in.substr(6);
            nick = nick.substr(0,nick.length() - 1);
            if(nick.length() > 16) {
              s(" *** [ERROR] : Nicknames are 16-char-long at most.\n", csock);
            } else {
              setNick(csock,clients,nicks,nick);
              sAll(" *** [INFO] changed nick to : <" + nick + ">\n", clients);
              s(buildList(nicks) + "\n", csock);
            }
          }
          else if(in.substr(0,5) == "/list") {
            s(buildList(nicks) + "\n", csock);
          }
          else if(in.substr(0,3) == "/p ") {
            to = in.substr(3,in.substr(3).find(" "));

            if(to == ".") {
              if(lastPrivate != "") {
                s(" *** [PRIVATE] " + nick + " : " + in.substr(4 + in.substr(3).find(" ")), clients[getIndexByNick(lastPrivate, nicks)]);
                s(" >>> [PRIVATE] " + nick + " : " + in.substr(4 + in.substr(3).find(" ")), csock);
              }
              else {
                s(" >>> [PRIVATE] [ERR] SERVER : How can you use /p . <message> if you haven't spoke to anyone before ?\n", csock);
              }
            }
            else {
              if(to != nick) {
                if(getIndexByNick(to, nicks) != -1) {
                  lastPrivate = to;
                  s(" *** [PRIVATE] " + nick + " : " + in.substr(4 + in.substr(3).find(" ")), clients[getIndexByNick(to, nicks)]);
                  s(" >>> [PRIVATE] " + nick + " : " + in.substr(4 + in.substr(3).find(" ")), csock);
                }
                else {
                  s(" >>> [PRIVATE] [ERR] SERVER : It seems like " + to + " is not connected. Sorry.\n", csock);
                }
              }
              else {
                s(" >>> [PRIVATE] [ERR] SERVER : DO NOT TALK TO YOURSELF.\n", csock);
              }
            }
          }
          else if(in != "\n") {
            if(nick != "")
              sAll("<" + nick + "> " + in, clients);
            else
              s(" *** [ERROR] : Please identify first, using /nick <nickname>\n", csock);
          }
        }
        std::cout << " *** [RECV] : " << in;
      }
    }
  }
  return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x10338, %rsp          # imm = 0x10338
movq %rdx, 0x40(%rsp)
leaq 0x80(%rsp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movq %rsi, 0x48(%rsp)
movl %edi, %ebp
xorl %ecx, %ecx
leaq 0xc0(%rsp), %rdx
movq %rdx, -0x10(%rdx)
andq $0x0, -0x8(%rdx)
movb %cl, (%rax)
movb %cl, (%rdx)
leaq 0x100(%rsp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
leaq 0xe0(%rsp), %rdx
movq %rdx, -0x10(%rdx)
andq $0x0, -0x8(%rdx)
movb %cl, (%rax)
movb %cl, (%rdx)
leaq 0x300(%rsp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb %cl, (%rax)
leaq 0x23f4(%rip), %rsi      # 0x507d
movq %rsp, %rdi
leaq 0x20(%rsp), %rdx
callq 0x40c8
movq %rsp, %rdi
callq 0x2577
movq %rsp, %rdi
callq 0x2100
cmpl $-0x1, %ebp
je 0x3721
leaq 0x23de(%rip), %rsi      # 0x5094
movq %rsp, %rdi
leaq 0x20(%rsp), %rdx
callq 0x40c8
movq %rsp, %rdi
callq 0x26ec
movl %eax, %ebx
movq %rsp, %rdi
callq 0x2100
testb %bl, %bl
je 0x2db0
leaq 0x23b0(%rip), %rsi      # 0x5094
leaq 0x50(%rsp), %rdi
leaq 0x90(%rsp), %rdx
callq 0x40c8
leaq 0x20(%rsp), %rdi
leaq 0x50(%rsp), %rsi
callq 0x25cd
leaq 0x2674(%rip), %rsi      # 0x5380
movq %rsp, %rdi
leaq 0x20(%rsp), %rdx
callq 0x4228
leaq 0x20(%rsp), %rdi
callq 0x2100
leaq 0x50(%rsp), %rdi
callq 0x2100
xorl %r13d, %r13d
leaq 0x2649(%rip), %r15      # 0x5380
movq %rsp, %r12
leaq 0x235a(%rip), %r14      # 0x509b
pushq $0x1
popq %rbx
movq %r12, %rdi
movq %r15, %rsi
movq %r13, %rdx
callq 0x23c0
cmpq $-0x1, %rax
je 0x2d72
movq %rax, %r13
movq %r12, %rdi
movq %rax, %rsi
movq %rbx, %rdx
movq %r14, %rcx
callq 0x2160
addq $0x7, %r13
jmp 0x2d44
leaq 0x2607(%rip), %rdx      # 0x5380
leaq 0x2d0(%rsp), %rdi
movq %rsp, %rsi
callq 0x42bf
leaq 0x2d0(%rsp), %rdi
pushq $0x1
popq %rdx
movl %ebp, %esi
callq 0x280c
leaq 0x2d0(%rsp), %rdi
callq 0x2100
movq %rsp, %rdi
callq 0x2100
leaq 0x22ec(%rip), %rsi      # 0x50a3
movq %rsp, %rdi
leaq 0x20(%rsp), %rdx
callq 0x40c8
movq %rsp, %rdi
callq 0x2577
movq %rsp, %rdi
callq 0x2100
leaq 0x330(%rsp), %rsi
movl $0xffff, %edx           # imm = 0xFFFF
movl %ebp, %edi
xorl %ecx, %ecx
callq 0x20b0
testl %eax, %eax
jle 0x36e9
andl $0x7fffffff, %eax       # imm = 0x7FFFFFFF
movb $0x0, 0x330(%rsp,%rax)
leaq 0x70(%rsp), %rdi
leaq 0x330(%rsp), %rsi
callq 0x2390
movq %rsp, %rdi
leaq 0x70(%rsp), %rsi
pushq $0x5
popq %rcx
xorl %edx, %edx
callq 0x2220
leaq 0x22a1(%rip), %rsi      # 0x50cb
movq %rsp, %rbx
movq %rbx, %rdi
callq 0x42f7
movl %eax, %r14d
movq %rbx, %rdi
callq 0x2100
testb %r14b, %r14b
jne 0x370d
movq %rsp, %rdi
leaq 0x70(%rsp), %rsi
pushq $0x6
popq %rcx
xorl %edx, %edx
callq 0x2220
leaq 0x226f(%rip), %rsi      # 0x50d1
movq %rsp, %rbx
movq %rbx, %rdi
callq 0x42f7
movl %eax, %r14d
movq %rbx, %rdi
callq 0x2100
testb %r14b, %r14b
je 0x2f25
movq %rsp, %rdi
leaq 0x70(%rsp), %rsi
pushq $0x6
popq %rdx
pushq $-0x1
popq %rcx
callq 0x2220
leaq 0xb0(%rsp), %rbx
movq %rsp, %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2260
movq %r14, %rdi
callq 0x2100
movq 0x8(%rbx), %rcx
decq %rcx
movq %rsp, %rdi
movq %rbx, %rsi
xorl %edx, %edx
callq 0x2220
leaq 0xb0(%rsp), %rbx
movq %rsp, %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2260
movq %r14, %rdi
callq 0x2100
cmpq $0x11, 0x8(%rbx)
jb 0x321c
leaq 0x21e2(%rip), %rsi      # 0x50d8
leaq 0x2b0(%rsp), %rdi
movq %rsp, %rdx
callq 0x40c8
leaq 0x2b0(%rsp), %rdi
pushq $0x1
popq %rdx
movl %ebp, %esi
callq 0x280c
leaq 0x2b0(%rsp), %rdi
jmp 0x32e9
movq %rsp, %rdi
leaq 0x70(%rsp), %rsi
pushq $0x5
popq %rcx
xorl %edx, %edx
callq 0x2220
leaq 0x21ee(%rip), %rsi      # 0x512c
movq %rsp, %rbx
movq %rbx, %rdi
callq 0x42f7
movl %eax, %r14d
movq %rbx, %rdi
callq 0x2100
testb %r14b, %r14b
je 0x2f9c
movq %rsp, %rdi
movq 0x40(%rsp), %rsi
callq 0x2907
leaq 0x2413(%rip), %rdx      # 0x5380
leaq 0x250(%rsp), %rdi
movq %rsp, %rsi
callq 0x41c7
leaq 0x250(%rsp), %rdi
pushq $0x1
popq %rdx
movl %ebp, %esi
callq 0x280c
leaq 0x250(%rsp), %rdi
jmp 0x32e1
movq %rsp, %rdi
leaq 0x70(%rsp), %rsi
pushq $0x3
popq %rcx
xorl %edx, %edx
callq 0x2220
leaq 0x217d(%rip), %rsi      # 0x5132
movq %rsp, %rbx
movq %rbx, %rdi
callq 0x42f7
movl %eax, %r14d
movq %rbx, %rdi
callq 0x2100
testb %r14b, %r14b
je 0x3313
leaq 0x20(%rsp), %rdi
leaq 0x70(%rsp), %rsi
pushq $0x3
popq %rdx
pushq $-0x1
popq %rcx
callq 0x2220
leaq 0x2061(%rip), %rsi      # 0x5051
leaq 0x20(%rsp), %rdi
xorl %edx, %edx
callq 0x23c0
movq %rsp, %rdi
leaq 0x70(%rsp), %rsi
pushq $0x3
popq %rdx
movq %rax, %rcx
callq 0x2220
leaq 0xd0(%rsp), %rbx
movq %rsp, %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x2260
movq %r14, %rdi
callq 0x2100
leaq 0x20(%rsp), %rdi
callq 0x2100
leaq 0x2078(%rip), %rsi      # 0x50b6
movq %rbx, %rdi
callq 0x42f7
testb %al, %al
je 0x33ae
leaq 0x204d(%rip), %rsi      # 0x50a2
leaq 0xf0(%rsp), %rdi
callq 0x42b5
testb %al, %al
je 0x3666
leaq 0x20c5(%rip), %rsi      # 0x5136
leaq 0x20(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
callq 0x4151
leaq 0x1fc5(%rip), %rdx      # 0x504f
movq %rsp, %rdi
leaq 0x20(%rsp), %rsi
callq 0x41c7
leaq 0x90(%rsp), %rdi
leaq 0x70(%rsp), %rsi
pushq $0x3
popq %rdx
pushq $-0x1
popq %rcx
callq 0x2220
leaq 0x1f9b(%rip), %rsi      # 0x5051
leaq 0x90(%rsp), %rdi
xorl %edx, %edx
callq 0x23c0
leaq 0x4(%rax), %rdx
leaq 0x50(%rsp), %rdi
leaq 0x70(%rsp), %rsi
pushq $-0x1
popq %rcx
callq 0x2220
leaq 0x230(%rsp), %rdi
movq %rsp, %rsi
leaq 0x50(%rsp), %rdx
callq 0x4304
leaq 0x210(%rsp), %rdi
leaq 0xf0(%rsp), %rsi
callq 0x2280
leaq 0x210(%rsp), %rdi
movq 0x40(%rsp), %rsi
callq 0x2a91
cltq
movq 0x48(%rsp), %rcx
movq (%rcx), %rcx
movl (%rcx,%rax,4), %esi
leaq 0x230(%rsp), %rdi
pushq $0x1
popq %rdx
callq 0x280c
leaq 0x210(%rsp), %rdi
callq 0x2100
leaq 0x230(%rsp), %rdi
callq 0x2100
leaq 0x50(%rsp), %rdi
callq 0x2100
leaq 0x90(%rsp), %rdi
callq 0x2100
movq %rsp, %rdi
callq 0x2100
leaq 0x20(%rsp), %rdi
callq 0x2100
leaq 0x1fc8(%rip), %rsi      # 0x5146
leaq 0x20(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
callq 0x4151
leaq 0x1eb8(%rip), %rdx      # 0x504f
movq %rsp, %rdi
leaq 0x20(%rsp), %rsi
callq 0x41c7
leaq 0x90(%rsp), %rdi
leaq 0x70(%rsp), %rsi
pushq $0x3
popq %rdx
pushq $-0x1
popq %rcx
callq 0x2220
leaq 0x1e8e(%rip), %rsi      # 0x5051
leaq 0x90(%rsp), %rdi
xorl %edx, %edx
callq 0x23c0
leaq 0x4(%rax), %rdx
leaq 0x50(%rsp), %rdi
leaq 0x70(%rsp), %rsi
pushq $-0x1
popq %rcx
callq 0x2220
leaq 0x1f0(%rsp), %rdi
movq %rsp, %rsi
leaq 0x50(%rsp), %rdx
callq 0x4304
leaq 0x1f0(%rsp), %rdi
pushq $0x1
popq %rdx
movl %ebp, %esi
callq 0x280c
leaq 0x1f0(%rsp), %rdi
jmp 0x35cc
leaq 0x290(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
callq 0x2280
leaq 0x290(%rsp), %rcx
movl %ebp, %edi
movq 0x48(%rsp), %rsi
movq 0x40(%rsp), %rdx
callq 0x2a26
leaq 0x290(%rsp), %rdi
callq 0x2100
leaq 0x1eae(%rip), %rsi      # 0x510c
leaq 0x20(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
callq 0x4151
leaq 0x2003(%rip), %rdx      # 0x527a
movq %rsp, %rdi
leaq 0x20(%rsp), %rsi
callq 0x41c7
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
callq 0x286d
movq %rsp, %rdi
callq 0x2100
leaq 0x20(%rsp), %rdi
callq 0x2100
movq %rsp, %rdi
movq 0x40(%rsp), %rsi
callq 0x2907
leaq 0x20c9(%rip), %rdx      # 0x5380
leaq 0x270(%rsp), %rdi
movq %rsp, %rsi
callq 0x41c7
leaq 0x270(%rsp), %rdi
pushq $0x1
popq %rdx
movl %ebp, %esi
callq 0x280c
leaq 0x270(%rsp), %rdi
callq 0x2100
movq %rsp, %rdi
callq 0x2100
movq 0x4ce3(%rip), %rdi      # 0x7fd8
leaq 0x1f81(%rip), %rsi      # 0x527d
callq 0x21f0
leaq 0x70(%rsp), %rsi
movq %rax, %rdi
callq 0x21d0
jmp 0x2db0
leaq 0x2066(%rip), %rsi      # 0x5380
leaq 0x70(%rsp), %rdi
callq 0x42b5
testb %al, %al
je 0x32ee
leaq 0x1d73(%rip), %rsi      # 0x50a2
leaq 0xb0(%rsp), %rdi
callq 0x42b5
testb %al, %al
je 0x35fa
leaq 0x1ddf(%rip), %rsi      # 0x512a
leaq 0x50(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
callq 0x4151
leaq 0x1ed8(%rip), %rdx      # 0x523c
leaq 0x20(%rsp), %rdi
leaq 0x50(%rsp), %rsi
callq 0x41c7
movq %rsp, %rdi
leaq 0x20(%rsp), %rsi
leaq 0x70(%rsp), %rdx
callq 0x43ce
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
callq 0x286d
movq %rsp, %rdi
callq 0x2100
leaq 0x20(%rsp), %rdi
callq 0x2100
leaq 0x50(%rsp), %rdi
jmp 0x32e9
leaq 0xd0(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
callq 0x43c4
testb %al, %al
je 0x3630
leaq 0x310(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
callq 0x2280
leaq 0x310(%rsp), %rbx
movq %rbx, %rdi
movq 0x40(%rsp), %rsi
callq 0x2a91
movl %eax, %r14d
movq %rbx, %rdi
callq 0x2100
cmpl $-0x1, %r14d
je 0x369c
leaq 0xf0(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
callq 0x2150
leaq 0x1d10(%rip), %rsi      # 0x5136
leaq 0x20(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
callq 0x4151
leaq 0x1c10(%rip), %rdx      # 0x504f
movq %rsp, %rdi
leaq 0x20(%rsp), %rsi
callq 0x41c7
leaq 0x90(%rsp), %rdi
leaq 0x70(%rsp), %rsi
pushq $0x3
popq %rdx
pushq $-0x1
popq %rcx
callq 0x2220
leaq 0x1be6(%rip), %rsi      # 0x5051
leaq 0x90(%rsp), %rdi
xorl %edx, %edx
callq 0x23c0
leaq 0x4(%rax), %rdx
leaq 0x50(%rsp), %rdi
leaq 0x70(%rsp), %rsi
pushq $-0x1
popq %rcx
callq 0x2220
leaq 0x1b0(%rsp), %rdi
movq %rsp, %rsi
leaq 0x50(%rsp), %rdx
callq 0x4304
leaq 0x190(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
callq 0x2280
leaq 0x190(%rsp), %rdi
movq 0x40(%rsp), %rsi
callq 0x2a91
cltq
movq 0x48(%rsp), %rcx
movq (%rcx), %rcx
movl (%rcx,%rax,4), %esi
leaq 0x1b0(%rsp), %rdi
pushq $0x1
popq %rdx
callq 0x280c
leaq 0x190(%rsp), %rdi
callq 0x2100
leaq 0x1b0(%rsp), %rdi
callq 0x2100
leaq 0x50(%rsp), %rdi
callq 0x2100
leaq 0x90(%rsp), %rdi
callq 0x2100
movq %rsp, %rdi
callq 0x2100
leaq 0x20(%rsp), %rdi
callq 0x2100
leaq 0x1c13(%rip), %rsi      # 0x5146
leaq 0x20(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
callq 0x4151
leaq 0x1b03(%rip), %rdx      # 0x504f
movq %rsp, %rdi
leaq 0x20(%rsp), %rsi
callq 0x41c7
leaq 0x90(%rsp), %rdi
leaq 0x70(%rsp), %rsi
pushq $0x3
popq %rdx
pushq $-0x1
popq %rcx
callq 0x2220
leaq 0x1ad9(%rip), %rsi      # 0x5051
leaq 0x90(%rsp), %rdi
xorl %edx, %edx
callq 0x23c0
leaq 0x4(%rax), %rdx
leaq 0x50(%rsp), %rdi
leaq 0x70(%rsp), %rsi
pushq $-0x1
popq %rcx
callq 0x2220
leaq 0x170(%rsp), %rdi
movq %rsp, %rsi
leaq 0x50(%rsp), %rdx
callq 0x4304
leaq 0x170(%rsp), %rdi
pushq $0x1
popq %rdx
movl %ebp, %esi
callq 0x280c
leaq 0x170(%rsp), %rdi
callq 0x2100
leaq 0x50(%rsp), %rdi
callq 0x2100
leaq 0x90(%rsp), %rdi
callq 0x2100
movq %rsp, %rdi
callq 0x2100
leaq 0x20(%rsp), %rdi
jmp 0x32e9
leaq 0x1c3e(%rip), %rsi      # 0x523f
leaq 0x110(%rsp), %rdi
movq %rsp, %rdx
callq 0x40c8
leaq 0x110(%rsp), %rdi
pushq $0x1
popq %rdx
movl %ebp, %esi
callq 0x280c
leaq 0x110(%rsp), %rdi
jmp 0x32e9
leaq 0x1bcd(%rip), %rsi      # 0x5204
leaq 0x130(%rsp), %rdi
movq %rsp, %rdx
callq 0x40c8
leaq 0x130(%rsp), %rdi
pushq $0x1
popq %rdx
movl %ebp, %esi
callq 0x280c
leaq 0x130(%rsp), %rdi
jmp 0x32e9
leaq 0x1ae9(%rip), %rsi      # 0x5156
leaq 0x1d0(%rsp), %rdi
movq %rsp, %rdx
callq 0x40c8
leaq 0x1d0(%rsp), %rdi
pushq $0x1
popq %rdx
movl %ebp, %esi
callq 0x280c
leaq 0x1d0(%rsp), %rdi
jmp 0x32e9
leaq 0x1b19(%rip), %rsi      # 0x51bc
movq %rsp, %rdi
leaq 0xd0(%rsp), %rdx
callq 0x4151
leaq 0x1b2f(%rip), %rdx      # 0x51e9
leaq 0x150(%rsp), %rdi
movq %rsp, %rsi
callq 0x41c7
leaq 0x150(%rsp), %rdi
pushq $0x1
popq %rdx
movl %ebp, %esi
callq 0x280c
leaq 0x150(%rsp), %rdi
jmp 0x32e1
leaq 0x19c8(%rip), %rsi      # 0x50b8
movq %rsp, %rdi
leaq 0x20(%rsp), %rdx
callq 0x40c8
movq %rsp, %rdi
callq 0x2577
movq %rsp, %rdi
callq 0x2100
pushq $0x1
popq %rcx
movl %ebp, %edi
movq 0x48(%rsp), %rsi
movq 0x40(%rsp), %rdx
callq 0x2ae3
leaq 0x2f0(%rsp), %rdi
callq 0x2100
leaq 0xd0(%rsp), %rdi
callq 0x2100
leaq 0xf0(%rsp), %rdi
callq 0x2100
leaq 0xb0(%rsp), %rdi
callq 0x2100
leaq 0x70(%rsp), %rdi
callq 0x2100
xorl %eax, %eax
addq $0x10338, %rsp          # imm = 0x10338
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq 0x150(%rsp), %rdi
jmp 0x394c
jmp 0x3974
jmp 0x3981
movq %rax, %rbx
leaq 0x170(%rsp), %rdi
jmp 0x3825
jmp 0x382c
jmp 0x383b
jmp 0x391b
jmp 0x3928
jmp 0x3981
movq %rax, %rbx
leaq 0x190(%rsp), %rdi
callq 0x2100
jmp 0x37cb
movq %rax, %rbx
leaq 0x1b0(%rsp), %rdi
jmp 0x3825
jmp 0x382c
jmp 0x383b
jmp 0x391b
jmp 0x3928
jmp 0x3981
movq %rax, %rbx
leaq 0x1f0(%rsp), %rdi
jmp 0x3825
jmp 0x382c
jmp 0x383b
jmp 0x391b
jmp 0x3928
jmp 0x3981
movq %rax, %rbx
leaq 0x210(%rsp), %rdi
callq 0x2100
jmp 0x381d
movq %rax, %rbx
leaq 0x230(%rsp), %rdi
callq 0x2100
jmp 0x382f
movq %rax, %rbx
leaq 0x50(%rsp), %rdi
callq 0x2100
jmp 0x383e
movq %rax, %rbx
leaq 0x90(%rsp), %rdi
callq 0x2100
jmp 0x391e
jmp 0x391b
jmp 0x3928
jmp 0x3981
movq %rax, %rbx
leaq 0x1d0(%rsp), %rdi
jmp 0x397a
jmp 0x3981
movq %rax, %rbx
leaq 0x130(%rsp), %rdi
jmp 0x397a
jmp 0x3981
movq %rax, %rbx
movq %rsp, %rdi
callq 0x2100
jmp 0x38cc
jmp 0x38c9
jmp 0x38d8
jmp 0x3981
movq %rax, %rbx
leaq 0x110(%rsp), %rdi
jmp 0x397a
jmp 0x3981
movq %rax, %rbx
leaq 0x2d0(%rsp), %rdi
jmp 0x394c
jmp 0x3974
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
callq 0x2100
jmp 0x38db
movq %rax, %rbx
leaq 0x50(%rsp), %rdi
jmp 0x397a
jmp 0x3981
jmp 0x3974
jmp 0x3981
jmp 0x3981
jmp 0x3974
jmp 0x3981
jmp 0x3974
jmp 0x3981
jmp 0x3928
jmp 0x3981
jmp 0x3981
movq %rax, %rbx
leaq 0x270(%rsp), %rdi
jmp 0x394c
jmp 0x3974
jmp 0x3981
movq %rax, %rbx
movq %rsp, %rdi
callq 0x2100
jmp 0x392b
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
jmp 0x397a
jmp 0x3981
movq %rax, %rbx
leaq 0x290(%rsp), %rdi
jmp 0x397a
movq %rax, %rbx
leaq 0x250(%rsp), %rdi
callq 0x2100
jmp 0x3977
jmp 0x3974
jmp 0x3981
jmp 0x3981
movq %rax, %rbx
leaq 0x2b0(%rsp), %rdi
jmp 0x397a
jmp 0x3981
jmp 0x3981
jmp 0x3981
jmp 0x3981
jmp 0x3974
jmp 0x3981
jmp 0x3981
movq %rax, %rbx
movq %rsp, %rdi
callq 0x2100
jmp 0x3984
movq %rax, %rbx
leaq 0x2f0(%rsp), %rdi
callq 0x2100
leaq 0xd0(%rsp), %rdi
callq 0x2100
leaq 0xf0(%rsp), %rdi
callq 0x2100
leaq 0xb0(%rsp), %rdi
callq 0x2100
leaq 0x70(%rsp), %rdi
callq 0x2100
movq %rbx, %rdi
callq 0x2340