// File: boomanaiden154[P]HTTPClientHPP/./client.hpp
// Function: HTTPHeader::parse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void parse(std::string input)
    {
        if(parsingHeader)
        {
            buffer += input;
            if(bufferIndex == 0)
            {
                while(buffer[bufferIndex] != ' ')
                {
                    headerField1 += buffer[bufferIndex];
                    bufferIndex++;
                }
                bufferIndex++;
                while(buffer[bufferIndex] != ' ')
                {
                    headerField2 += buffer[bufferIndex];
                    bufferIndex++;
                }
                bufferIndex++;
                while(buffer[bufferIndex] != '\r')
                {
                    headerField3 += buffer[bufferIndex];
                    bufferIndex++;
                }
                bufferIndex += 2;
            }
            while(buffer[bufferIndex] != '\r' && buffer[bufferIndex + 1] != '\n' && bufferIndex < buffer.size())
            {
                if(parsingFieldName)
                {
                    while(buffer[bufferIndex] != ':' && buffer[bufferIndex + 1] != ' ' && bufferIndex < buffer.size())
                    {
                        fieldName += buffer[bufferIndex];
                        bufferIndex++;
                    }
                    bufferIndex += 2;
                    parsingFieldName = false;
                }
                else
                {
                    //for some sites that send extra spaces preceding values in the header
                    //not sure if this is compliant with the HTTP specification, but here it is
                    while(buffer[bufferIndex] == ' ')
                    {
                        bufferIndex++;
                    }
                    while(buffer[bufferIndex] != '\r' && buffer[bufferIndex + 1] != '\n' && bufferIndex < buffer.size())
                    {
                        fieldValue += buffer[bufferIndex];
                        bufferIndex++;
                    }
                    bufferIndex += 2;
                    std::transform(fieldName.begin(), fieldName.end(), fieldName.begin(), [](unsigned char c){ return std::tolower(c); });
                    std::transform(fieldValue.begin(), fieldValue.end(), fieldValue.begin(), [](unsigned char c){ return std::tolower(c); });
                    headers.insert(std::pair<std::string,std::string>(fieldName,fieldValue));
                    fieldName.clear();
                    fieldValue.clear();
                    parsingFieldName = true;
                }
            }
            if(buffer[bufferIndex - 2] == '\r' && buffer[bufferIndex - 1] == '\n' && buffer[bufferIndex] == '\r' && buffer[bufferIndex + 1] == '\n')
            {
                bufferIndex += 2; //for final \r\n
                parseData(buffer.substr(bufferIndex, buffer.size() - bufferIndex));
                parsingHeader = false;
                if(headers.find("content-length") != headers.end() && std::stoi(headers.find("content-length")->second) <= body.size())
                {
                    isDone = true;
                }
            }
        }
        else
        {
            parseData(input);
            if(headers.find("content-length") != headers.end() && std::stoi(headers.find("content-length")->second) == body.size())
            {
                isDone = true;
            }
        }
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x2c0, %rsp            # imm = 0x2C0
movq %rsi, -0x1b8(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x1b0(%rbp)
testb $0x1, 0x121(%rax)
je 0x5bb9
movq -0x1b0(%rbp), %rdi
movq -0x1b8(%rbp), %rsi
addq $0xb8, %rdi
callq 0x3380
movq -0x1b0(%rbp), %rax
cmpl $0x0, 0xd8(%rax)
jne 0x5341
jmp 0x51b2
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movsbl (%rax), %eax
cmpl $0x20, %eax
je 0x5221
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movq -0x1b0(%rbp), %rdi
movb (%rax), %al
addq $0x38, %rdi
movsbl %al, %esi
callq 0x31b0
movq -0x1b0(%rbp), %rax
movl 0xd8(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0xd8(%rax)
jmp 0x51b2
movq -0x1b0(%rbp), %rax
movl 0xd8(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0xd8(%rax)
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movsbl (%rax), %eax
cmpl $0x20, %eax
je 0x52a6
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movq -0x1b0(%rbp), %rdi
movb (%rax), %al
addq $0x58, %rdi
movsbl %al, %esi
callq 0x31b0
movq -0x1b0(%rbp), %rax
movl 0xd8(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0xd8(%rax)
jmp 0x5237
movq -0x1b0(%rbp), %rax
movl 0xd8(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0xd8(%rax)
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movsbl (%rax), %eax
cmpl $0xd, %eax
je 0x532b
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movq -0x1b0(%rbp), %rdi
movb (%rax), %al
addq $0x78, %rdi
movsbl %al, %esi
callq 0x31b0
movq -0x1b0(%rbp), %rax
movl 0xd8(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0xd8(%rax)
jmp 0x52bc
movq -0x1b0(%rbp), %rax
movl 0xd8(%rax), %ecx
addl $0x2, %ecx
movl %ecx, 0xd8(%rax)
jmp 0x5343
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movsbl (%rax), %ecx
xorl %eax, %eax
cmpl $0xd, %ecx
movb %al, -0x1b9(%rbp)
je 0x53d9
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movl 0xd8(%rax), %eax
addl $0x1, %eax
movslq %eax, %rsi
callq 0x34d0
movsbl (%rax), %ecx
xorl %eax, %eax
cmpl $0xa, %ecx
movb %al, -0x1b9(%rbp)
je 0x53d9
movq -0x1b0(%rbp), %rdi
movslq 0xd8(%rdi), %rax
movq %rax, -0x1c8(%rbp)
addq $0xb8, %rdi
callq 0x31e0
movq %rax, %rcx
movq -0x1c8(%rbp), %rax
cmpq %rcx, %rax
setb %al
movb %al, -0x1b9(%rbp)
movb -0x1b9(%rbp), %al
testb $0x1, %al
jne 0x53e8
jmp 0x57af
movq -0x1b0(%rbp), %rax
testb $0x1, 0x120(%rax)
je 0x5512
jmp 0x53fe
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movsbl (%rax), %ecx
xorl %eax, %eax
cmpl $0x3a, %ecx
movb %al, -0x1c9(%rbp)
je 0x5494
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movl 0xd8(%rax), %eax
addl $0x1, %eax
movslq %eax, %rsi
callq 0x34d0
movsbl (%rax), %ecx
xorl %eax, %eax
cmpl $0x20, %ecx
movb %al, -0x1c9(%rbp)
je 0x5494
movq -0x1b0(%rbp), %rdi
movslq 0xd8(%rdi), %rax
movq %rax, -0x1d8(%rbp)
addq $0xb8, %rdi
callq 0x31e0
movq %rax, %rcx
movq -0x1d8(%rbp), %rax
cmpq %rcx, %rax
setb %al
movb %al, -0x1c9(%rbp)
movb -0x1c9(%rbp), %al
testb $0x1, %al
jne 0x54a0
jmp 0x54f0
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movq -0x1b0(%rbp), %rdi
movb (%rax), %al
addq $0xe0, %rdi
movsbl %al, %esi
callq 0x31b0
movq -0x1b0(%rbp), %rax
movl 0xd8(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0xd8(%rax)
jmp 0x53fe
movq -0x1b0(%rbp), %rax
movl 0xd8(%rax), %ecx
addl $0x2, %ecx
movl %ecx, 0xd8(%rax)
movb $0x0, 0x120(%rax)
jmp 0x57aa
jmp 0x5514
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movsbl (%rax), %eax
cmpl $0x20, %eax
jne 0x5551
movq -0x1b0(%rbp), %rax
movl 0xd8(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0xd8(%rax)
jmp 0x5514
jmp 0x5553
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movsbl (%rax), %ecx
xorl %eax, %eax
cmpl $0xd, %ecx
movb %al, -0x1d9(%rbp)
je 0x55e9
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movl 0xd8(%rax), %eax
addl $0x1, %eax
movslq %eax, %rsi
callq 0x34d0
movsbl (%rax), %ecx
xorl %eax, %eax
cmpl $0xa, %ecx
movb %al, -0x1d9(%rbp)
je 0x55e9
movq -0x1b0(%rbp), %rdi
movslq 0xd8(%rdi), %rax
movq %rax, -0x1e8(%rbp)
addq $0xb8, %rdi
callq 0x31e0
movq %rax, %rcx
movq -0x1e8(%rbp), %rax
cmpq %rcx, %rax
setb %al
movb %al, -0x1d9(%rbp)
movb -0x1d9(%rbp), %al
testb $0x1, %al
jne 0x55f5
jmp 0x5645
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movq -0x1b0(%rbp), %rdi
movb (%rax), %al
addq $0x100, %rdi            # imm = 0x100
movsbl %al, %esi
callq 0x31b0
movq -0x1b0(%rbp), %rax
movl 0xd8(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0xd8(%rax)
jmp 0x5553
movq -0x1b0(%rbp), %rdi
movl 0xd8(%rdi), %eax
addl $0x2, %eax
movl %eax, 0xd8(%rdi)
addq $0xe0, %rdi
movq %rdi, -0x208(%rbp)
callq 0x3240
movq -0x208(%rbp), %rdi
movq %rax, -0x18(%rbp)
callq 0x3160
movq -0x208(%rbp), %rdi
movq %rax, -0x20(%rbp)
callq 0x3240
movq %rax, -0x28(%rbp)
movq -0x18(%rbp), %rdi
movq -0x20(%rbp), %rsi
movq -0x28(%rbp), %rdx
callq 0x6e80
movq -0x1b0(%rbp), %rdi
movq %rax, -0x38(%rbp)
addq $0x100, %rdi            # imm = 0x100
movq %rdi, -0x200(%rbp)
callq 0x3240
movq -0x200(%rbp), %rdi
movq %rax, -0x40(%rbp)
callq 0x3160
movq -0x200(%rbp), %rdi
movq %rax, -0x48(%rbp)
callq 0x3240
movq %rax, -0x50(%rbp)
movq -0x40(%rbp), %rdi
movq -0x48(%rbp), %rsi
movq -0x50(%rbp), %rdx
callq 0x6f00
movq -0x208(%rbp), %rsi
movq -0x200(%rbp), %rdx
movq %rax, -0x60(%rbp)
leaq -0xa0(%rbp), %rdi
movq %rdi, -0x1f8(%rbp)
callq 0x6f80
movq -0x1b0(%rbp), %rdi
movq -0x1f8(%rbp), %rsi
callq 0x4910
movq %rax, -0x1f0(%rbp)
jmp 0x5737
movq -0x1f0(%rbp), %rax
movq %rax, -0xb8(%rbp)
leaq -0xa0(%rbp), %rdi
callq 0x49e0
movq -0x1b0(%rbp), %rdi
addq $0xe0, %rdi
callq 0x33a0
movq -0x1b0(%rbp), %rdi
addq $0x100, %rdi            # imm = 0x100
callq 0x33a0
movq -0x1b0(%rbp), %rax
movb $0x1, 0x120(%rax)
jmp 0x57aa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xa8(%rbp)
movl %eax, -0xac(%rbp)
leaq -0xa0(%rbp), %rdi
callq 0x49e0
jmp 0x5e6a
jmp 0x5343
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movl 0xd8(%rax), %eax
subl $0x2, %eax
movslq %eax, %rsi
callq 0x34d0
movsbl (%rax), %eax
cmpl $0xd, %eax
jne 0x5bb4
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movl 0xd8(%rax), %eax
subl $0x1, %eax
movslq %eax, %rsi
callq 0x34d0
movsbl (%rax), %eax
cmpl $0xa, %eax
jne 0x5bb4
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movslq 0xd8(%rax), %rsi
callq 0x34d0
movsbl (%rax), %eax
cmpl $0xd, %eax
jne 0x5bb4
movq -0x1b0(%rbp), %rax
movq %rax, %rdi
addq $0xb8, %rdi
movl 0xd8(%rax), %eax
addl $0x1, %eax
movslq %eax, %rsi
callq 0x34d0
movsbl (%rax), %eax
cmpl $0xa, %eax
jne 0x5bb4
movq -0x1b0(%rbp), %rax
movl 0xd8(%rax), %ecx
addl $0x2, %ecx
movl %ecx, 0xd8(%rax)
movq %rax, %rdi
addq $0xb8, %rdi
movq %rdi, -0x220(%rbp)
movslq 0xd8(%rax), %rax
movq %rax, -0x218(%rbp)
callq 0x31e0
movq -0x220(%rbp), %rsi
movq -0x218(%rbp), %rdx
movq %rax, %rcx
movq -0x1b0(%rbp), %rax
movslq 0xd8(%rax), %rax
subq %rax, %rcx
leaq -0xd8(%rbp), %rdi
movq %rdi, -0x210(%rbp)
callq 0x32d0
movq -0x1b0(%rbp), %rdi
movq -0x210(%rbp), %rsi
callq 0x6fe0
jmp 0x58e6
leaq -0xd8(%rbp), %rdi
callq 0x31a0
movq -0x1b0(%rbp), %rax
movb $0x0, 0x121(%rax)
movq %rax, -0x230(%rbp)
leaq -0x101(%rbp), %rdi
movq %rdi, -0x228(%rbp)
callq 0x3450
movq -0x228(%rbp), %rdx
movb $0x0, -0x13a(%rbp)
movb $0x0, -0x13b(%rbp)
leaq 0x371b(%rip), %rsi      # 0x9051
leaq -0x100(%rbp), %rdi
callq 0x41b0
jmp 0x5944
movq -0x230(%rbp), %rdi
leaq -0x100(%rbp), %rsi
callq 0x7230
movq %rax, -0x238(%rbp)
jmp 0x5960
movq -0x1b0(%rbp), %rdi
movq -0x238(%rbp), %rax
movq %rax, -0xe0(%rbp)
callq 0x4c50
movq %rax, -0x110(%rbp)
leaq -0xe0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x4c20
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x239(%rbp)
jne 0x59a8
jmp 0x5a7e
movq -0x1b0(%rbp), %rax
movq %rax, -0x250(%rbp)
leaq -0x139(%rbp), %rdi
movq %rdi, -0x248(%rbp)
callq 0x3450
movq -0x248(%rbp), %rdx
movb $0x1, -0x13a(%rbp)
leaq 0x3673(%rip), %rsi      # 0x9051
leaq -0x138(%rbp), %rdi
callq 0x41b0
jmp 0x59ec
movq -0x250(%rbp), %rdi
movb $0x1, -0x13b(%rbp)
leaq -0x138(%rbp), %rsi
callq 0x7230
movq %rax, -0x258(%rbp)
jmp 0x5a0f
movq -0x258(%rbp), %rax
movq %rax, -0x118(%rbp)
leaq -0x118(%rbp), %rdi
callq 0x4c80
movq %rax, %rdi
addq $0x20, %rdi
xorl %eax, %eax
movl %eax, %esi
movl $0xa, %edx
callq 0x5f00
movl %eax, -0x25c(%rbp)
jmp 0x5a46
movq -0x1b0(%rbp), %rdi
movl -0x25c(%rbp), %eax
cltq
movq %rax, -0x268(%rbp)
addq $0x98, %rdi
callq 0x31e0
movq %rax, %rcx
movq -0x268(%rbp), %rax
cmpq %rcx, %rax
setbe %al
movb %al, -0x239(%rbp)
movb -0x239(%rbp), %al
movb %al, -0x269(%rbp)
testb $0x1, -0x13b(%rbp)
jne 0x5a95
jmp 0x5aa1
leaq -0x138(%rbp), %rdi
callq 0x31a0
testb $0x1, -0x13a(%rbp)
jne 0x5aac
jmp 0x5ab8
leaq -0x139(%rbp), %rdi
callq 0x3300
leaq -0x100(%rbp), %rdi
callq 0x31a0
leaq -0x101(%rbp), %rdi
callq 0x3300
movb -0x269(%rbp), %al
testb $0x1, %al
jne 0x5adf
jmp 0x5bb2
movq -0x1b0(%rbp), %rax
movb $0x1, 0x122(%rax)
jmp 0x5bb2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xa8(%rbp)
movl %eax, -0xac(%rbp)
leaq -0xd8(%rbp), %rdi
callq 0x31a0
jmp 0x5e6a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xa8(%rbp)
movl %eax, -0xac(%rbp)
jmp 0x5ba1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xa8(%rbp)
movl %eax, -0xac(%rbp)
jmp 0x5b95
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xa8(%rbp)
movl %eax, -0xac(%rbp)
jmp 0x5b7c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xa8(%rbp)
movl %eax, -0xac(%rbp)
testb $0x1, -0x13b(%rbp)
jne 0x5b6e
jmp 0x5b7a
leaq -0x138(%rbp), %rdi
callq 0x31a0
jmp 0x5b7c
testb $0x1, -0x13a(%rbp)
jne 0x5b87
jmp 0x5b93
leaq -0x139(%rbp), %rdi
callq 0x3300
jmp 0x5b95
leaq -0x100(%rbp), %rdi
callq 0x31a0
leaq -0x101(%rbp), %rdi
callq 0x3300
jmp 0x5e6a
jmp 0x5bb4
jmp 0x5e61
movq -0x1b0(%rbp), %rdi
movq -0x1b8(%rbp), %rsi
callq 0x6fe0
movq -0x1b0(%rbp), %rax
movq %rax, -0x280(%rbp)
leaq -0x169(%rbp), %rdi
movq %rdi, -0x278(%rbp)
callq 0x3450
movq -0x278(%rbp), %rdx
movb $0x0, -0x1a2(%rbp)
movb $0x0, -0x1a3(%rbp)
leaq 0x3448(%rip), %rsi      # 0x9051
leaq -0x168(%rbp), %rdi
callq 0x41b0
jmp 0x5c17
movq -0x280(%rbp), %rdi
leaq -0x168(%rbp), %rsi
callq 0x7230
movq %rax, -0x288(%rbp)
jmp 0x5c33
movq -0x1b0(%rbp), %rdi
movq -0x288(%rbp), %rax
movq %rax, -0x148(%rbp)
callq 0x4c50
movq %rax, -0x178(%rbp)
leaq -0x148(%rbp), %rdi
leaq -0x178(%rbp), %rsi
callq 0x4c20
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x289(%rbp)
jne 0x5c7b
jmp 0x5d51
movq -0x1b0(%rbp), %rax
movq %rax, -0x2a0(%rbp)
leaq -0x1a1(%rbp), %rdi
movq %rdi, -0x298(%rbp)
callq 0x3450
movq -0x298(%rbp), %rdx
movb $0x1, -0x1a2(%rbp)
leaq 0x33a0(%rip), %rsi      # 0x9051
leaq -0x1a0(%rbp), %rdi
callq 0x41b0
jmp 0x5cbf
movq -0x2a0(%rbp), %rdi
movb $0x1, -0x1a3(%rbp)
leaq -0x1a0(%rbp), %rsi
callq 0x7230
movq %rax, -0x2a8(%rbp)
jmp 0x5ce2
movq -0x2a8(%rbp), %rax
movq %rax, -0x180(%rbp)
leaq -0x180(%rbp), %rdi
callq 0x4c80
movq %rax, %rdi
addq $0x20, %rdi
xorl %eax, %eax
movl %eax, %esi
movl $0xa, %edx
callq 0x5f00
movl %eax, -0x2ac(%rbp)
jmp 0x5d19
movq -0x1b0(%rbp), %rdi
movl -0x2ac(%rbp), %eax
cltq
movq %rax, -0x2b8(%rbp)
addq $0x98, %rdi
callq 0x31e0
movq %rax, %rcx
movq -0x2b8(%rbp), %rax
cmpq %rcx, %rax
sete %al
movb %al, -0x289(%rbp)
movb -0x289(%rbp), %al
movb %al, -0x2b9(%rbp)
testb $0x1, -0x1a3(%rbp)
jne 0x5d68
jmp 0x5d74
leaq -0x1a0(%rbp), %rdi
callq 0x31a0
testb $0x1, -0x1a2(%rbp)
jne 0x5d7f
jmp 0x5d8b
leaq -0x1a1(%rbp), %rdi
callq 0x3300
leaq -0x168(%rbp), %rdi
callq 0x31a0
leaq -0x169(%rbp), %rdi
callq 0x3300
movb -0x2b9(%rbp), %al
testb $0x1, %al
jne 0x5db2
jmp 0x5e5f
movq -0x1b0(%rbp), %rax
movb $0x1, 0x122(%rax)
jmp 0x5e5f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xa8(%rbp)
movl %eax, -0xac(%rbp)
jmp 0x5e51
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xa8(%rbp)
movl %eax, -0xac(%rbp)
jmp 0x5e45
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xa8(%rbp)
movl %eax, -0xac(%rbp)
jmp 0x5e2c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xa8(%rbp)
movl %eax, -0xac(%rbp)
testb $0x1, -0x1a3(%rbp)
jne 0x5e1e
jmp 0x5e2a
leaq -0x1a0(%rbp), %rdi
callq 0x31a0
jmp 0x5e2c
testb $0x1, -0x1a2(%rbp)
jne 0x5e37
jmp 0x5e43
leaq -0x1a1(%rbp), %rdi
callq 0x3300
jmp 0x5e45
leaq -0x168(%rbp), %rdi
callq 0x31a0
leaq -0x169(%rbp), %rdi
callq 0x3300
jmp 0x5e6a
jmp 0x5e61
addq $0x2c0, %rsp            # imm = 0x2C0
popq %rbp
retq
movq -0xa8(%rbp), %rdi
callq 0x3440
nopw %cs:(%rax,%rax)