Function at 0x180084c80
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push r14
mov rbp, rsp
sub rsp, 0x20
xor ebx, ebx
mov dword [rbp + 0x28], 0x344a5375
mov r8d, ebx
lea r9, [rbp + 0x28]
mov r14d, 0x2f684bdb
mov eax, r14d
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
mov al, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9], al
inc r9
cmp r8d, 4
jl 0x180084ca6
mov dword [rbp + 0x30], 0x6b777d65
lea r9, [rbp + 0x30]
mov dword [rbp + 0x34], 0x384e5d66
mov r8d, ebx
mov eax, r14d
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
mov al, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9], al
inc r9
cmp r8d, 8
jl 0x180084ce9
lea rdx, [rbp + 0x30]
mov byte [rbp + 0x20], bl
lea rcx, [rbp + 0x20]
call fcn.180096e20
mov rdx, qword [0x1800ed108]
movabs rsi, 0x7ffffffdfffe
cmp rax, rdx
jbe 0x180084d49
add rdx, qword [0x1800ed110]
cmp rax, rdx
jb 0x180084d5a
lea rcx, [rax - 0x10000]
cmp rcx, rsi
jbe 0x180084d5a
mov rax, rbx
jmp 0x180084d69
mov r8b, 1
lea rdx, [rbp + 0x28]
mov rcx, rax
call fcn.180096f64
mov qword [0x1800ed488], rax
lea r9, [rbp + 0x28]
mov dword [rbp + 0x28], 0x345d4762
mov r8d, ebx
mov eax, r14d
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
mov al, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9], al
inc r9
cmp r8d, 4
jl 0x180084d7e
mov dword [rbp + 0x30], 0x6b777d65
lea r9, [rbp + 0x30]
mov dword [rbp + 0x34], 0x384e5d66
mov r8d, ebx
mov eax, r14d
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
mov al, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9], al
inc r9
cmp r8d, 8
jl 0x180084dc1
lea rdx, [rbp + 0x30]
mov byte [rbp + 0x20], bl
lea rcx, [rbp + 0x20]
call fcn.180096e20
mov rdx, qword [0x1800ed108]
cmp rax, rdx
jbe 0x180084e17
add rdx, qword [0x1800ed110]
cmp rax, rdx
jb 0x180084e28
lea rcx, [rax - 0x10000]
cmp rcx, rsi
jbe 0x180084e28
mov rax, rbx
jmp 0x180084e37
mov r8b, 1
lea rdx, [rbp + 0x28]
mov rcx, rax
call fcn.180096f64
mov qword [0x1800ed490], rax
lea r9, [rbp + 0x28]
mov dword [rbp + 0x28], 0x5c545b7f
mov r8d, ebx
mov word [rbp + 0x2c], 0x3641
mov eax, r14d
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
mov al, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9], al
inc r9
cmp r8d, 6
jl 0x180084e52
mov dword [rbp + 0x30], 0x6b777d65
lea r9, [rbp + 0x30]
mov dword [rbp + 0x34], 0x384e5d66
mov r8d, ebx
mov eax, r14d
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
mov al, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9], al
inc r9
cmp r8d, 8
jl 0x180084e95
lea rdx, [rbp + 0x30]
mov byte [rbp + 0x20], bl
lea rcx, [rbp + 0x20]
call fcn.180096e20
mov rdx, qword [0x1800ed108]
cmp rax, rdx
jbe 0x180084eeb
add rdx, qword [0x1800ed110]
cmp rax, rdx
jb 0x180084efc
lea rcx, [rax - 0x10000]
cmp rcx, rsi
jbe 0x180084efc
mov rax, rbx
jmp 0x180084f0b
mov r8b, 1
lea rdx, [rbp + 0x28]
mov rcx, rax
call fcn.180096f64
mov qword [0x1800ed498], rax
lea r9, [rbp + 0x30]
mov dword [rbp + 0x30], 0x5d515f70
mov r8d, ebx
mov dword [rbp + 0x34], 0x38435850
mov eax, r14d
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
mov al, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9], al
inc r9
cmp r8d, 8
jl 0x180084f27
mov dword [rbp + 0x28], 0x6b777d65
lea r9, [rbp + 0x28]
mov dword [rbp + 0x2c], 0x384e5d66
mov r8d, ebx
mov eax, r14d
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
mov al, r8b
inc r8d
sub al, cl
add al, 0x31
xor byte [r9], al
inc r9
cmp r8d, 8
jl 0x180084f6a
lea rdx, [rbp + 0x28]
mov byte [rbp + 0x20], bl
lea rcx, [rbp + 0x20]
call fcn.180096e20
mov rdx, qword [0x1800ed108]
cmp rax, rdx
jbe 0x180084fc0
add rdx, qword [0x1800ed110]
cmp rax, rdx
jb 0x180084fcc
lea rcx, [rax - 0x10000]
cmp rcx, rsi
ja 0x180084fde
mov r8b, 1
lea rdx, [rbp + 0x30]
mov rcx, rax
call fcn.180096f64
mov rbx, rax
mov qword [0x1800ed4a0], rbx
mov rbx, qword [rsp + 0x58]
add rsp, 0x20
pop r14
pop rsi
pop rbp
ret