Function at 0x140037ed0
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 - 0x3f0]
sub rsp, 0x4f0
mov rax, qword [0x140104bf0]
xor rax, rsp
mov qword [rbp + 0x3e0], rax
mov r12, rdx
mov qword [rsp + 0x68], rdx
mov r13, rcx
mov qword [rsp + 0x60], rcx
mov qword [rbp + 0x190], rcx
mov dword [rsp + 0x48], 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 + 0x48], 1
mov rcx, qword [rdx + 8]
cmp qword [rdx], rcx
jne 0x140037f50
mov dword [rsp + 0x48], edi
jmp 0x140038194
movabs rax, 0x7a8ba6e952cf146
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x60], rax
movabs rax, 0x291673544dc0ac1d
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x58], rax
movabs rsi, 0x68c4e603f4498515
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x350], rax
movabs rbx, 0x2970172263accd7e
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x358], rax
movdqa xmm0, xmmword [rbp + 0x350]
pxor xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp - 0x60], xmm0
lea rax, [rbp + 0x140]
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x60]
mov qword [rbp + 0x180], rax
lea rcx, [rbp - 0x60]
mov r14, 0xffffffffffffffff
mov rax, r14
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140037ff0
mov qword [rbp + 0x188], rax
lea rdx, [rbp + 0x180]
lea rcx, [rbp + 0x140]
call fcn.14004de60
mov eax, 3
mov dword [rsp + 0x48], eax
and eax, 0xfffffffd
mov dword [rsp + 0x48], eax
lea r8, [rbp + 0x140]
lea rdx, [0x140104e60]
lea rcx, [rbp + 0x218]
call fcn.14002f320
nop
mov rdx, qword [rbp + 0x158]
cmp rdx, 8
jb 0x140038084
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003807f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395f6
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4c0]
movdqu xmmword [rbp + 0x150], xmm0
mov word [rbp + 0x140], di
lea rdx, [rbp + 0x218]
lea rcx, [rbp + 0x198]
call fcn.1400303b0
movsd xmm0, qword [rax]
movsd qword [rsp + 0x50], xmm0
mov ecx, dword [rax + 8]
mov dword [rbp + 0x240], ecx
lea rdx, [0x140104d10]
mov qword [rbp + 0x248], rdx
movaps xmm0, xmmword [rbp + 0x240]
movdqa xmmword [rbp + 0x240], xmm0
mov eax, dword [rsp + 0x50]
test eax, eax
je 0x140039583
mov dword [rbp + 0x240], edi
mov qword [rbp + 0x248], rdx
cmp eax, 1
setne al
test al, al
je 0x140039587
lea rdx, [rbp + 0x218]
lea rcx, [rbp + 0x300]
call fcn.140083220
nop
cmp byte [rbp + 0x320], 0
jne 0x1400381c1
mov dword [rsp + 0x48], edi
lea rcx, [rbp + 0x300]
call fcn.140032bb0
nop
mov rdx, qword [rbp + 0x230]
cmp rdx, 8
jb 0x14003817d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x218]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038178
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395f0
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4c0]
movdqu xmmword [rbp + 0x228], xmm0
mov word [rbp + 0x218], di
mov rax, r13
mov rcx, qword [rbp + 0x3e0]
xor rcx, rsp
call fcn.1400b4b60
mov rbx, qword [rsp + 0x540]
add rsp, 0x4f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov word [rsp + 0x4c], 1
mov byte [rsp + 0x4e], 0
lea rdx, [rbp + 0x300]
cmp qword [rbp + 0x318], 0x10
cmovae rdx, qword [rbp + 0x300]
mov r8, qword [rbp + 0x310]
add r8, rdx
lea rdx, [rbp + 0x300]
cmp qword [rbp + 0x318], 0x10
cmovae rdx, qword [rbp + 0x300]
lea r9, [rsp + 0x4c]
lea rcx, [rbp + 0x250]
call fcn.140044ef0
nop
movabs rax, 0x3da1886a9c2ae458
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x20], rax
movabs rax, 0x4016794d20dea80d
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x28], rax
movabs rax, 0xdb131efb283cb100
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x30], rax
movabs rcx, 0x4223cb105d727468
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x38], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3c0], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3c8], rax
movabs rax, 0xdb137b894748e267
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3d0], rax
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3d8], rax
movdqa xmm0, xmmword [rbp + 0x20]
pxor xmm0, xmmword [rbp + 0x3c0]
movdqa xmmword [rbp + 0x20], xmm0
movdqa xmm1, xmmword [rbp + 0x30]
pxor xmm1, xmmword [rbp + 0x3d0]
movdqa xmmword [rbp + 0x30], xmm1
lea rcx, [rbp + 0x20]
mov rax, r14
inc rax
cmp byte [rcx + rax], 0
jne 0x1400382f0
lea rcx, [rbp + 0x250]
cmp qword [rbp + 0x268], 0x10
cmovae rcx, qword [rbp + 0x250]
mov r8, qword [rbp + 0x260]
cmp r8, rax
jne 0x1400394e1
lea rdx, [rbp + 0x20]
call fcn.1400b7a80
test eax, eax
jne 0x1400394e1
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], rdi
lea r8d, [rax + 8]
lea rdx, str.Software
lea rcx, [rbp - 0x80]
call fcn.140031d20
nop
lea r8, [rbp - 0x80]
mov rsi, qword [rbp - 0x80]
mov r15, qword [rbp - 0x68]
cmp r15, 0x10
cmovae r8, rsi
movabs rcx, 0xcbf29ce484222325
mov rdx, rdi
mov rdi, qword [rbp - 0x70]
test rdi, rdi
je 0x1400383a4
movabs r9, 0x100000001b3
nop dword [rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r9
inc rdx
cmp rdx, rdi
jb 0x140038390
and rcx, qword [rbp + 0x2e0]
add rcx, rcx
mov rax, qword [rbp + 0x2c8]
mov rbx, qword [rax + rcx*8 + 8]
cmp rbx, qword [rbp + 0x2b8]
je 0x140038418
mov r12, qword [rax + rcx*8]
nop word [rax + rax]
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1400383e2
mov rdx, qword [rdx]
lea rcx, [rbp - 0x80]
cmp r15, 0x10
cmovae rcx, rsi
cmp rdi, rax
jne 0x1400383ff
mov r8, rdi
call fcn.1400b7a80
test eax, eax
je 0x14003840a
cmp rbx, r12
je 0x140038413
mov rbx, qword [rbx + 8]
jmp 0x1400383d0
mov r12, qword [rsp + 0x68]
xor edi, edi
jmp 0x14003841c
mov r12, qword [rsp + 0x68]
xor edi, edi
mov ebx, edi
cmp r15, 0x10
jb 0x140038453
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14003844b
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395fc
mov rcx, rsi
call fcn.1400b4b80
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], send
mov byte [rbp - 0x80], 0
test rbx, rbx
jne 0x14003850e
mov dword [rsp + 0x48], edi
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.1400397a0
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039700
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x1400384e3
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400384de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039644
call fcn.1400b4b80
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], send
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032bb0
nop
jmp 0x140038137
xorps xmm0, xmm0
movups xmmword [rbp + 0x1e8], xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0xa0], xmm1
movdqu xmmword [rbp + 0xb0], xmm0
mov r8d, 8
lea rdx, str.Software
lea rcx, [rbp + 0xa0]
call fcn.140031d20
nop
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0x1b8]
lea rcx, [rbp + 0x2b0]
call fcn.140045810
mov rax, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1e8], xmm0
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140038579
lock inc dword [rcx + 8]
mov rbx, qword [rax + 0x30]
mov qword [rbp + 0x1e8], rbx
mov rax, qword [rax + 0x38]
mov qword [rbp + 0x1f0], rax
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0x10
jb 0x1400385d0
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400385cb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039602
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
movdqu xmmword [rbp + 0xb0], xmm0
mov byte [rbp + 0xa0], 0
movabs r15, 0x68c4e6668225e443
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x50], rax
movabs rsi, 0x2970172263accd7e
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x48], rax
movabs rax, 0x68c4e603f4498515
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x380], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x388], rax
movdqa xmm0, xmmword [rbp - 0x50]
pxor xmm0, xmmword [rbp + 0x380]
movdqa xmmword [rbp - 0x50], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xd0], xmm1
lea rax, [rbp - 0x50]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x140038671
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0xc0]
call fcn.140031d20
nop
lea rdx, [rbp + 0xc0]
lea rcx, [rbx + 0x60]
call fcn.140044f20
movzx ebx, al
mov rdx, qword [rbp + 0xd8]
cmp rdx, 0x10
jb 0x1400386e0
inc rdx
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400386db
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039608
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
movdqu xmmword [rbp + 0xd0], xmm0
mov byte [rbp + 0xc0], 0
test bl, bl
jne 0x1400387e3
mov dword [rsp + 0x48], edi
mov rcx, qword [rbp + 0x1f0]
test rcx, rcx
je 0x140038745
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140038745
mov rbx, qword [rbp + 0x1f0]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r14d
cmp r14d, 1
jne 0x140038745
mov rcx, qword [rbp + 0x1f0]
mov rax, qword [rcx]
call qword [rax + htons]
nop
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.1400397a0
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039700
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x1400387b8
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400387b3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039644
call fcn.1400b4b80
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], send
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032bb0
nop
jmp 0x140038137
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f8], xmm0
mov rbx, qword [rbp + 0x1e8]
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, 0x68c4e603f4498515
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x370], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x378], rax
movdqa xmm0, xmmword [rbp - 0x40]
pxor xmm0, xmmword [rbp + 0x370]
movdqa xmmword [rbp - 0x40], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xf0], xmm1
lea rax, [rbp - 0x40]
mov r8, r14
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140038870
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0xe0]
call fcn.140031d20
nop
lea r8, [rbp + 0xe0]
lea rdx, [rbp + 0x1c8]
lea rcx, [rbx + 0x60]
call fcn.140045810
mov rax, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1f8], xmm0
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x1400388bd
lock inc dword [rcx + 8]
mov rbx, qword [rax + 0x30]
mov qword [rbp + 0x1f8], rbx
mov rax, qword [rax + 0x38]
mov qword [rbp + 0x200], rax
mov rdx, qword [rbp + 0xf8]
cmp rdx, 0x10
jb 0x140038914
inc rdx
mov rcx, qword [rbp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003890f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003960e
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
movdqu xmmword [rbp + 0xf0], xmm0
mov byte [rbp + 0xe0], 0
movabs r15, 0x68c4e66e952cf146
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x30], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x28], rax
movabs rax, 0x68c4e603f4498515
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x360], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x368], rax
movdqa xmm0, xmmword [rbp - 0x30]
pxor xmm0, xmmword [rbp + 0x360]
movdqa xmmword [rbp - 0x30], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x110], xmm1
lea rax, [rbp - 0x30]
mov r8, r14
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400389b0
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x100]
call fcn.140031d20
nop
lea rdx, [rbp + 0x100]
lea rcx, [rbx + 0x60]
call fcn.140044f20
movzx ebx, al
mov rdx, qword [rbp + 0x118]
cmp rdx, 0x10
jb 0x140038a1f
inc rdx
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038a1a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039614
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
movdqu xmmword [rbp + 0x110], xmm0
mov byte [rbp + 0x100], 0
test bl, bl
jne 0x140038b65
mov dword [rsp + 0x48], edi
mov rcx, qword [rbp + 0x200]
test rcx, rcx
je 0x140038a85
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140038a85
mov rbx, qword [rbp + 0x200]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140038a85
mov rcx, qword [rbp + 0x200]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp + 0x1f0]
test rcx, rcx
je 0x140038ac7
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140038ac7
mov rbx, qword [rbp + 0x1f0]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r14d
cmp r14d, 1
jne 0x140038ac7
mov rcx, qword [rbp + 0x1f0]
mov rax, qword [rcx]
call qword [rax + htons]
nop
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.1400397a0
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039700
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x140038b3a
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038b35
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039644
call fcn.1400b4b80
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], send
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032bb0
nop
jmp 0x140038137
xorps xmm0, xmm0
movups xmmword [rbp + 0x208], xmm0
mov rbx, qword [rbp + 0x1f8]
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x20], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x18], rax
movabs rax, 0x68c4e603f4498515
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3b0], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3b8], rax
movdqa xmm0, xmmword [rbp - 0x20]
pxor xmm0, xmmword [rbp + 0x3b0]
movdqa xmmword [rbp - 0x20], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x130], xmm1
lea rax, [rbp - 0x20]
mov r8, r14
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140038bf0
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x120]
call fcn.140031d20
nop
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0x1d8]
lea rcx, [rbx + 0x60]
call fcn.140045810
mov rax, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x208], xmm0
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140038c3d
lock inc dword [rcx + 8]
mov rbx, qword [rax + 0x30]
mov qword [rbp + 0x208], rbx
mov rax, qword [rax + 0x38]
mov qword [rbp + 0x210], rax
mov rdx, qword [rbp + 0x138]
cmp rdx, 0x10
jb 0x140038c94
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038c8f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003961a
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
movdqu xmmword [rbp + 0x130], xmm0
mov byte [rbp + 0x120], 0
movabs r15, 0x2bb085669a27ea56
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x10], rax
movabs rax, 0x2970172206c4ae1f
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 8], rax
movabs rax, 0x68c4e603f4498515
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x390], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x398], rax
movdqa xmm0, xmmword [rbp - 0x10]
pxor xmm0, xmmword [rbp + 0x390]
movdqa xmmword [rbp - 0x10], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x70], xmm1
lea rax, [rbp - 0x10]
mov r8, r14
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140038d30
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x60]
call fcn.140031d20
nop
lea rdx, [rbp + 0x60]
lea rcx, [rbx + 0x60]
call fcn.140044f20
movzx ebx, al
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x140038d93
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038d8e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039620
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
movdqu xmmword [rbp + 0x70], xmm0
mov byte [rbp + 0x60], 0
test bl, bl
jne 0x140038f16
mov dword [rsp + 0x48], edi
mov rcx, qword [rbp + 0x210]
test rcx, rcx
je 0x140038df3
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140038df3
mov rbx, qword [rbp + 0x210]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140038df3
mov rcx, qword [rbp + 0x210]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp + 0x200]
test rcx, rcx
je 0x140038e36
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140038e36
mov rbx, qword [rbp + 0x200]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140038e36
mov rcx, qword [rbp + 0x200]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp + 0x1f0]
test rcx, rcx
je 0x140038e78
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140038e78
mov rbx, qword [rbp + 0x1f0]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r14d
cmp r14d, 1
jne 0x140038e78
mov rcx, qword [rbp + 0x1f0]
mov rax, qword [rcx]
call qword [rax + htons]
nop
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.1400397a0
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039700
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x140038eeb
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038ee6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039644
call fcn.1400b4b80
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], send
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032bb0
nop
jmp 0x140038137
xorps xmm0, xmm0
movups xmmword [rbp + 0x2f0], xmm0
mov rbx, qword [rbp + 0x208]
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x70], rax
movabs rax, 0x2970172206c4ae1f
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x78], rax
movabs rax, 0x68c4e603f4498515
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3a0], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x3a8], rax
movdqa xmm0, xmmword [rsp + 0x70]
pxor xmm0, xmmword [rbp + 0x3a0]
movdqa xmmword [rsp + 0x70], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x90], xmm1
lea rax, [rsp + 0x70]
mov r8, r14
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140038fb0
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x80]
call fcn.140031d20
nop
lea r8, [rbp + 0x80]
lea rdx, [rbp + 0x1a8]
lea rcx, [rbx + 0x60]
call fcn.140045810
mov rcx, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x2f0], xmm0
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x140038ffe
lock inc dword [rax + 8]
mov rdi, qword [rcx + 0x30]
mov qword [rbp + 0x2f0], rdi
mov rsi, qword [rcx + 0x38]
mov qword [rsp + 0x40], rsi
mov qword [rbp + 0x2f8], rsi
mov rdx, qword [rbp + 0x98]
cmp rdx, 0x10
jb 0x14003905a
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039055
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039626
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
movdqu xmmword [rbp + 0x90], xmm0
mov byte [rbp + 0x80], 0
mov rdi, qword [rdi + 0x28]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x140039339
mov r15d, dword [rsp + 0x48]
nop word [rax + rax]
mov rsi, qword [r12]
mov r12, qword [r12 + 8]
cmp rsi, r12
je 0x1400390d2
nop
mov r8, rsi
lea rdx, [rbx + 0x30]
lea rcx, [rbp + 0x328]
call fcn.140037c80
nop
cmp byte [rbp + 0x348], 0
jne 0x1400390ea
lea rcx, [rbp + 0x328]
call fcn.140032bb0
add rsi, 0x40
cmp rsi, r12
jne 0x1400390a0
mov r13, qword [rsp + 0x60]
mov rbx, qword [rbx]
cmp rbx, rdi
je 0x140039334
mov r12, qword [rsp + 0x68]
jmp 0x140039090
lea r9, [rsi + 0x20]
mov rcx, qword [r9 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 2
jb 0x14003963e
cmp qword [r9 + 0x18], 0x10
jb 0x140039113
mov r9, qword [r9]
mov qword [rsp + 0x30], 2
lea rax, [0x1400e7e20]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x160]
call fcn.140048e20
or r15d, 0x10
mov dword [rsp + 0x48], r15d
lea rdx, [rbp + 0x328]
cmp qword [rbp + 0x340], 0x10
cmovae rdx, qword [rbp + 0x328]
mov r8, qword [rbp + 0x338]
lea rcx, [rbp + 0x160]
call fcn.140042c10
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
xor esi, esi
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], send
mov byte [rax], sil
or r15d, 0x20
mov dword [rsp + 0x48], r15d
lea r8d, [rsi + 1]
lea rdx, [0x1400e7e1c]
lea rcx, [rbp]
call fcn.140042c10
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x58], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x50], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], send
mov byte [rax], sil
or r15d, 0x40
mov dword [rsp + 0x48], r15d
lea rdx, [rbp + 0x40]
movq rcx, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0x10
cmovae rdx, rcx
movq r8, xmm1
mov r13, qword [rsp + 0x60]
mov rcx, r13
call fcn.140042c10
and r15d, 0xffffffbf
mov dword [rsp + 0x48], r15d
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x14003925c
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039257
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003962c
call fcn.1400b4b80
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x58], send
mov byte [rbp + 0x40], 0
and r15d, 0xffffffdf
mov dword [rsp + 0x48], r15d
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x1400392b0
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400392ab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039632
call fcn.1400b4b80
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x18], send
mov byte [rbp], 0
and r15d, 0xffffffef
mov dword [rsp + 0x48], r15d
mov rdx, qword [rbp + 0x178]
cmp rdx, 0x10
jb 0x14003930a
inc rdx
mov rcx, qword [rbp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039305
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039638
call fcn.1400b4b80
mov qword [rbp + 0x170], rsi
mov qword [rbp + 0x178], send
mov byte [rbp + 0x160], 0
lea rcx, [rbp + 0x328]
call fcn.140032bb0
jmp 0x1400390d7
mov rsi, qword [rsp + 0x40]
xor edi, edi
mov dword [rsp + 0x48], edi
test rsi, rsi
je 0x14003937b
mov eax, r14d
lock xadd dword [rsi + 8], eax
cmp eax, 1
jne 0x14003937b
mov rbx, qword [rbp + 0x2f8]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003937b
mov rcx, qword [rbp + 0x2f8]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp + 0x210]
test rcx, rcx
je 0x1400393be
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x1400393be
mov rbx, qword [rbp + 0x210]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1400393be
mov rcx, qword [rbp + 0x210]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp + 0x200]
test rcx, rcx
je 0x140039401
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140039401
mov rbx, qword [rbp + 0x200]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r14d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140039401
mov rcx, qword [rbp + 0x200]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rcx, qword [rbp + 0x1f0]
test rcx, rcx
je 0x140039443
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140039443
mov rbx, qword [rbp + 0x1f0]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r14d
cmp r14d, 1
jne 0x140039443
mov rcx, qword [rbp + 0x1f0]
mov rax, qword [rcx]
call qword [rax + htons]
nop
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.1400397a0
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039700
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x1400394b6
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400394b1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039644
call fcn.1400b4b80
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], send
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032bb0
nop
jmp 0x140038137
mov dword [rsp + 0x48], edi
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.1400397a0
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039700
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x140039558
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039553
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039644
call fcn.1400b4b80
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], send
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032bb0
nop
jmp 0x140038137
test ecx, ecx
jne 0x1400395d5
mov dword [rsp + 0x48], edi
mov rdx, qword [rbp + 0x230]
cmp rdx, 8
jb 0x14003817d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x218]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038178
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395f0
jmp 0x140038178
lea r8, [rbp + 0x218]
lea rdx, [rbp + 0x240]
lea rcx, str.exists
call fcn.14002fbe0
nop
call fcn.140098678
nop
call fcn.140098678
nop
call fcn.140098678
nop
call fcn.140098678
int3
call fcn.140098678
nop
call fcn.140098678
int3
call fcn.140098678
nop
call fcn.140098678
int3
call fcn.140098678
nop
call fcn.140098678
nop
call fcn.140098678
nop
call fcn.140098678
nop
call fcn.140098678
nop
call fcn.14002d450
nop
call fcn.140098678
int3