Function at 0x140037e40
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 [0x140131c08]
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], 0xf
mov byte [rcx], dil
mov dword [rsp + 0x48], 1
mov rcx, qword [rdx + 8]
cmp qword [rdx], rcx
jne 0x140037ec0
mov dword [rsp + 0x48], edi
jmp 0x140038104
movabs rax, 0xe1f29c5619f4daf2
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x60], rax
movabs rax, 0x4963b05c687b8245
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x58], rax
movabs rsi, 0x8e9ec03b7891aea1
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x350], rax
movabs rbx, 0x4905d42a4617e326
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 0x140037f60
mov qword [rbp + 0x188], rax
lea rdx, [rbp + 0x180]
lea rcx, [rbp + 0x140]
call fcn.14004dc20
mov eax, 3
mov dword [rsp + 0x48], eax
and eax, 0xfffffffd
mov dword [rsp + 0x48], eax
lea r8, [rbp + 0x140]
lea rdx, [0x140131f00]
lea rcx, [rbp + 0x218]
call fcn.14002f250
nop
mov rdx, qword [rbp + 0x158]
cmp rdx, 8
jb 0x140037ff4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037fef
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039566
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a190]
movdqu xmmword [rbp + 0x150], xmm0
mov word [rbp + 0x140], di
lea rdx, [rbp + 0x218]
lea rcx, [rbp + 0x198]
call fcn.1400302e0
movsd xmm0, qword [rax]
movsd qword [rsp + 0x50], xmm0
mov ecx, dword [rax + 8]
mov dword [rbp + 0x240], ecx
lea rdx, [0x140131d90]
mov qword [rbp + 0x248], rdx
movaps xmm0, xmmword [rbp + 0x240]
movdqa xmmword [rbp + 0x240], xmm0
mov eax, dword [rsp + 0x50]
test eax, eax
je 0x1400394f3
mov dword [rbp + 0x240], edi
mov qword [rbp + 0x248], rdx
cmp eax, 1
setne al
test al, al
je 0x1400394f7
lea rdx, [rbp + 0x218]
lea rcx, [rbp + 0x300]
call fcn.140077e60
nop
cmp byte [rbp + 0x320], 0
jne 0x140038131
mov dword [rsp + 0x48], edi
lea rcx, [rbp + 0x300]
call fcn.140032b20
nop
mov rdx, qword [rbp + 0x230]
cmp rdx, 8
jb 0x1400380ed
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x218]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400380e8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039560
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a190]
movdqu xmmword [rbp + 0x228], xmm0
mov word [rbp + 0x218], di
mov rax, r13
mov rcx, qword [rbp + 0x3e0]
xor rcx, rsp
call fcn.1400ab850
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.140044d80
nop
movabs rax, 0xdbfbae5210f2cfec
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x20], rax
movabs rax, 0x2063ba4505658655
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x28], rax
movabs rax, 0xb2069c17b2466afc
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x30], rax
movabs rcx, 0x23698abcac2a94b8
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, 0xb206f965dd32399b
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 0x140038260
lea rcx, [rbp + 0x250]
cmp qword [rbp + 0x268], 0x10
cmovae rcx, qword [rbp + 0x250]
mov r8, qword [rbp + 0x260]
cmp r8, rax
jne 0x140039451
lea rdx, [rbp + 0x20]
call fcn.1400ae5f0
test eax, eax
jne 0x140039451
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.140031c90
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 0x140038314
movabs r9, 0x100000001b3
nop dword [rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r9
inc rdx
cmp rdx, rdi
jb 0x140038300
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 0x140038388
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 0x140038352
mov rdx, qword [rdx]
lea rcx, [rbp - 0x80]
cmp r15, 0x10
cmovae rcx, rsi
cmp rdi, rax
jne 0x14003836f
mov r8, rdi
call fcn.1400ae5f0
test eax, eax
je 0x14003837a
cmp rbx, r12
je 0x140038383
mov rbx, qword [rbx + 8]
jmp 0x140038340
mov r12, qword [rsp + 0x68]
xor edi, edi
jmp 0x14003838c
mov r12, qword [rsp + 0x68]
xor edi, edi
mov ebx, edi
cmp r15, 0x10
jb 0x1400383c3
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400383bb
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003956c
mov rcx, rsi
call fcn.1400ab870
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
test rbx, rbx
jne 0x14003847e
mov dword [rsp + 0x48], edi
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.140039710
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039670
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x140038453
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003844e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395b4
call fcn.1400ab870
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], 0xf
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032b20
nop
jmp 0x1400380a7
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.140031c90
nop
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0x1b8]
lea rcx, [rbp + 0x2b0]
call fcn.140045640
mov rax, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1e8], xmm0
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x1400384e9
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 0x140038540
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003853b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039572
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0xb0], xmm0
mov byte [rbp + 0xa0], 0
movabs r15, 0x8e9ec05e0efdcff7
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x50], rax
movabs rsi, 0x4905d42a4617e326
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x48], rax
movabs rax, 0x8e9ec03b7891aea1
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 0x1400385e1
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0xc0]
call fcn.140031c90
nop
lea rdx, [rbp + 0xc0]
lea rcx, [rbx + 0x60]
call fcn.140044db0
movzx ebx, al
mov rdx, qword [rbp + 0xd8]
cmp rdx, 0x10
jb 0x140038650
inc rdx
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003864b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039578
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0xd0], xmm0
mov byte [rbp + 0xc0], 0
test bl, bl
jne 0x140038753
mov dword [rsp + 0x48], edi
mov rcx, qword [rbp + 0x1f0]
test rcx, rcx
je 0x1400386b5
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x1400386b5
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 0x1400386b5
mov rcx, qword [rbp + 0x1f0]
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.140039710
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039670
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x140038728
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038723
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395b4
call fcn.1400ab870
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], 0xf
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032b20
nop
jmp 0x1400380a7
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, 0x8e9ec03b7891aea1
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 0x1400387e0
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0xe0]
call fcn.140031c90
nop
lea r8, [rbp + 0xe0]
lea rdx, [rbp + 0x1c8]
lea rcx, [rbx + 0x60]
call fcn.140045640
mov rax, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1f8], xmm0
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x14003882d
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 0x140038884
inc rdx
mov rcx, qword [rbp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003887f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003957e
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0xf0], xmm0
mov byte [rbp + 0xe0], 0
movabs r15, 0x8e9ec05619f4daf2
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, 0x8e9ec03b7891aea1
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 0x140038920
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x100]
call fcn.140031c90
nop
lea rdx, [rbp + 0x100]
lea rcx, [rbx + 0x60]
call fcn.140044db0
movzx ebx, al
mov rdx, qword [rbp + 0x118]
cmp rdx, 0x10
jb 0x14003898f
inc rdx
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003898a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039584
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0x110], xmm0
mov byte [rbp + 0x100], 0
test bl, bl
jne 0x140038ad5
mov dword [rsp + 0x48], edi
mov rcx, qword [rbp + 0x200]
test rcx, rcx
je 0x1400389f5
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x1400389f5
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 0x1400389f5
mov rcx, qword [rbp + 0x200]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x1f0]
test rcx, rcx
je 0x140038a37
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140038a37
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 0x140038a37
mov rcx, qword [rbp + 0x1f0]
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.140039710
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039670
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x140038aaa
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038aa5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395b4
call fcn.1400ab870
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], 0xf
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032b20
nop
jmp 0x1400380a7
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, 0x8e9ec03b7891aea1
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 0x140038b60
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x120]
call fcn.140031c90
nop
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0x1d8]
lea rcx, [rbx + 0x60]
call fcn.140045640
mov rax, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x208], xmm0
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140038bad
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 0x140038c04
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038bff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003958a
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0x130], xmm0
mov byte [rbp + 0x120], 0
movabs r15, 0xcdeaa35e16ffc1e2
mov qword [rsp + 0x40], r15
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x10], rax
movabs rax, 0x4905d42a237f8047
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 8], rax
movabs rax, 0x8e9ec03b7891aea1
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 0x140038ca0
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x60]
call fcn.140031c90
nop
lea rdx, [rbp + 0x60]
lea rcx, [rbx + 0x60]
call fcn.140044db0
movzx ebx, al
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x140038d03
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038cfe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039590
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0x70], xmm0
mov byte [rbp + 0x60], 0
test bl, bl
jne 0x140038e86
mov dword [rsp + 0x48], edi
mov rcx, qword [rbp + 0x210]
test rcx, rcx
je 0x140038d63
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140038d63
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 0x140038d63
mov rcx, qword [rbp + 0x210]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x200]
test rcx, rcx
je 0x140038da6
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140038da6
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 0x140038da6
mov rcx, qword [rbp + 0x200]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x1f0]
test rcx, rcx
je 0x140038de8
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140038de8
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 0x140038de8
mov rcx, qword [rbp + 0x1f0]
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.140039710
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039670
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x140038e5b
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038e56
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395b4
call fcn.1400ab870
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], 0xf
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032b20
nop
jmp 0x1400380a7
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, 0x4905d42a237f8047
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x78], rax
movabs rax, 0x8e9ec03b7891aea1
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 0x140038f20
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x80]
call fcn.140031c90
nop
lea r8, [rbp + 0x80]
lea rdx, [rbp + 0x1a8]
lea rcx, [rbx + 0x60]
call fcn.140045640
mov rcx, qword [rax]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x2f0], xmm0
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x140038f6e
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 0x140038fca
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038fc5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039596
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0x90], xmm0
mov byte [rbp + 0x80], 0
mov rdi, qword [rdi + 0x28]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x1400392a9
mov r15d, dword [rsp + 0x48]
nop word [rax + rax]
mov rsi, qword [r12]
mov r12, qword [r12 + 8]
cmp rsi, r12
je 0x140039042
nop
mov r8, rsi
lea rdx, [rbx + 0x30]
lea rcx, [rbp + 0x328]
call fcn.140037bf0
nop
cmp byte [rbp + 0x348], 0
jne 0x14003905a
lea rcx, [rbp + 0x328]
call fcn.140032b20
add rsi, 0x40
cmp rsi, r12
jne 0x140039010
mov r13, qword [rsp + 0x60]
mov rbx, qword [rbx]
cmp rbx, rdi
je 0x1400392a4
mov r12, qword [rsp + 0x68]
jmp 0x140039000
lea r9, [rsi + 0x20]
mov rcx, qword [r9 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 2
jb 0x1400395ae
cmp qword [r9 + 0x18], 0x10
jb 0x140039083
mov r9, qword [r9]
mov qword [rsp + 0x30], 2
lea rax, [0x140116fe0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x160]
call fcn.140048be0
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.140042aa0
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], 0xf
mov byte [rax], sil
or r15d, 0x20
mov dword [rsp + 0x48], r15d
lea r8d, [rsi + 1]
lea rdx, [0x140116fdc]
lea rcx, [rbp]
call fcn.140042aa0
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], 0xf
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.140042aa0
and r15d, 0xffffffbf
mov dword [rsp + 0x48], r15d
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x1400391cc
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400391c7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003959c
call fcn.1400ab870
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x58], 0xf
mov byte [rbp + 0x40], 0
and r15d, 0xffffffdf
mov dword [rsp + 0x48], r15d
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x140039220
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003921b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395a2
call fcn.1400ab870
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x18], 0xf
mov byte [rbp], 0
and r15d, 0xffffffef
mov dword [rsp + 0x48], r15d
mov rdx, qword [rbp + 0x178]
cmp rdx, 0x10
jb 0x14003927a
inc rdx
mov rcx, qword [rbp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039275
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395a8
call fcn.1400ab870
mov qword [rbp + 0x170], rsi
mov qword [rbp + 0x178], 0xf
mov byte [rbp + 0x160], 0
lea rcx, [rbp + 0x328]
call fcn.140032b20
jmp 0x140039047
mov rsi, qword [rsp + 0x40]
xor edi, edi
mov dword [rsp + 0x48], edi
test rsi, rsi
je 0x1400392eb
mov eax, r14d
lock xadd dword [rsi + 8], eax
cmp eax, 1
jne 0x1400392eb
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 0x1400392eb
mov rcx, qword [rbp + 0x2f8]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x210]
test rcx, rcx
je 0x14003932e
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14003932e
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 0x14003932e
mov rcx, qword [rbp + 0x210]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x200]
test rcx, rcx
je 0x140039371
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140039371
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 0x140039371
mov rcx, qword [rbp + 0x200]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x1f0]
test rcx, rcx
je 0x1400393b3
mov eax, r14d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x1400393b3
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 0x1400393b3
mov rcx, qword [rbp + 0x1f0]
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.140039710
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039670
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x140039426
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039421
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395b4
call fcn.1400ab870
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], 0xf
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032b20
nop
jmp 0x1400380a7
mov dword [rsp + 0x48], edi
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x2b0]
call fcn.140039710
nop
lea rax, [rbp + 0x270]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x270]
call fcn.140039670
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x1400394c8
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400394c3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395b4
call fcn.1400ab870
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], 0xf
mov byte [rbp + 0x250], 0
lea rcx, [rbp + 0x300]
call fcn.140032b20
nop
jmp 0x1400380a7
test ecx, ecx
jne 0x140039545
mov dword [rsp + 0x48], edi
mov rdx, qword [rbp + 0x230]
cmp rdx, 8
jb 0x1400380ed
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x218]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400380e8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039560
jmp 0x1400380e8
lea r8, [rbp + 0x218]
lea rdx, [rbp + 0x240]
lea rcx, str.exists
call fcn.14002fb10
nop
call fcn.14008f288
nop
call fcn.14008f288
nop
call fcn.14008f288
nop
call fcn.14008f288
int3
call fcn.14008f288
nop
call fcn.14008f288
int3
call fcn.14008f288
nop
call fcn.14008f288
int3
call fcn.14008f288
nop
call fcn.14008f288
nop
call fcn.14008f288
nop
call fcn.14008f288
nop
call fcn.14008f288
nop
call fcn.14002d380
nop
call fcn.14008f288
int3