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

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x2f]
sub rsp, 0x90
mov r13, rcx
lea rdx, str.maxbtn
xorps xmm0, xmm0
lea rcx, [rbp - 0x39]
xor r12d, r12d
mov r8d, 6
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x29], r12
mov qword [rbp - 0x21], r12
call fcn.140006340
mov r10, qword [rbp - 0x29]
lea r8, [rbp - 0x39]
mov rdi, qword [rbp - 0x21]
movabs r14, 0xcbf29ce484222325
mov r11, qword [rbp - 0x39]
cmp rdi, 7
mov qword [rbp - 0x41], r12
mov rdx, r14
lea r9, [r10 + r10]
cmova r8, r11
mov ecx, r12d
movabs rbx, 0x100000001b3
test r9, r9
je 0x1401b0914
nop dword [rax + rax]
movzx eax, byte [r8 + rcx]
inc rcx
xor rdx, rax
imul rdx, rbx
cmp rcx, r9
jb 0x1401b0900
mov rcx, qword [r13 + 0x388]
mov rsi, qword [r13 + 0x360]
and rcx, rdx
mov rdx, qword [r13 + 0x370]
add rcx, rcx
mov rax, qword [rdx + rcx*8 + 8]
cmp rax, rsi
je 0x1401b09a5
mov rbx, qword [rdx + rcx*8]
nop dword [rax]
cmp qword [rax + 0x28], 7
lea rdx, [rax + 0x10]
jbe 0x1401b094f
mov rdx, qword [rax + 0x10]
cmp rdi, 7
lea r9, [rbp - 0x39]
cmova r9, r11
cmp r10, qword [rax + 0x20]
jne 0x1401b0990
mov r8, r10
test r10, r10
je 0x1401b0984
sub r9, rdx
nop dword [rax]
movzx ecx, word [rdx]
cmp word [r9 + rdx], cx
jne 0x1401b0990
add rdx, 2
sub r8, 1
jne 0x1401b0970
movabs rbx, 0x100000001b3
jmp 0x1401b09a8
cmp rax, rbx
je 0x1401b099b
mov rax, qword [rax + 8]
jmp 0x1401b0940
movabs rbx, 0x100000001b3
mov rax, r12
test rax, rax
cmove rax, rsi
cmp rax, rsi
je 0x1401b09bc
mov rax, qword [rax + 0x30]
mov qword [rbp - 0x41], rax
mov qword [rsp + 0xc8], r15
cmp rdi, 7
jbe 0x1401b09ff
lea rdx, [rdi*2 + 2]
mov rax, r11
cmp rdx, 0x1000
jb 0x1401b09f7
mov r11, qword [r11 - 8]
add rdx, 0x27
sub rax, r11
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401b0c53
mov rcx, r11
call fcn.1403ca488
xorps xmm0, xmm0
mov qword [rbp - 9], r12
mov r8d, 0xa
mov qword [rbp - 1], r12
lea rdx, str.restorebtn
lea rcx, [rbp - 0x19]
movups xmmword [rbp - 0x19], xmm0
call fcn.140006340
mov r10, qword [rbp - 9]
lea r8, [rbp - 0x19]
mov rdi, qword [rbp - 1]
mov r15, r12
mov r11, qword [rbp - 0x19]
cmp rdi, 7
mov rdx, r14
mov rcx, r12
lea r9, [r10 + r10]
cmova r8, r11
test r9, r9
je 0x1401b0a64
nop
movzx eax, byte [r8 + rcx]
inc rcx
xor rdx, rax
imul rdx, rbx
cmp rcx, r9
jb 0x1401b0a50
mov rcx, qword [r13 + 0x388]
mov rsi, qword [r13 + 0x360]
and rcx, rdx
mov rdx, qword [r13 + 0x370]
add rcx, rcx
mov rax, qword [rdx + rcx*8 + 8]
cmp rax, rsi
je 0x1401b0ae1
mov rbx, qword [rdx + rcx*8]
nop dword [rax]
cmp qword [rax + 0x28], 7
lea rdx, [rax + 0x10]
jbe 0x1401b0a9f
mov rdx, qword [rax + 0x10]
cmp rdi, 7
lea r9, [rbp - 0x19]
cmova r9, r11
cmp r10, qword [rax + 0x20]
jne 0x1401b0ad6
mov r8, r10
test r10, r10
je 0x1401b0ae4
sub r9, rdx
nop dword [rax]
movzx ecx, word [rdx]
cmp word [rdx + r9], cx
jne 0x1401b0ad6
add rdx, 2
sub r8, 1
jne 0x1401b0ac0
jmp 0x1401b0ae4
cmp rax, rbx
je 0x1401b0ae1
mov rax, qword [rax + 8]
jmp 0x1401b0a90
mov rax, r12
test rax, rax
cmove rax, rsi
cmp rax, rsi
je 0x1401b0af4
mov r15, qword [rax + 0x30]
cmp rdi, 7
jbe 0x1401b0b2f
lea rdx, [rdi*2 + 2]
mov rax, r11
cmp rdx, 0x1000
jb 0x1401b0b27
mov r11, qword [r11 - 8]
add rdx, 0x27
sub rax, r11
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401b0c53
mov rcx, r11
call fcn.1403ca488
xorps xmm0, xmm0
mov qword [rbp + 0x17], r12
mov r8d, 8
mov qword [rbp + 0x1f], r12
lea rdx, str.closebtn
lea rcx, [rbp + 7]
movups xmmword [rbp + 7], xmm0
call fcn.140006340
mov r11, qword [rbp + 0x17]
lea rdx, [rbp + 7]
mov rdi, qword [rbp + 0x1f]
mov rcx, r12
mov r10, qword [rbp + 7]
cmp rdi, 7
lea r8, [r11 + r11]
cmova rdx, r10
test r8, r8
je 0x1401b0b95
movabs r9, 0x100000001b3
movzx eax, byte [rdx + rcx]
inc rcx
xor r14, rax
imul r14, r9
cmp rcx, r8
jb 0x1401b0b82
mov rcx, qword [r13 + 0x388]
mov rdx, qword [r13 + 0x370]
and rcx, r14
mov rsi, qword [r13 + 0x360]
add rcx, rcx
mov rax, qword [rdx + rcx*8 + 8]
cmp rax, rsi
je 0x1401b0c11
mov rbx, qword [rdx + rcx*8]
nop
cmp qword [rax + 0x28], 7
lea rdx, [rax + 0x10]
jbe 0x1401b0bcf
mov rdx, qword [rax + 0x10]
cmp rdi, 7
lea r9, [rbp + 7]
cmova r9, r10
cmp r11, qword [rax + 0x20]
jne 0x1401b0c06
mov r8, r11
test r11, r11
je 0x1401b0c14
sub r9, rdx
nop dword [rax]
movzx ecx, word [rdx]
cmp word [rdx + r9], cx
jne 0x1401b0c06
add rdx, 2
sub r8, 1
jne 0x1401b0bf0
jmp 0x1401b0c14
cmp rax, rbx
je 0x1401b0c11
mov rax, qword [rax + 8]
jmp 0x1401b0bc0
mov rax, r12
test rax, rax
cmove rax, rsi
cmp rax, rsi
je 0x1401b0c24
mov r12, qword [rax + 0x30]
cmp rdi, 7
jbe 0x1401b0c62
lea rdx, [rdi*2 + 2]
mov rax, r10
cmp rdx, 0x1000
jb 0x1401b0c5a
mov r10, qword [r10 - 8]
add rdx, 0x27
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1401b0c5a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r10
call fcn.1403ca488
test r12, r12
je 0x1401b0c7c
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x128]
test al, al
je 0x1401b0d01
mov rcx, qword [r13 + 0x10]
call qword [sym.imp.USER32.dll_IsZoomed]
test eax, eax
jne 0x1401b0cc2
cmp byte [r13 + 0xf1], al
je 0x1401b0d01
mov rcx, qword [rbp - 0x41]
test rcx, rcx
je 0x1401b0cba
test r15, r15
je 0x1401b0cba
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x110]
mov rax, qword [r15]
mov dl, 1
mov rcx, r15
call qword [rax + 0x110]
mov r8d, 0xf030
jmp 0x1401b0cef
mov rcx, qword [rbp - 0x41]
test rcx, rcx
je 0x1401b0ce9
test r15, r15
je 0x1401b0ce9
mov rax, qword [rcx]
mov dl, 1
call qword [rax + 0x110]
mov rax, qword [r15]
xor edx, edx
mov rcx, r15
call qword [rax + 0x110]
mov r8d, 0xf120
mov rcx, qword [r13 + 0x10]
xor r9d, r9d
mov edx, 0x112
call qword [sym.imp.USER32.dll_SendMessageW]
mov r15, qword [rsp + 0xc8]
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x40]
xor eax, eax
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rbp
ret