Function at 0x140039820
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 [0x140104bf0]
xor rax, rsp
mov qword [rbp + 0x680], rax
mov dword [rsp + 0x2c], 1
movabs rax, 0x68c4e66e952cf146
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x20], rax
movabs r14, 0x2970172263accd7e
mov qword [rsp + 0x20], r14
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x18], rax
movabs rbx, 0x68c4e603f4498515
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.140031ce0
nop
movabs rax, 0x2d96a754a00fca46
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x20], rax
movabs rax, 0x7a2c72540fcd9b22
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x28], rax
movabs rax, 0xdb137b892a298713
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x30], rax
movabs rcx, 0x4223cb105d727468
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, 0xdb137b894748e267
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.140031ce0
nop
movabs rax, 0x1ca5b66e952cf146
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x10], rax
movabs rax, 0x2970172263accd16
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.140031ce0
nop
lea r9, [rbp + 0x4b0]
lea r8, [rbp + 0x4d0]
mov rdx, 0xffffffff80000001
lea rcx, [rbp + 0x230]
call fcn.14008b7e0
nop
mov rdx, rax
lea rcx, [rbp + 0x3e0]
call fcn.140044250
nop
lea rcx, [rbp + 0x230]
call fcn.140041990
xor r12d, r12d
cmp qword [rbp + 0x3f0], r12
jne 0x140039a95
lea rcx, [rbp + 0x3e0]
call fcn.140030310
test al, al
je 0x14003ac02
movabs rax, 0x68c4e6039a2ff666
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.140031ce0
nop
lea rdx, [rbp + 0x3e0]
lea rcx, [rbp + 0x440]
call fcn.140030020
nop
lea rcx, [rbp + 0x370]
call fcn.1400303a0
lea rax, [rbp + 0x80]
mov qword [rsp + 0x40], rax
lea rdx, [rbp + 0x440]
lea rcx, [rbp + 0x80]
call fcn.140032ae0
nop
mov rdx, rax
lea rcx, [rbp + 0x370]
call fcn.140030180
nop
lea rcx, [rbp + 0x410]
call fcn.1400303a0
lea rax, [rbp + 0x90]
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x440]
lea rcx, [rbp + 0x90]
call fcn.140032ae0
nop
mov rdx, rax
lea rcx, [rbp + 0x410]
call fcn.140030260
nop
mov rax, qword [rbp + 0x370]
cmp rax, qword [rbp + 0x410]
je 0x140039d8f
lea rdi, [rax + 0x20]
lea rdx, [rbp + 0x1d0]
mov rcx, rdi
call fcn.14002f020
nop
lea rdx, [rbp + 0x1b0]
mov rcx, rax
call fcn.14002eeb0
nop
mov r9d, 4
xor r8d, r8d
lea rdx, [rbp + 0x190]
mov rcx, rax
call fcn.140041850
nop
lea rdx, [rbp + 0x490]
mov rcx, rax
call fcn.1400442b0
movzx ebx, al
lea rcx, [rbp + 0x190]
call fcn.140041990
nop
lea rcx, [rbp + 0x1b0]
call fcn.140041990
nop
lea rcx, [rbp + 0x1d0]
call fcn.14002f3f0
test bl, bl
je 0x140039d6f
mov rdx, rdi
lea rcx, [rbp + 0x518]
call fcn.140083e90
nop
cmp byte [rbp + 0x538], 0
je 0x140039d63
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xf0], xmm0
lea rdx, [rbp + 0xf0]
lea rcx, [rbp + 0x3c0]
call fcn.140040c60
nop
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x210]
mov rcx, rdi
call fcn.14002f020
nop
lea rdx, [rbp + 0x1f0]
mov rcx, rax
call fcn.14002eeb0
nop
mov rdx, rax
lea rcx, [rbp + 0xa0]
call fcn.140044380
mov rbx, rax
lea rdx, str.filename
lea rcx, [rbp + 0x3c0]
call fcn.1400442f0
mov rcx, rax
mov rdx, rbx
call fcn.140040c00
nop
lea rcx, [rbp + 0x1f0]
call fcn.140041990
nop
lea rcx, [rbp + 0x210]
call fcn.14002f3f0
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x518]
call fcn.140041300
mov rdx, rax
lea rcx, [rbp + 0xb0]
call fcn.140044350
mov rbx, rax
lea rdx, str.content
lea rcx, [rbp + 0x3c0]
call fcn.1400442f0
mov rcx, rax
mov rdx, rbx
call fcn.140040c00
lea rax, [rbp + 0x2f0]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x450]
lea rcx, [rbp + 0x2f0]
call fcn.140041a80
nop
mov rdx, rax
lea rcx, [0x140105070]
call fcn.140040ac0
lea rdx, [rbp + 0x3c0]
mov rcx, rax
call fcn.1400409e0
nop
lea rcx, [rbp + 0x3c0]
call fcn.140040be0
nop
lea rcx, [rbp + 0x518]
call fcn.140032b10
lea rcx, [rbp + 0x370]
call fcn.140030070
mov rax, qword [rbp + 0x370]
cmp rax, qword [rbp + 0x410]
jne 0x140039ba0
lea rcx, [rbp + 0x410]
call fcn.140030210
nop
lea rcx, [rbp + 0x370]
call fcn.140030210
nop
lea rcx, [rbp + 0x440]
call fcn.140030210
lea rcx, [rbp + 0x110]
call fcn.140045010
nop
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0x3e0]
lea rcx, [rbp + 0x470]
call fcn.14002f320
nop
lea rcx, [rbp + 0x110]
call fcn.14002f3f0
lea rcx, [rbp + 0x350]
call fcn.140041ba0
nop
lea rcx, [rbp + 0x470]
call fcn.140030310
mov rsi, 0xffffffffffffffff
test al, al
je 0x14003a26c
lea rdx, [rbp + 0x470]
lea rcx, [rbp + 0x430]
call fcn.140030020
nop
lea rcx, [rbp + 0x380]
call fcn.1400303a0
lea rax, [rbp + 0xc0]
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x430]
lea rcx, [rbp + 0xc0]
call fcn.140032ae0
nop
mov rdx, rax
lea rcx, [rbp + 0x380]
call fcn.140030180
nop
lea rcx, [rbp + 0x3d0]
call fcn.1400303a0
lea rax, [rbp + 0xd0]
mov qword [rsp + 0x40], rax
lea rdx, [rbp + 0x430]
lea rcx, [rbp + 0xd0]
call fcn.140032ae0
nop
mov rdx, rax
lea rcx, [rbp + 0x3d0]
call fcn.140030260
nop
mov rax, qword [rbp + 0x380]
cmp rax, qword [rbp + 0x3d0]
je 0x14003a1cb
movabs r15, 0x68ade664f4268579
movabs r13, 0x2915175163d9cd10
nop word [rax + rax]
lea rdi, [rax + 0x20]
mov rdx, rdi
lea rcx, [rbp + 0x130]
call fcn.1400303b0
movsd xmm0, qword [rax]
movsd qword [rsp + 0x58], xmm0
mov edx, dword [rax + 8]
mov ecx, dword [rsp + 0x58]
test edx, edx
je 0x140039f06
lea eax, [rcx - 1]
test eax, 0xfffffff7
jne 0x14003ad9c
cmp ecx, 3
je 0x14003a1ab
mov rdx, rdi
lea rcx, [rbp + 0x4f0]
call fcn.140083e90
nop
cmp byte [rbp + 0x510], 0
je 0x14003a19f
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xe0], xmm0
lea rdx, [rbp + 0xe0]
lea rcx, [rbp + 0x400]
call fcn.140040c60
nop
lea rax, [rbp + 0x70]
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x250]
mov rcx, rdi
call fcn.14002f020
nop
lea rdx, [rbp + 0x160]
mov rcx, rax
call fcn.14002eeb0
nop
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.140044380
mov rbx, rax
lea rdx, str.filename
lea rcx, [rbp + 0x400]
call fcn.1400442f0
mov rcx, rax
mov rdx, rbx
call fcn.140040c00
nop
lea rcx, [rbp + 0x160]
call fcn.140041990
nop
lea rcx, [rbp + 0x250]
call fcn.14002f3f0
lea rax, [rbp + 0x60]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0x4f0]
call fcn.140041300
mov rdx, rax
lea rcx, [rbp + 0x60]
call fcn.140044350
mov rbx, rax
lea rdx, str.content
lea rcx, [rbp + 0x400]
call fcn.1400442f0
mov rcx, rax
mov rdx, rbx
call fcn.140040c00
lea rax, [rbp + 0x270]
mov qword [rsp + 0x50], rax
lea rdx, [rbp + 0x450]
lea rcx, [rbp + 0x270]
call fcn.140041a80
nop
mov rdx, rax
lea rcx, [0x140105070]
call fcn.140040ac0
lea rdx, [rbp + 0x400]
mov rcx, rax
call fcn.1400409e0
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, 0xdb657ba7473be215
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x10], rax
movabs rax, 0x4223cb105d14740c
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x18], rax
movabs rax, 0x68c4e603f4498515
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, 0xdb137b894748e267
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp + 0x610], rax
movabs rax, 0x4223cb105d727468
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.14002f020
nop
lea rdx, [rbp + 0x290]
mov rcx, rax
call fcn.14002efe0
nop
lea rdx, [rbp]
mov rcx, rax
call fcn.140045060
movzx ebx, al
lea rcx, [rbp + 0x290]
call fcn.140041740
nop
lea rcx, [rbp + 0x2b0]
call fcn.14002f3f0
test bl, bl
je 0x14003a192
lea rcx, [rbp + 0x4f0]
call fcn.140041300
mov rdx, rax
lea rcx, [rbp + 0x2d0]
call fcn.1400450b0
nop
mov rdx, rax
lea rcx, [rbp + 0x350]
call fcn.1400419f0
nop
lea rcx, [rbp + 0x2d0]
call fcn.140041990
nop
lea rcx, [rbp + 0x400]
call fcn.140040be0
nop
lea rcx, [rbp + 0x4f0]
call fcn.140032bb0
lea rcx, [rbp + 0x380]
call fcn.140030070
mov rax, qword [rbp + 0x380]
cmp rax, qword [rbp + 0x3d0]
jne 0x140039ed0
mov rbx, qword [rbp + 0x3d8]
test rbx, rbx
je 0x14003a201
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14003a201
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003a201
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + htons]
nop
mov rbx, qword [rbp + 0x388]
test rbx, rbx
je 0x14003a237
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14003a237
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003a237
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + htons]
nop
mov rbx, qword [rbp + 0x438]
test rbx, rbx
je 0x14003a26c
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14003a26c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14003a26c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + htons]
cmp qword [rbp + 0x360], 0
je 0x14003aaf2
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.140045270
nop
lea rcx, [rbp + 0x540]
cmp qword [rbp + 0x558], 0x10
cmovae rcx, qword [rbp + 0x540]
mov r8, qword [rbp + 0x550]
cmp r8, 5
jne 0x14003aad8
lea rdx, str.users
call fcn.1400b7a80
test eax, eax
jne 0x14003aad8
mov rdi, qword [rbp + 0x5a8]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x14003a62d
movabs r13, 0x100000001b3
movabs rcx, 0x2970172263c9a01f
movabs rax, 0x26b088769b2ae654
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, 0x68c4e603f4498515
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 0x14003a3e0
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x330]
call fcn.140031d20
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 0x14003a443
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r13
inc rcx
cmp rcx, r8
jb 0x14003a430
lea r8, [rbp + 0x330]
lea rdx, [rbp + 0x180]
lea rcx, [r14 + 0x20]
call fcn.14004ac30
cmp qword [rax + 8], 0
je 0x14003a5bd
lea r8, [rbp + 0x330]
lea rdx, [rbp + 0x140]
lea rcx, [r14 + 0x20]
call fcn.140045b00
mov rdx, qword [rax]
add rdx, 0x30
lea rcx, [rbp - 0x70]
call fcn.140041a80
nop
lea rdx, [rbx + 0x10]
lea rcx, [rbp - 0x50]
call fcn.140041a80
nop
mov rdx, qword [rbp + 0x320]
cmp rdx, qword [rbp + 0x328]
je 0x14003a516
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], send
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], send
mov byte [rbp - 0x50], 0
add qword [rbp + 0x320], 0x40
jmp 0x14003a527
lea r8, [rbp - 0x70]
lea rcx, [rbp + 0x318]
call fcn.14004afc0
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x14003a562
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a55d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003adb2
call fcn.1400b4b80
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], send
mov byte [rbp - 0x50], 0
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14003a5ad
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a5a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003adb8
call fcn.1400b4b80
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], send
mov byte [rbp - 0x70], 0
mov rdx, qword [rbp + 0x348]
cmp rdx, 0x10
jb 0x14003a5fe
inc rdx
mov rcx, qword [rbp + 0x330]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14003a5f9
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003adbe
call fcn.1400b4b80
mov qword [rbp + 0x340], r12
mov qword [rbp + 0x348], send
mov byte [rbp + 0x330], 0
mov rbx, qword [rbx]
movabs r14, 0x2970172263accd7e
cmp rbx, rdi
jne 0x14003a34a
lea rdx, [rbp + 0x318]
lea rcx, [rbp + 0x3a0]
call fcn.140037ed0
nop
cmp qword [rbp + 0x3b0], 0
je 0x14003a96f
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x30], xmm0
movdqa xmmword [rsp + 0x30], xmm0
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x390]
call fcn.140042870
mov dword [rsp + 0x2c], 0x21
lea rax, [rsp + 0x30]
mov qword [rsp + 0x50], rax
movabs rax, 0x1cea956d9122ea41
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x80], rax
movabs rax, 0x2970172263acb906
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
mov qword [rbp - 0x78], rax
movabs rax, 0x68c4e603f4498515
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.140042e00
mov byte [rsp + 0x30], 3
xorps xmm0, xmm0
movups xmmword [rbp + 0x420], xmm0
mov ecx, 0x20
call fcn.1400b4e20
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 0x14003a750
mov r8, rsi
lea rdx, [rbp - 0x80]
mov rcx, rbx
call fcn.140031d20
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.140031d20
nop
lea rdx, [rbp + 0x5e0]
lea rcx, [rbp + 0x390]
call fcn.140040ac0
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.140042e00
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.1400440b0
mov edi, 0x61
mov dword [rsp + 0x2c], edi
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x100]
call fcn.140044380
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.140031d20
nop
lea rdx, [rbp + 0x5e0]
lea rcx, [rbp + 0x390]
call fcn.140040ac0
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.140042e00
and edi, 0xffffffbf
mov dword [rsp + 0x2c], edi
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x14003a90b
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a906
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003adac
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
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.140041a80
nop
mov rdx, rax
lea rcx, [0x140105070]
call fcn.140040ac0
lea rdx, [rbp + 0x390]
mov rcx, rax
call fcn.1400409e0
and edi, 0xffffffdf
mov dword [rsp + 0x2c], edi
movzx edx, byte [rbp + 0x390]
lea rcx, [rbp + 0x398]
call fcn.140042e00
nop
mov rdx, qword [rbp + 0x3b8]
cmp rdx, 0x10
jb 0x14003a9b0
inc rdx
mov rcx, qword [rbp + 0x3a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a9ab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003adc4
call fcn.1400b4b80
mov qword [rbp + 0x3b0], r12
mov qword [rbp + 0x3b8], send
mov byte [rbp + 0x3a0], 0
lea rax, [rbp + 0x5a0]
mov qword [rsp + 0x58], rax
lea rcx, [rbp + 0x5a0]
call fcn.1400397a0
nop
lea rax, [rbp + 0x560]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x560]
call fcn.140039700
nop
mov rdx, qword [rbp + 0x558]
cmp rdx, 0x10
jb 0x14003aa3c
inc rdx
mov rcx, qword [rbp + 0x540]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003aa37
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003adca
call fcn.1400b4b80
mov qword [rbp + 0x550], r12
mov qword [rbp + 0x558], send
mov byte [rbp + 0x540], 0
mov rbx, qword [rbp + 0x318]
test rbx, rbx
je 0x14003aaf2
mov rdi, qword [rbp + 0x320]
cmp rbx, rdi
je 0x14003aa89
mov rcx, rbx
call fcn.140037750
add rbx, 0x40
cmp rbx, rdi
jne 0x14003aa71
mov rbx, qword [rbp + 0x318]
mov rdx, qword [rbp + 0x328]
sub rdx, rbx
and rdx, 0xffffffffffffffc0
mov rax, rbx
cmp rdx, 0x1000
jb 0x14003aabc
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003add0
mov rcx, rbx
call fcn.1400b4b80
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x318], xmm0
mov qword [rbp + 0x328], r12
jmp 0x14003aaf2
lea rcx, [rbp + 0x540]
call fcn.140039650
nop
lea rcx, [rbp + 0x318]
call fcn.140040320
nop
mov rdx, qword [rbp + 0x368]
cmp rdx, 0x10
jb 0x14003ab33
inc rdx
mov rcx, qword [rbp + 0x350]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ab2e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003add6
call fcn.1400b4b80
mov qword [rbp + 0x360], r12
mov qword [rbp + 0x368], send
mov byte [rbp + 0x350], 0
mov rdx, qword [rbp + 0x488]
cmp rdx, 8
jb 0x14003ab92
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x470]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ab8d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003addc
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4c0]
movdqu xmmword [rbp + 0x480], xmm0
mov word [rbp + 0x470], r12w
mov rdx, qword [rbp + 0x4a8]
cmp rdx, 0x10
jb 0x14003abeb
inc rdx
mov rcx, qword [rbp + 0x490]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003abe6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ade2
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
movdqu xmmword [rbp + 0x4a0], xmm0
mov byte [rbp + 0x490], 0
mov rdx, qword [rbp + 0x3f8]
cmp rdx, 8
jb 0x14003ac48
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ac43
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ade8
call fcn.1400b4b80
mov qword [rbp + 0x3f0], r12
mov qword [rbp + 0x3f8], 7
mov word [rbp + 0x3e0], r12w
mov rdx, qword [rbp + 0x4c8]
cmp rdx, 0x10
jb 0x14003aca3
inc rdx
mov rcx, qword [rbp + 0x4b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ac9e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003adee
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
movdqu xmmword [rbp + 0x4c0], xmm0
mov byte [rbp + 0x4b0], 0
mov rdx, qword [rbp + 0x4e8]
cmp rdx, 0x10
jb 0x14003acfb
inc rdx
mov rcx, qword [rbp + 0x4d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003acf6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003adf4
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
movdqu xmmword [rbp + 0x4e0], xmm0
mov byte [rbp + 0x4d0], 0
mov rdx, qword [rbp + 0x468]
cmp rdx, 0x10
jb 0x14003ad4f
inc rdx
mov rcx, qword [rbp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ad4a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ad96
call fcn.1400b4b80
movdqa xmm0, xmmword [0x1400eb4d0]
movdqu xmmword [rbp + 0x460], xmm0
mov byte [rbp + 0x450], 0
mov rcx, qword [rbp + 0x680]
xor rcx, rsp
call fcn.1400b4b60
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.140098678
nop
mov r8, rdi
lea rcx, str.status
call fcn.14002fb70
nop
call fcn.140098678
nop
call fcn.140098678
nop
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.140098678
nop
call fcn.140098678
nop
call fcn.140098678
nop
call fcn.140098678
int3