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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x690]
sub rsp, 0x790
mov rax, qword [0x140131c08]
xor rax, rsp
mov qword [rbp + 0x680], rax
mov dword [rsp + 0x2c], 1
movabs rax, 0x8e9ec05619f4daf2
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x20], rax
movabs r14, 0x4905d42a4617e326
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x18], rax
movabs rbx, 0x8e9ec03b7891aea1
mov qword [rsp + 0x20], rbx
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x650], rax
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x658], rax
movdqa xmm0, xmmword [rbp + 0x650]
pxor xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x20], xmm0
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x450]
call fcn.140031c50
nop
movabs rax, 0xcbcc816c2cd7e1f2
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x20], rax
movabs rax, 0x1a59b15c2a76b57a
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x28], rax
movabs rax, 0xb206f965b0535cef
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x30], rax
movabs rcx, 0x23698abcac2a94b8
mov qword [rsp + 0x20], rcx
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x38], rax
mov qword [rsp + 0x20], rbx
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x660], rax
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x668], rax
movabs rax, 0xb206f965dd32399b
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x670], rax
mov qword [rsp + 0x20], rcx
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x678], rax
movdqa xmm0, xmmword [rbp + 0x660]
pxor xmm0, xmmword [rbp + 0x20]
movdqa xmmword [rbp + 0x20], xmm0
movdqa xmm1, xmmword [rbp + 0x670]
pxor xmm1, xmmword [rbp + 0x30]
movdqa xmmword [rbp + 0x30], xmm1
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x4d0]
call fcn.140031c50
nop
movabs rax, 0xfaff905619f4daf2
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x10], rax
movabs rax, 0x4905d42a4617e34e
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp - 8], rax
mov qword [rsp + 0x20], rbx
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x640], rax
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x648], rax
movdqa xmm0, xmmword [rbp - 0x10]
pxor xmm0, xmmword [rbp + 0x640]
movdqa xmmword [rbp - 0x10], xmm0
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x4b0]
call fcn.140031c50
nop
lea r9, [rbp + 0x4b0]
lea r8, [rbp + 0x4d0]
mov rdx, 0xffffffff80000001
lea rcx, [rbp + 0x230]
call fcn.1400801e0
nop
mov rdx, rax
lea rcx, [rbp + 0x3e0]
call fcn.1400440e0
nop
lea rcx, [rbp + 0x230]
call fcn.1400419a0
xor r12d, r12d
cmp qword [rbp + 0x3f0], r12
jne 0x140039a05
lea rcx, [rbp + 0x3e0]
call fcn.140030240
test al, al
je 0x14003ab72
movabs rax, 0x8e9ec03b16f7ddd2
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x30], rax
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x28], rax
mov qword [rsp + 0x20], rbx
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x630], rax
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x638], rax
movdqa xmm0, xmmword [rbp + 0x630]
pxor xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x30], xmm0
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x490]
call fcn.140031c50
nop
lea rdx, [rbp + 0x3e0]
lea rcx, [rbp + 0x440]
call fcn.14002ff50
nop
lea rcx, [rbp + 0x370]
call fcn.1400302d0
lea rax, [rbp + 0x80]
mov qword [rsp + 0x40], rax
lea rdx, [rbp + 0x440]
lea rcx, [rbp + 0x80]
call fcn.140032a50
nop
mov rdx, rax
lea rcx, [rbp + 0x370]
call fcn.1400300b0
nop
lea rcx, [rbp + 0x410]
call fcn.1400302d0
lea rax, [rbp + 0x90]
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x440]
lea rcx, [rbp + 0x90]
call fcn.140032a50
nop
mov rdx, rax
lea rcx, [rbp + 0x410]
call fcn.140030190
nop
mov rax, qword [rbp + 0x370]
cmp rax, qword [rbp + 0x410]
je 0x140039cff
lea rdi, [rax + 0x20]
lea rdx, [rbp + 0x1d0]
mov rcx, rdi
call fcn.14002ef50
nop
lea rdx, [rbp + 0x1b0]
mov rcx, rax
call fcn.14002ede0
nop
mov r9d, 4
xor r8d, r8d
lea rdx, [rbp + 0x190]
mov rcx, rax
call fcn.140041870
nop
lea rdx, [rbp + 0x490]
mov rcx, rax
call fcn.140044140
movzx ebx, al
lea rcx, [rbp + 0x190]
call fcn.1400419a0
nop
lea rcx, [rbp + 0x1b0]
call fcn.1400419a0
nop
lea rcx, [rbp + 0x1d0]
call fcn.14002f320
test bl, bl
je 0x140039cdf
mov rdx, rdi
lea rcx, [rbp + 0x518]
call fcn.140078760
nop
cmp byte [rbp + 0x538], 0
je 0x140039cd3
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xf0], xmm0
lea rdx, [rbp + 0xf0]
lea rcx, [rbp + 0x3c0]
call fcn.140040c10
nop
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x210]
mov rcx, rdi
call fcn.14002ef50
nop
lea rdx, [rbp + 0x1f0]
mov rcx, rax
call fcn.14002ede0
nop
mov rdx, rax
lea rcx, [rbp + 0xa0]
call fcn.140044210
mov rbx, rax
lea rdx, str.filename
lea rcx, [rbp + 0x3c0]
call fcn.140044180
mov rcx, rax
mov rdx, rbx
call fcn.140040bb0
nop
lea rcx, [rbp + 0x1f0]
call fcn.1400419a0
nop
lea rcx, [rbp + 0x210]
call fcn.14002f320
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x518]
call fcn.140041330
mov rdx, rax
lea rcx, [rbp + 0xb0]
call fcn.1400441e0
mov rbx, rax
lea rdx, str.content
lea rcx, [rbp + 0x3c0]
call fcn.140044180
mov rcx, rax
mov rdx, rbx
call fcn.140040bb0
lea rax, [rbp + 0x2f0]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x450]
lea rcx, [rbp + 0x2f0]
call fcn.140041a90
nop
mov rdx, rax
lea rcx, [0x140132110]
call fcn.140040a70
lea rdx, [rbp + 0x3c0]
mov rcx, rax
call fcn.140040990
nop
lea rcx, [rbp + 0x3c0]
call fcn.140040b90
nop
lea rcx, [rbp + 0x518]
call fcn.140032a80
lea rcx, [rbp + 0x370]
call fcn.14002ffa0
mov rax, qword [rbp + 0x370]
cmp rax, qword [rbp + 0x410]
jne 0x140039b10
lea rcx, [rbp + 0x410]
call fcn.140030140
nop
lea rcx, [rbp + 0x370]
call fcn.140030140
nop
lea rcx, [rbp + 0x440]
call fcn.140030140
lea rcx, [rbp + 0x110]
call fcn.140044ea0
nop
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0x3e0]
lea rcx, [rbp + 0x470]
call fcn.14002f250
nop
lea rcx, [rbp + 0x110]
call fcn.14002f320
lea rcx, [rbp + 0x350]
call fcn.140041bb0
nop
lea rcx, [rbp + 0x470]
call fcn.140030240
mov rsi, 0xffffffffffffffff
test al, al
je 0x14003a1dc
lea rdx, [rbp + 0x470]
lea rcx, [rbp + 0x430]
call fcn.14002ff50
nop
lea rcx, [rbp + 0x380]
call fcn.1400302d0
lea rax, [rbp + 0xc0]
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x430]
lea rcx, [rbp + 0xc0]
call fcn.140032a50
nop
mov rdx, rax
lea rcx, [rbp + 0x380]
call fcn.1400300b0
nop
lea rcx, [rbp + 0x3d0]
call fcn.1400302d0
lea rax, [rbp + 0xd0]
mov qword [rsp + 0x40], rax
lea rdx, [rbp + 0x430]
lea rcx, [rbp + 0xd0]
call fcn.140032a50
nop
mov rdx, rax
lea rcx, [rbp + 0x3d0]
call fcn.140030190
nop
mov rax, qword [rbp + 0x380]
cmp rax, qword [rbp + 0x3d0]
je 0x14003a13b
movabs r15, 0x8ef7c05c78feaecd
movabs r13, 0x4960d4594662e348
nop word [rax + rax]
lea rdi, [rax + 0x20]
mov rdx, rdi
lea rcx, [rbp + 0x130]
call fcn.1400302e0
movsd xmm0, qword [rax]
movsd qword [rsp + 0x58], xmm0
mov edx, dword [rax + 8]
mov ecx, dword [rsp + 0x58]
test edx, edx
je 0x140039e76
lea eax, [rcx - 1]
test eax, 0xfffffff7
jne 0x14003ad0c
cmp ecx, 3
je 0x14003a11b
mov rdx, rdi
lea rcx, [rbp + 0x4f0]
call fcn.140078760
nop
cmp byte [rbp + 0x510], 0
je 0x14003a10f
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xe0], xmm0
lea rdx, [rbp + 0xe0]
lea rcx, [rbp + 0x400]
call fcn.140040c10
nop
lea rax, [rbp + 0x70]
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x250]
mov rcx, rdi
call fcn.14002ef50
nop
lea rdx, [rbp + 0x160]
mov rcx, rax
call fcn.14002ede0
nop
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.140044210
mov rbx, rax
lea rdx, str.filename
lea rcx, [rbp + 0x400]
call fcn.140044180
mov rcx, rax
mov rdx, rbx
call fcn.140040bb0
nop
lea rcx, [rbp + 0x160]
call fcn.1400419a0
nop
lea rcx, [rbp + 0x250]
call fcn.14002f320
lea rax, [rbp + 0x60]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x4f0]
call fcn.140041330
mov rdx, rax
lea rcx, [rbp + 0x60]
call fcn.1400441e0
mov rbx, rax
lea rdx, str.content
lea rcx, [rbp + 0x400]
call fcn.140044180
mov rcx, rax
mov rdx, rbx
call fcn.140040bb0
lea rax, [rbp + 0x270]
mov qword [rsp + 0x50], rax
lea rdx, [rbp + 0x450]
lea rcx, [rbp + 0x270]
call fcn.140041a90
nop
mov rdx, rax
lea rcx, [0x140132110]
call fcn.140040a70
lea rdx, [rbp + 0x400]
mov rcx, rax
call fcn.140040990
mov qword [rsp + 0x20], r15
mov rax, qword [rsp + 0x20]
mov qword [rbp], rax
mov qword [rsp + 0x20], r13
mov rax, qword [rsp + 0x20]
mov qword [rbp + 8], rax
movabs rax, 0xb270f94bdd4139e9
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x10], rax
movabs rax, 0x23698abcac4c94dc
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x18], rax
movabs rax, 0x8e9ec03b7891aea1
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x600], rax
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x608], rax
movabs rax, 0xb206f965dd32399b
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x610], rax
movabs rax, 0x23698abcac2a94b8
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x618], rax
movdqa xmm0, xmmword [rbp]
pxor xmm0, xmmword [rbp + 0x600]
movdqa xmmword [rbp], xmm0
movdqa xmm1, xmmword [rbp + 0x610]
pxor xmm1, xmmword [rbp + 0x10]
movdqa xmmword [rbp + 0x10], xmm1
lea rdx, [rbp + 0x2b0]
mov rcx, rdi
call fcn.14002ef50
nop
lea rdx, [rbp + 0x290]
mov rcx, rax
call fcn.14002ef10
nop
lea rdx, [rbp]
mov rcx, rax
call fcn.140044ef0
movzx ebx, al
lea rcx, [rbp + 0x290]
call fcn.140041760
nop
lea rcx, [rbp + 0x2b0]
call fcn.14002f320
test bl, bl
je 0x14003a102
lea rcx, [rbp + 0x4f0]
call fcn.140041330
mov rdx, rax
lea rcx, [rbp + 0x2d0]
call fcn.140044f40
nop
mov rdx, rax
lea rcx, [rbp + 0x350]
call fcn.140041a00
nop
lea rcx, [rbp + 0x2d0]
call fcn.1400419a0
nop
lea rcx, [rbp + 0x400]
call fcn.140040b90
nop
lea rcx, [rbp + 0x4f0]
call fcn.140032b20
lea rcx, [rbp + 0x380]
call fcn.14002ffa0
mov rax, qword [rbp + 0x380]
cmp rax, qword [rbp + 0x3d0]
jne 0x140039e40
mov rbx, qword [rbp + 0x3d8]
test rbx, rbx
je 0x14003a171
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14003a171
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003a171
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
nop
mov rbx, qword [rbp + 0x388]
test rbx, rbx
je 0x14003a1a7
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14003a1a7
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003a1a7
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
nop
mov rbx, qword [rbp + 0x438]
test rbx, rbx
je 0x14003a1dc
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14003a1dc
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003a1dc
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
cmp qword [rbp + 0x360], 0
je 0x14003aa62
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x318], xmm0
mov qword [rbp + 0x328], rax
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x318], xmm1
mov qword [rbp + 0x328], r12
mov word [rsp + 0x28], 1
mov byte [rsp + 0x2a], al
lea r8, [rbp + 0x350]
cmp qword [rbp + 0x368], 0x10
cmovae r8, qword [rbp + 0x350]
add r8, qword [rbp + 0x360]
lea rdx, [rbp + 0x350]
cmp qword [rbp + 0x368], 0x10
cmovae rdx, qword [rbp + 0x350]
lea r9, [rsp + 0x28]
lea rcx, [rbp + 0x540]
call fcn.140045100
nop
lea rcx, [rbp + 0x540]
cmp qword [rbp + 0x558], 0x10
cmovae rcx, qword [rbp + 0x540]
mov r8, qword [rbp + 0x550]
cmp r8, 5
jne 0x14003aa48
lea rdx, str.users
call fcn.1400ae5f0
test eax, eax
jne 0x14003aa48
mov rdi, qword [rbp + 0x5a8]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x14003a59d
movabs r13, 0x100000001b3
movabs rcx, 0x4905d42a46728e47
movabs rax, 0xc0eaae4e17f2cde0
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x20], rcx
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x78], rax
movabs rax, 0x8e9ec03b7891aea1
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x620], rax
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x628], rax
movdqa xmm0, xmmword [rbp + 0x620]
pxor xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x330], xmm0
mov qword [rbp + 0x340], r12
mov qword [rbp + 0x348], r12
lea rax, [rsp + 0x70]
mov r8, rsi
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14003a350
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x330]
call fcn.140031c90
nop
mov r14, qword [rbx + 0x30]
lea rdx, [rbp + 0x330]
cmp qword [rbp + 0x348], 0x10
cmovae rdx, qword [rbp + 0x330]
movabs r9, 0xcbf29ce484222325
mov rcx, r12
mov r8, qword [rbp + 0x340]
test r8, r8
je 0x14003a3b3
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r13
inc rcx
cmp rcx, r8
jb 0x14003a3a0
lea r8, [rbp + 0x330]
lea rdx, [rbp + 0x180]
lea rcx, [r14 + 0x20]
call fcn.14004a9f0
cmp qword [rax + 8], 0
je 0x14003a52d
lea r8, [rbp + 0x330]
lea rdx, [rbp + 0x140]
lea rcx, [r14 + 0x20]
call fcn.140045930
mov rdx, qword [rax]
add rdx, 0x30
lea rcx, [rbp - 0x70]
call fcn.140041a90
nop
lea rdx, [rbx + 0x10]
lea rcx, [rbp - 0x50]
call fcn.140041a90
nop
mov rdx, qword [rbp + 0x320]
cmp rdx, qword [rbp + 0x328]
je 0x14003a486
mov qword [rsp + 0x50], rdx
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], r12
mov qword [rdx + 0x18], r12
movups xmm0, xmmword [rbp - 0x70]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rbp - 0x60]
movups xmmword [rdx + 0x10], xmm1
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 0xf
mov byte [rbp - 0x70], 0
xorps xmm0, xmm0
movups xmmword [rdx + 0x20], xmm0
mov qword [rdx + 0x30], r12
mov qword [rdx + 0x38], r12
movups xmm0, xmmword [rbp - 0x50]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rbp - 0x40]
movups xmmword [rdx + 0x30], xmm1
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], 0
add qword [rbp + 0x320], 0x40
jmp 0x14003a497
lea r8, [rbp - 0x70]
lea rcx, [rbp + 0x318]
call fcn.14004ad80
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x14003a4d2
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a4cd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad22
call fcn.1400ab870
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], 0
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14003a51d
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a518
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad28
call fcn.1400ab870
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 0xf
mov byte [rbp - 0x70], 0
mov rdx, qword [rbp + 0x348]
cmp rdx, 0x10
jb 0x14003a56e
inc rdx
mov rcx, qword [rbp + 0x330]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14003a569
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad2e
call fcn.1400ab870
mov qword [rbp + 0x340], r12
mov qword [rbp + 0x348], 0xf
mov byte [rbp + 0x330], 0
mov rbx, qword [rbx]
movabs r14, 0x4905d42a4617e326
cmp rbx, rdi
jne 0x14003a2ba
lea rdx, [rbp + 0x318]
lea rcx, [rbp + 0x3a0]
call fcn.140037e40
nop
cmp qword [rbp + 0x3b0], 0
je 0x14003a8df
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x30], xmm0
movdqa xmmword [rsp + 0x30], xmm0
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x390]
call fcn.140042740
mov dword [rsp + 0x2c], 0x21
lea rax, [rsp + 0x30]
mov qword [rsp + 0x50], rax
movabs rax, 0xfab0b3551dfac1f5
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x80], rax
movabs rax, 0x4905d42a4617975e
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x78], rax
movabs rax, 0x8e9ec03b7891aea1
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x5e0], rax
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x5e8], rax
movdqa xmm0, xmmword [rbp + 0x5e0]
pxor xmm0, xmmword [rbp - 0x80]
movdqa xmmword [rbp - 0x80], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
xor eax, eax
mov qword [rsp + 0x38], rax
movzx edx, byte [rsp + 0x30]
lea rcx, [rsp + 0x38]
call fcn.140042c90
mov byte [rsp + 0x30], 3
xorps xmm0, xmm0
movups xmmword [rbp + 0x420], xmm0
mov ecx, 0x20
call fcn.1400abb10
mov rbx, rax
lea rax, [rbp + 0x310]
mov qword [rbp + 0x420], rax
mov qword [rbp + 0x428], rbx
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], r12
lea rax, [rbp - 0x80]
inc rsi
cmp byte [rax + rsi], 0
jne 0x14003a6c0
mov r8, rsi
lea rdx, [rbp - 0x80]
mov rcx, rbx
call fcn.140031c90
mov qword [rbp + 0x428], r12
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x30]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x5e0]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x5e0], xmm0
mov qword [rbp + 0x5f0], r12
mov qword [rbp + 0x5f8], r12
mov r8d, 8
lea rdx, str.filename
lea rcx, [rbp + 0x5e0]
call fcn.140031c90
nop
lea rdx, [rbp + 0x5e0]
lea rcx, [rbp + 0x390]
call fcn.140040a70
nop
movzx edx, byte [rax]
movzx ecx, byte [rsp + 0x30]
mov byte [rax], cl
mov byte [rsp + 0x30], dl
mov rcx, qword [rax + 8]
mov rdx, qword [rsp + 0x38]
mov qword [rax + 8], rdx
mov qword [rsp + 0x38], rcx
movzx edx, byte [rsp + 0x30]
lea rcx, [rsp + 0x38]
call fcn.140042c90
lea rax, [rbp + 0x100]
mov qword [rsp + 0x50], rax
lea rdx, [rbp + 0x3a0]
cmp qword [rbp + 0x3b8], 0x10
cmovae rdx, qword [rbp + 0x3a0]
mov r8, qword [rbp + 0x3b0]
lea rcx, [rbp + 0x40]
call fcn.140043f40
mov edi, 0x61
mov dword [rsp + 0x2c], edi
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x100]
call fcn.140044210
mov rbx, rax
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x5e0]
mov qword [rsp + 0x58], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x5e0], xmm0
mov qword [rbp + 0x5f0], r12
mov qword [rbp + 0x5f8], r12
lea r8d, [rdi - 0x5a]
lea rdx, str.content
lea rcx, [rbp + 0x5e0]
call fcn.140031c90
nop
lea rdx, [rbp + 0x5e0]
lea rcx, [rbp + 0x390]
call fcn.140040a70
nop
movzx edx, byte [rax]
movzx ecx, byte [rbx]
mov byte [rax], cl
mov byte [rbx], dl
mov rcx, qword [rax + 8]
mov rdx, qword [rbx + 8]
mov qword [rax + 8], rdx
mov qword [rbx + 8], rcx
movzx edx, byte [rbx]
lea rcx, [rbx + 8]
call fcn.140042c90
and edi, 0xffffffbf
mov dword [rsp + 0x2c], edi
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x14003a87b
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a876
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad1c
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0x50], xmm0
mov byte [rbp + 0x40], 0
lea rax, [rbp + 0x40]
mov qword [rsp + 0x58], rax
lea rdx, [rbp + 0x450]
lea rcx, [rbp + 0x40]
call fcn.140041a90
nop
mov rdx, rax
lea rcx, [0x140132110]
call fcn.140040a70
lea rdx, [rbp + 0x390]
mov rcx, rax
call fcn.140040990
and edi, 0xffffffdf
mov dword [rsp + 0x2c], edi
movzx edx, byte [rbp + 0x390]
lea rcx, [rbp + 0x398]
call fcn.140042c90
nop
mov rdx, qword [rbp + 0x3b8]
cmp rdx, 0x10
jb 0x14003a920
inc rdx
mov rcx, qword [rbp + 0x3a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a91b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad34
call fcn.1400ab870
mov qword [rbp + 0x3b0], r12
mov qword [rbp + 0x3b8], 0xf
mov byte [rbp + 0x3a0], 0
lea rax, [rbp + 0x5a0]
mov qword [rsp + 0x58], rax
lea rcx, [rbp + 0x5a0]
call fcn.140039710
nop
lea rax, [rbp + 0x560]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x560]
call fcn.140039670
nop
mov rdx, qword [rbp + 0x558]
cmp rdx, 0x10
jb 0x14003a9ac
inc rdx
mov rcx, qword [rbp + 0x540]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a9a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad3a
call fcn.1400ab870
mov qword [rbp + 0x550], r12
mov qword [rbp + 0x558], 0xf
mov byte [rbp + 0x540], 0
mov rbx, qword [rbp + 0x318]
test rbx, rbx
je 0x14003aa62
mov rdi, qword [rbp + 0x320]
cmp rbx, rdi
je 0x14003a9f9
mov rcx, rbx
call fcn.1400376c0
add rbx, 0x40
cmp rbx, rdi
jne 0x14003a9e1
mov rbx, qword [rbp + 0x318]
mov rdx, qword [rbp + 0x328]
sub rdx, rbx
and rdx, 0xffffffffffffffc0
mov rax, rbx
cmp rdx, 0x1000
jb 0x14003aa2c
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad40
mov rcx, rbx
call fcn.1400ab870
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x318], xmm0
mov qword [rbp + 0x328], r12
jmp 0x14003aa62
lea rcx, [rbp + 0x540]
call fcn.1400395c0
nop
lea rcx, [rbp + 0x318]
call fcn.1400402d0
nop
mov rdx, qword [rbp + 0x368]
cmp rdx, 0x10
jb 0x14003aaa3
inc rdx
mov rcx, qword [rbp + 0x350]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003aa9e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad46
call fcn.1400ab870
mov qword [rbp + 0x360], r12
mov qword [rbp + 0x368], 0xf
mov byte [rbp + 0x350], 0
mov rdx, qword [rbp + 0x488]
cmp rdx, 8
jb 0x14003ab02
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x470]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003aafd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad4c
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a190]
movdqu xmmword [rbp + 0x480], xmm0
mov word [rbp + 0x470], r12w
mov rdx, qword [rbp + 0x4a8]
cmp rdx, 0x10
jb 0x14003ab5b
inc rdx
mov rcx, qword [rbp + 0x490]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ab56
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad52
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0x4a0], xmm0
mov byte [rbp + 0x490], 0
mov rdx, qword [rbp + 0x3f8]
cmp rdx, 8
jb 0x14003abb8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003abb3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad58
call fcn.1400ab870
mov qword [rbp + 0x3f0], r12
mov qword [rbp + 0x3f8], 7
mov word [rbp + 0x3e0], r12w
mov rdx, qword [rbp + 0x4c8]
cmp rdx, 0x10
jb 0x14003ac13
inc rdx
mov rcx, qword [rbp + 0x4b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ac0e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad5e
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0x4c0], xmm0
mov byte [rbp + 0x4b0], 0
mov rdx, qword [rbp + 0x4e8]
cmp rdx, 0x10
jb 0x14003ac6b
inc rdx
mov rcx, qword [rbp + 0x4d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ac66
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad64
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0x4e0], xmm0
mov byte [rbp + 0x4d0], 0
mov rdx, qword [rbp + 0x468]
cmp rdx, 0x10
jb 0x14003acbf
inc rdx
mov rcx, qword [rbp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003acba
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad06
call fcn.1400ab870
movdqa xmm0, xmmword [0x14011a1a0]
movdqu xmmword [rbp + 0x460], xmm0
mov byte [rbp + 0x450], 0
mov rcx, qword [rbp + 0x680]
xor rcx, rsp
call fcn.1400ab850
lea r11, [rsp + 0x790]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14008f288
nop
mov r8, rdi
lea rcx, str.status
call fcn.14002faa0
nop
call fcn.14008f288
nop
call fcn.14008f288
nop
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.14008f288
nop
call fcn.14008f288
nop
call fcn.14008f288
nop
call fcn.14008f288
int3