Function at 0x14000174c
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
movsxd rax, dword [0x14060b220]
mov r14, rdx
movzx edx, word [0x14060b250]
mov r11, r8
movsxd r8, dword [0x14060b208]
xor rax, rdx
movzx r13d, word [0x14060b200]
mov r9d, 1
movzx r10d, word [0x14060b204]
movzx ebp, word [0x14060b278]
add r10w, cx
mov qword [rsp + 0x28], rax
mov eax, 0x206
add r13w, ax
movzx r15d, cx
movsxd rax, dword [r11 + r8*4]
add ebp, r15d
xor rax, 0xff1
mov qword [rsp + 0x30], rdx
mov edx, dword [0x14060b254]
add r8d, r9d
mov qword [rsp + 0xa8], rax
add edx, r9d
mov rax, qword [0x14060b1e0]
movzx esi, cx
mov word [rsp + 0x98], r13w
mov dword [rsp + 0xa0], r15d
movzx eax, byte [rsi + rax]
mov qword [rsp + 0x38], rax
lea eax, [r8*2 + 0x15]
movsxd rcx, eax
movzx eax, word [0x14060b230]
mov bl, al
mov byte [rsp + 0x90], al
add ax, r9w
mov dword [0x14060b254], edx
mov dword [0x14060b208], r8d
mov r8, qword [0x14060b258]
mov dil, byte [r8 + rcx*4]
mov word [0x14060b230], ax
add dil, dl
mov rax, qword [0x14060b210]
xor edx, edx
movzx ecx, word [rax + 0x30c0]
mov eax, 0x97e
div ecx
cdqe
mov qword [rsp + 0x20], rax
lea eax, [r15*2 + 0x23]
add eax, r15d
movsxd r9, dword [r14 + rax*4]
cmp r9, qword [0x14060b1f8]
jb 0x140001913
mov r13, qword [rsp + 0x20]
mov ebx, r9d
mov r15, qword [rsp + 0x28]
movzx r12d, r10w
lea r10d, [r9 + 0xd]
shl ebx, 2
mov rax, qword [rbp]
movsxd rdx, r10d
mov ecx, dword [r11 + rdx*4]
imul ecx, dword [r8 + rax*4 + 0x8c]
lea eax, [r10 + 6]
inc r10d
mov dword [r11 + rdx*4], ecx
movzx edx, word [0x14060b20c]
movsxd r8, dword [0x14060b1f4]
add edx, r12d
movsxd rcx, eax
add edx, r9d
mov eax, dword [r15 + rcx*4]
imul eax, edx
movsxd rcx, ebx
add ebx, 4
add dword [r11 + r8*4], eax
movzx eax, byte [rsi + 0x1719]
xor ax, r9w
inc r9d
and word [r13 + rcx*2], ax
movsxd rax, r9d
cmp rax, qword [0x14060b1f8]
jb 0x1400018fb
mov r8, qword [0x14060b258]
jmp 0x14000188b
mov r15d, dword [rsp + 0xa0]
movzx r13d, word [rsp + 0x98]
mov bl, byte [rsp + 0x90]
movzx eax, word [0x14060b244]
mov rcx, qword [rsp + 0x30]
lea r8, [rax + rax*2]
mov rax, qword [rbp]
shl rax, 5
mov rcx, qword [rax + rcx + 0x118c]
movabs rax, 0xaee88e746805ceb9
mul rcx
shr rdx, 0xc
imul rax, rdx, 0x176b
xor edx, edx
sub rcx, rax
add dword [r14 + r8*4 + 0x74], ecx
mov rax, qword [rbp]
add rax, 6
movzx ecx, dil
add rax, rax
inc dil
mov dword [r11 + rax*8], 0xddf
movzx eax, word [0x14060b250]
movsxd rax, dword [r14 + rax*4]
xor rax, rcx
movzx ecx, dil
div qword [0x14060b228]
mov rdx, qword [rsp + 0xa8]
mov qword [0x14060b228], rax
movsxd r12, dword [r14 + rsi*4]
cmp r12, qword [rdx + rcx*8]
jae 0x140001a61
movzx ebx, bl
mov edx, 0x2674
or rbx, rsi
movzx esi, r13w
mov eax, dword [rbp + 0xda98]
mov r8, rbx
movzx ecx, word [0x14060b278]
or eax, 0x1a3f
add eax, r15d
add ecx, eax
movsxd rax, dword [0x14060b208]
mov dword [0x14060b234], ecx
movzx r9d, byte [rdx]
mov rdx, rsi
movzx ecx, word [rax + rax + 0x5ec]
xor rcx, 0x9cf
call fcn.140001cd0
mov ecx, dword [0x14060b254]
inc dil
mov word [0x14060b230], ax
mov eax, 0x198e
cdq
idiv ecx
dec ecx
mov eax, edx
mov dword [0x14060b254], ecx
mov ecx, dword [0x14060b224]
cdq
idiv r12d
xor ecx, r12d
inc r12d
cdq
idiv r15d
mov eax, dword [0x14060b208]
imul eax, edx
mov rdx, qword [rsp + 0xa8]
mov dword [0x14060b208], eax
mov rax, qword [rbp]
mov dword [r14 + rax*4], ecx
movzx ecx, dil
movsxd rax, r12d
cmp rax, qword [rdx + rcx*8]
mov edx, 0x2674
jb 0x1400019b4
mov eax, dword [0x14060b1f4]
mov rcx, qword [rsp + 0x38]
dec eax
mov dword [0x14060b1f4], eax
add eax, 8
lea eax, [rax + rax*2]
cdqe
mov eax, dword [rcx + rax*4]
or eax, r15d
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret