Function at 0x140036130
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x170]
sub rsp, 0x270
movaps xmmword [rsp + 0x260], xmm6
mov rax, qword [0x14012dc00]
xor rax, rsp
mov qword [rbp + 0x150], rax
mov r12, rdx
mov qword [rbp - 0x70], rdx
mov r13, rcx
mov qword [rbp - 0x78], rcx
mov qword [rbp - 0x48], rcx
mov dword [rsp + 0x50], 1
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
xor edi, edi
mov qword [rcx + 0x10], rdi
mov qword [rcx + 0x18], send
mov byte [rcx], dil
mov dword [rsp + 0x50], 1
mov rcx, qword [rdx + 8]
cmp qword [rdx], rcx
jne 0x1400361b3
mov dword [rsp + 0x50], edi
jmp 0x1400363e5
movabs rax, 0xeef5bd91a0b23864
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x40], rax
movabs rax, 0xd708fde799493963
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x38], rax
movabs rsi, 0x8199e1fcc1d74c37
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x100], rax
movabs rbx, 0xd76e9991b7255800
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp - 0x40], xmm0
lea rax, [rbp + 0x130]
mov qword [rbp - 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rbp + 0x100], rax
lea rcx, [rbp - 0x40]
mov r14, 0xffffffffffffffff
mov rax, r14
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x140036250
mov qword [rbp + 0x108], rax
movaps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x110], xmm0
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x130]
call fcn.14004c340
mov eax, 3
mov dword [rsp + 0x50], eax
and eax, 0xfffffffd
mov dword [rsp + 0x50], eax
lea r8, [rbp + 0x130]
lea rdx, [0x14012df30]
lea rcx, [rbp - 0x10]
call fcn.14002d6c0
nop
mov rdx, qword [rbp + 0x148]
cmp rdx, 7
jbe 0x1400362f0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400362eb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037714
call fcn.1400acb30
movdqa xmm6, xmmword [0x1401151a0]
movdqu xmmword [rbp + 0x140], xmm6
mov word [rbp + 0x130], di
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x40]
call fcn.14002e9a0
movsd xmm0, qword [rax]
movsd qword [rbp - 0x30], xmm0
mov ecx, dword [rax + 8]
mov dword [rbp + 0x100], ecx
lea rdx, [0x14012de30]
mov qword [rbp + 0x108], rdx
movaps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x100], xmm0
mov eax, dword [rbp - 0x30]
test eax, eax
je 0x1400376aa
mov dword [rbp + 0x100], edi
mov qword [rbp + 0x108], rdx
cmp eax, 1
je 0x1400376ae
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0xb0]
call fcn.140078f60
nop
cmp byte [rbp + 0xd0], 0
jne 0x14003641a
mov dword [rsp + 0x50], edi
lea rcx, [rbp + 0xb0]
call fcn.140031090
nop
mov rdx, qword [rbp + 8]
cmp rdx, 7
jbe 0x1400363d4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400363cf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003770e
call fcn.1400acb30
movdqa xmm6, xmmword [0x1401151a0]
movdqu xmmword [rbp], xmm6
mov word [rbp - 0x10], di
mov rax, r13
mov rcx, qword [rbp + 0x150]
xor rcx, rsp
call fcn.1400acb10
mov rbx, qword [rsp + 0x2c0]
movaps xmm6, xmmword [rsp + 0x260]
add rsp, 0x270
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov word [rbp - 0x80], 1
mov byte [rbp - 0x7e], 0
lea rdx, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 0xf
cmova rdx, qword [rbp + 0xb0]
mov r8, qword [rbp + 0xc0]
add r8, rdx
lea rdx, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 0xf
cmova rdx, qword [rbp + 0xb0]
lea r9, [rbp - 0x80]
lea rcx, [rbp + 0x10]
call fcn.140043360
nop
movabs rax, 0xd4fc8f95a9b42d7a
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x110], rax
movabs rax, 0xbe08f7fef4573d73
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x118], rax
movabs rax, 0xd7164cea8b760e
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x120], rax
movabs rcx, 0x4a6324fb176de3fa
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x128], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x130], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x138], rax
movabs rax, 0xd7733e85ff2569
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x140], rax
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x148], rax
movdqa xmm0, xmmword [rbp + 0x110]
xorps xmm0, xmmword [rbp + 0x130]
movdqa xmmword [rbp + 0x110], xmm0
movdqa xmm1, xmmword [rbp + 0x120]
xorps xmm1, xmmword [rbp + 0x140]
movdqa xmmword [rbp + 0x120], xmm1
lea rcx, [rbp + 0x110]
mov rax, r14
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140036560
lea rcx, [rbp + 0x10]
cmp qword [rbp + 0x28], 0xf
cmova rcx, qword [rbp + 0x10]
mov r8, qword [rbp + 0x20]
cmp r8, rax
jne 0x140037624
lea rdx, [rbp + 0x110]
call fcn.1400bfca0
test eax, eax
jne 0x140037624
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], rdi
mov qword [rbp - 0x50], rdi
mov r8d, 8
lea rdx, str.Software
lea rcx, [rbp - 0x68]
call fcn.140045330
nop
lea r8, [rbp - 0x68]
mov rsi, qword [rbp - 0x68]
mov r15, qword [rbp - 0x50]
cmp r15, 0xf
cmova r8, rsi
movabs rcx, 0xcbf29ce484222325
mov rdx, rdi
mov rdi, qword [rbp - 0x58]
test rdi, rdi
je 0x140036614
movabs r9, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r9
inc rdx
cmp rdx, rdi
jb 0x140036600
and rcx, qword [rbp + 0xa0]
add rcx, rcx
mov rax, qword [rbp + 0x88]
mov rbx, qword [rax + rcx*8 + 8]
cmp rbx, qword [rbp + 0x78]
je 0x140036686
mov r12, qword [rax + rcx*8]
nop dword [rax]
nop dword [rax + rax]
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x140036652
mov rdx, qword [rdx]
lea rcx, [rbp - 0x68]
cmp r15, 0xf
cmova rcx, rsi
cmp rdi, rax
jne 0x14003666f
mov r8, rdi
call fcn.1400bfca0
test eax, eax
je 0x14003667a
cmp rbx, r12
je 0x140036682
mov rbx, qword [rbx + 8]
jmp 0x140036640
mov r12, qword [rbp - 0x70]
xor edi, edi
jmp 0x14003668a
mov r12, qword [rbp - 0x70]
xor edi, edi
mov ebx, edi
cmp r15, 0xf
jbe 0x1400366c1
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400366b9
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003771a
mov rcx, rsi
call fcn.1400acb30
mov qword [rbp - 0x58], rdi
mov qword [rbp - 0x50], send
mov byte [rbp - 0x68], 0
test rbx, rbx
jne 0x140036760
mov dword [rsp + 0x50], edi
lea rax, [rbp + 0x70]
mov qword [rbp - 0x30], rax
lea rcx, [rbp + 0x70]
call fcn.1400378c0
nop
lea rax, [rbp + 0x30]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x30]
call fcn.140037820
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x14003673e
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140036739
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037762
call fcn.1400acb30
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], send
mov byte [rbp + 0x10], 0
lea rcx, [rbp + 0xb0]
call fcn.140031090
nop
jmp 0x140036394
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movups xmmword [rsp + 0x60], xmm1
movdqu xmmword [rsp + 0x70], xmm0
mov r8d, 8
lea rdx, str.Software
lea rcx, [rsp + 0x60]
call fcn.140045330
nop
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x70]
call fcn.140043bc0
mov rax, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x30], xmm0
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x1400367ba
lock inc dword [rcx + 8]
mov rbx, qword [rax + 0x30]
mov qword [rbp - 0x30], rbx
mov rax, qword [rax + 0x38]
mov qword [rbp - 0x28], rax
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x140036807
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140036802
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037720
call fcn.1400acb30
movdqa xmm6, xmmword [0x1401151b0]
movdqu xmmword [rsp + 0x70], xmm6
mov byte [rsp + 0x60], 0
movabs r15, 0x8199e199b7bb2d61
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x40], rax
movabs rsi, 0xd76e9991b7255800
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x38], rax
movabs rax, 0x8199e1fcc1d74c37
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x100], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp - 0x40], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x120], xmm1
lea rax, [rbp - 0x40]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x1400368a3
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x110]
call fcn.140045330
nop
lea rdx, [rbp + 0x110]
lea rcx, [rbx + 0x60]
call fcn.140043390
movzx ebx, al
mov rdx, qword [rbp + 0x128]
cmp rdx, 0xf
jbe 0x140036912
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003690d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037726
call fcn.1400acb30
movdqu xmmword [rbp + 0x120], xmm6
mov byte [rbp + 0x110], 0
test bl, bl
jne 0x1400369e8
mov dword [rsp + 0x50], edi
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x140036966
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140036966
mov rbx, qword [rbp - 0x28]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r14d
cmp r14d, 1
jne 0x140036966
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
call qword [rax + htons]
nop
lea rax, [rbp + 0x70]
mov qword [rbp - 0x30], rax
lea rcx, [rbp + 0x70]
call fcn.1400378c0
nop
lea rax, [rbp + 0x30]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x30]
call fcn.140037820
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x1400369c6
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400369c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037762
call fcn.1400acb30
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], send
mov byte [rbp + 0x10], 0
lea rcx, [rbp + 0xb0]
call fcn.140031090
nop
jmp 0x140036394
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov rbx, qword [rbp - 0x30]
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x40], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x38], rax
movabs rax, 0x8199e1fcc1d74c37
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x100], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp - 0x40], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x70], xmm1
lea rax, [rbp - 0x40]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x140036a64
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x60]
call fcn.140045330
nop
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x110]
lea rcx, [rbx + 0x60]
call fcn.140043bc0
mov rax, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140036aaa
lock inc dword [rcx + 8]
mov rbx, qword [rax + 0x30]
mov qword [rbp - 0x20], rbx
mov rax, qword [rax + 0x38]
mov qword [rbp - 0x18], rax
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x140036af7
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140036af2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003772c
call fcn.1400acb30
movdqu xmmword [rsp + 0x70], xmm6
mov byte [rsp + 0x60], 0
movabs r15, 0x8199e191a0b23864
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x40], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x38], rax
movabs rax, 0x8199e1fcc1d74c37
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x100], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp - 0x40], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x120], xmm1
lea rax, [rbp - 0x40]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x140036b81
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x110]
call fcn.140045330
nop
lea rdx, [rbp + 0x110]
lea rcx, [rbx + 0x60]
call fcn.140043390
movzx ebx, al
mov rdx, qword [rbp + 0x128]
cmp rdx, 0xf
jbe 0x140036bf0
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140036beb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037732
call fcn.1400acb30
movdqu xmmword [rbp + 0x120], xmm6
mov byte [rbp + 0x110], 0
test bl, bl
jne 0x140036d00
mov dword [rsp + 0x50], edi
mov rcx, qword [rbp - 0x18]
test rcx, rcx
je 0x140036c45
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140036c45
mov rbx, qword [rbp - 0x18]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140036c45
mov rcx, qword [rbp - 0x18]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x140036c7e
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140036c7e
mov rbx, qword [rbp - 0x28]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r14d
cmp r14d, 1
jne 0x140036c7e
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
call qword [rax + htons]
nop
lea rax, [rbp + 0x70]
mov qword [rbp - 0x30], rax
lea rcx, [rbp + 0x70]
call fcn.1400378c0
nop
lea rax, [rbp + 0x30]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x30]
call fcn.140037820
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x140036cde
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140036cd9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037762
call fcn.1400acb30
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], send
mov byte [rbp + 0x10], 0
lea rcx, [rbp + 0xb0]
call fcn.140031090
nop
jmp 0x140036394
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov rbx, qword [rbp - 0x20]
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
movabs rax, 0x8199e1fcc1d74c37
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x100], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rsp + 0x60], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x130], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x140], xmm1
lea rax, [rsp + 0x60]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x140036d85
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x130]
call fcn.140045330
nop
lea r8, [rbp + 0x130]
lea rdx, [rbp + 0x110]
lea rcx, [rbx + 0x60]
call fcn.140043bc0
mov rax, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x40], xmm0
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140036dd0
lock inc dword [rcx + 8]
mov rbx, qword [rax + 0x30]
mov qword [rbp - 0x40], rbx
mov rax, qword [rax + 0x38]
mov qword [rbp - 0x38], rax
mov rdx, qword [rbp + 0x148]
cmp rdx, 0xf
jbe 0x140036e21
inc rdx
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140036e1c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037738
call fcn.1400acb30
movdqu xmmword [rbp + 0x140], xmm6
mov byte [rbp + 0x130], 0
movabs r15, 0xc2ed8299afb92374
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x60], rax
movabs rax, 0xd76e9991d24d3b61
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
movabs rax, 0x8199e1fcc1d74c37
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x100], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x108], rax
movdqa xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rsp + 0x60], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x120], xmm1
lea rax, [rsp + 0x60]
mov r8, r14
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140036ec0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x110]
call fcn.140045330
nop
lea rdx, [rbp + 0x110]
lea rcx, [rbx + 0x60]
call fcn.140043390
movzx ebx, al
mov rdx, qword [rbp + 0x128]
cmp rdx, 0xf
jbe 0x140036f30
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140036f2b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003773e
call fcn.1400acb30
movdqu xmmword [rbp + 0x120], xmm6
mov byte [rbp + 0x110], 0
test bl, bl
jne 0x14003707a
mov dword [rsp + 0x50], edi
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x140036f85
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140036f85
mov rbx, qword [rbp - 0x38]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140036f85
mov rcx, qword [rbp - 0x38]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp - 0x18]
test rcx, rcx
je 0x140036fbf
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140036fbf
mov rbx, qword [rbp - 0x18]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140036fbf
mov rcx, qword [rbp - 0x18]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x140036ff8
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140036ff8
mov rbx, qword [rbp - 0x28]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r14d
cmp r14d, 1
jne 0x140036ff8
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
call qword [rax + htons]
nop
lea rax, [rbp + 0x70]
mov qword [rbp - 0x30], rax
lea rcx, [rbp + 0x70]
call fcn.1400378c0
nop
lea rax, [rbp + 0x30]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x30]
call fcn.140037820
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x140037058
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037053
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037762
call fcn.1400acb30
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], send
mov byte [rbp + 0x10], 0
lea rcx, [rbp + 0xb0]
call fcn.140031090
nop
jmp 0x140036394
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
mov rbx, qword [rbp - 0x40]
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x60], rax
movabs rax, 0xd76e9991d24d3b61
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
movabs rax, 0x8199e1fcc1d74c37
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x110], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x118], rax
movdqa xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rbp + 0x110]
movdqa xmmword [rsp + 0x60], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x130], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x140], xmm1
lea rax, [rsp + 0x60]
mov r8, r14
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140037110
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x130]
call fcn.140045330
nop
lea r8, [rbp + 0x130]
lea rdx, [rbp + 0x110]
lea rcx, [rbx + 0x60]
call fcn.140043bc0
mov rcx, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x100], xmm0
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x14003715e
lock inc dword [rax + 8]
mov rdi, qword [rcx + 0x30]
mov qword [rbp + 0x100], rdi
mov rsi, qword [rcx + 0x38]
mov qword [rsp + 0x40], rsi
mov qword [rbp + 0x108], rsi
mov rdx, qword [rbp + 0x148]
cmp rdx, 0xf
jbe 0x1400371ba
inc rdx
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400371b5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037744
call fcn.1400acb30
movdqu xmmword [rbp + 0x140], xmm6
mov byte [rbp + 0x130], 0
mov rdi, qword [rdi + 0x28]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x1400374b3
mov r15d, dword [rsp + 0x50]
nop
mov rsi, qword [r12]
mov r12, qword [r12 + 8]
cmp rsi, r12
je 0x140037222
nop
mov r8, rsi
lea rdx, [rbx + 0x30]
lea rcx, [rbp + 0xd8]
call fcn.140035ee0
nop
cmp byte [rbp + 0xf8], 0
jne 0x140037238
lea rcx, [rbp + 0xd8]
call fcn.140031090
add rsi, 0x40
cmp rsi, r12
jne 0x1400371f0
mov r13, qword [rbp - 0x78]
mov rbx, qword [rbx]
cmp rbx, rdi
je 0x1400374ae
mov r12, qword [rbp - 0x70]
jmp 0x1400371e0
lea r9, [rsi + 0x20]
mov rcx, qword [r9 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 2
jb 0x14003775c
cmp qword [r9 + 0x18], 0xf
jbe 0x140037261
mov r9, qword [r9]
mov qword [rsp + 0x30], 2
lea rax, [0x140111da8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x130]
call fcn.140047370
or r15d, 8
mov dword [rsp + 0x50], r15d
lea rdx, [rbp + 0xd8]
cmp qword [rbp + 0xf0], 0xf
cmova rdx, qword [rbp + 0xd8]
mov r8, qword [rbp + 0xe8]
lea rcx, [rbp + 0x130]
call fcn.140040dc0
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
xor esi, esi
mov qword [rbp + 0x120], rsi
mov qword [rbp + 0x128], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x110], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x120], xmm1
mov qword [rax + 0x18], send
mov qword [rax + 0x10], rsi
mov byte [rax], sil
or r15d, 0x10
mov dword [rsp + 0x50], r15d
mov r8d, 1
lea rdx, [0x140111da4]
lea rcx, [rbp + 0x110]
call fcn.140040dc0
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], rsi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], send
mov byte [rax], sil
or r15d, 0x20
mov dword [rsp + 0x50], r15d
lea rdx, [rsp + 0x60]
movq rcx, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0xf
cmova rdx, rcx
movq r8, xmm1
mov r13, qword [rbp - 0x78]
mov rcx, r13
call fcn.140040dc0
and r15d, 0xffffffdf
mov dword [rsp + 0x50], r15d
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x1400373c4
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400373bf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003774a
call fcn.1400acb30
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], send
mov byte [rsp + 0x60], 0
and r15d, 0xffffffef
mov dword [rsp + 0x50], r15d
mov rdx, qword [rbp + 0x128]
cmp rdx, 0xf
jbe 0x140037421
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003741c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037750
call fcn.1400acb30
mov qword [rbp + 0x120], rsi
mov qword [rbp + 0x128], send
mov byte [rbp + 0x110], 0
and r15d, 0xfffffff7
mov dword [rsp + 0x50], r15d
mov rdx, qword [rbp + 0x148]
cmp rdx, 0xf
jbe 0x140037484
inc rdx
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003747f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037756
call fcn.1400acb30
mov qword [rbp + 0x140], rsi
mov qword [rbp + 0x148], send
mov byte [rbp + 0x130], 0
lea rcx, [rbp + 0xd8]
call fcn.140031090
jmp 0x140037226
mov rsi, qword [rsp + 0x40]
xor edi, edi
mov dword [rsp + 0x50], edi
test rsi, rsi
je 0x1400374f5
mov eax, r14d
lock xadd dword [rsi + 8], eax
cmp eax, 1
jne 0x1400374f5
mov rbx, qword [rbp + 0x108]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1400374f5
mov rcx, qword [rbp + 0x108]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x14003752f
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14003752f
mov rbx, qword [rbp - 0x38]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003752f
mov rcx, qword [rbp - 0x38]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp - 0x18]
test rcx, rcx
je 0x140037569
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140037569
mov rbx, qword [rbp - 0x18]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140037569
mov rcx, qword [rbp - 0x18]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x1400375a2
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x1400375a2
mov rbx, qword [rbp - 0x28]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r14d
cmp r14d, 1
jne 0x1400375a2
mov rcx, qword [rbp - 0x28]
mov rax, qword [rcx]
call qword [rax + htons]
nop
lea rax, [rbp + 0x70]
mov qword [rbp - 0x30], rax
lea rcx, [rbp + 0x70]
call fcn.1400378c0
nop
lea rax, [rbp + 0x30]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x30]
call fcn.140037820
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x140037602
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400375fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037762
call fcn.1400acb30
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], send
mov byte [rbp + 0x10], 0
lea rcx, [rbp + 0xb0]
call fcn.140031090
nop
jmp 0x140036394
mov dword [rsp + 0x50], edi
lea rax, [rbp + 0x70]
mov qword [rbp - 0x30], rax
lea rcx, [rbp + 0x70]
call fcn.1400378c0
nop
lea rax, [rbp + 0x30]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x30]
call fcn.140037820
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x140037688
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037683
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140037762
call fcn.1400acb30
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], send
mov byte [rbp + 0x10], 0
lea rcx, [rbp + 0xb0]
call fcn.140031090
nop
jmp 0x140036394
test ecx, ecx
jne 0x1400376f6
mov dword [rsp + 0x50], edi
mov rdx, qword [rbp + 8]
cmp rdx, 7
jbe 0x1400363dc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400363cf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003770e
jmp 0x1400363cf
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x100]
lea rcx, str.exists
call fcn.14002e0f0
nop
call fcn.14008fbac
nop
call fcn.14008fbac
nop
call fcn.14008fbac
nop
call fcn.14008fbac
int3
call fcn.14008fbac
nop
call fcn.14008fbac
int3
call fcn.14008fbac
nop
call fcn.14008fbac
int3
call fcn.14008fbac
nop
call fcn.14008fbac
nop
call fcn.14008fbac
nop
call fcn.14008fbac
nop
call fcn.14008fbac
nop
call fcn.14002b870
nop
call fcn.14008fbac
int3