Function at 0x140009a90
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rbx, rcx
mov ecx, 0x18
call fcn.14000fb9c
xor esi, esi
mov rdi, rax
mov qword [rax], rsi
lea ecx, [rsi + 0x18]
mov qword [rax + 8], rsi
mov qword [rax + 0x10], rsi
call fcn.14000fb9c
mov qword [rdi], rax
lea r8, [rbx + 4]
xorps xmm0, xmm0
mov r9d, 2
mov r10, 0xfffffffffffffffe
mov r11d, r9d
lea rcx, [rax + 0x18]
mov r14d, 4
mov qword [rdi + 0x10], rcx
mov r15d, 6
movups xmmword [rax], xmm0
xor ecx, ecx
mov r12d, 8
mov qword [rax + 0x10], rcx
mov ebp, 0xa
add rax, 0x18
mov r13d, 0xc
mov qword [rdi + 8], rax
sub r10, rbx
mov eax, 0xe
sub r11, rbx
sub rax, rbx
sub r14, rbx
mov qword [rsp + 0x78], rax
sub r15, rbx
mov eax, 0x10
sub r12, rbx
sub rax, rbx
sub rbp, rbx
mov qword [rsp + 0x80], rax
sub r13, rbx
mov eax, 0x12
mov rcx, 0xfffffffffffffffc
sub rax, rbx
sub rcx, rbx
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x20], rcx
movabs rax, 0x91f5bcb8bb02d9cd
mul rsi
add rcx, r8
shr rdx, 8
imul rax, rdx, 0x1c1
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
sub rsi, rax
movzx eax, byte [r8 - 4]
xor al, byte [rsi + rdx]
movabs rsi, 0x91f5bcb8bb02d9cd
movsx edx, al
mov rax, qword [rdi]
mov word [rcx + rax], dx
mov rax, rsi
movsxd rcx, r9d
dec rcx
mul rcx
shr rdx, 8
imul rax, rdx, 0x1c1
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
sub rcx, rax
movzx eax, byte [r8 - 2]
xor al, byte [rcx + rdx]
lea rcx, [r10 + r8]
movsx edx, al
mov rax, qword [rdi]
mov word [rcx + rax], dx
mov rax, rsi
movsxd rcx, r9d
mul rcx
shr rdx, 8
imul rax, rdx, 0x1c1
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
sub rcx, rax
movzx eax, byte [r8]
xor al, byte [rcx + rdx]
mov rcx, r8
movsx edx, al
sub rcx, rbx
mov rax, qword [rdi]
mov word [rcx + rax], dx
mov rax, rsi
movsxd rcx, r9d
inc rcx
mul rcx
shr rdx, 8
imul rax, rdx, 0x1c1
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
sub rcx, rax
movzx eax, byte [r8 + 2]
xor al, byte [rcx + rdx]
lea rcx, [r11 + r8]
movsx edx, al
mov rax, qword [rdi]
mov word [rcx + rax], dx
mov rax, rsi
movsxd rcx, r9d
add rcx, 2
mul rcx
shr rdx, 8
imul rax, rdx, 0x1c1
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
sub rcx, rax
movzx eax, byte [r8 + 4]
xor al, byte [rcx + rdx]
lea rcx, [r14 + r8]
movsx edx, al
mov rax, qword [rdi]
mov word [rcx + rax], dx
mov rax, rsi
movsxd rcx, r9d
add rcx, 3
mul rcx
shr rdx, 8
imul rax, rdx, 0x1c1
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
sub rcx, rax
movzx eax, byte [r8 + 6]
xor al, byte [rcx + rdx]
lea rcx, [r15 + r8]
movsx edx, al
mov rax, qword [rdi]
mov word [rcx + rax], dx
mov rax, rsi
movsxd rcx, r9d
add rcx, 4
mul rcx
shr rdx, 8
imul rax, rdx, 0x1c1
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
sub rcx, rax
movzx eax, byte [r8 + 8]
xor al, byte [rcx + rdx]
lea rcx, [r12 + r8]
movsx edx, al
mov rax, qword [rdi]
mov word [rcx + rax], dx
mov rax, rsi
movsxd rcx, r9d
add rcx, 5
mul rcx
shr rdx, 8
imul rax, rdx, 0x1c1
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
sub rcx, rax
movzx eax, byte [r8 + 0xa]
xor al, byte [rcx + rdx]
lea rcx, [r8 + rbp]
movsx edx, al
mov rax, qword [rdi]
mov word [rcx + rax], dx
mov rax, rsi
movsxd rcx, r9d
add rcx, 6
mul rcx
shr rdx, 8
imul rax, rdx, 0x1c1
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
sub rcx, rax
movzx eax, byte [r8 + 0xc]
xor al, byte [rcx + rdx]
lea rcx, [r8 + r13]
movsx edx, al
mov rax, qword [rdi]
mov word [rcx + rax], dx
mov rax, rsi
movsxd rcx, r9d
add rcx, 7
mul rcx
shr rdx, 8
imul rax, rdx, 0x1c1
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
sub rcx, rax
movzx eax, byte [r8 + 0xe]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x78]
movsx edx, al
add rcx, r8
mov rax, qword [rdi]
mov word [rcx + rax], dx
mov rax, rsi
movsxd rcx, r9d
add rcx, 8
mul rcx
shr rdx, 8
imul rax, rdx, 0x1c1
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
sub rcx, rax
movzx eax, byte [r8 + 0x10]
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x80]
movsx edx, al
add rcx, r8
mov rax, qword [rdi]
mov word [rcx + rax], dx
mov rax, rsi
movsxd rcx, r9d
add rcx, 9
mul rcx
shr rdx, 8
imul rax, rdx, 0x1c1
sub rcx, rax
movzx eax, byte [r8 + 0x12]
lea rdx, str.wMnqYdezPEAMgSGXjGdCpPlCAxRWQfq_UhQknltPGYwXlQMrwZeUNKpCVmqInuQkQyWphhVDYoy_QkDJBOLlwvsGgAsrzSyhNsBOqNKCKFfhGXsVwCuGwWwbJPTJNglJpQwruZUahSIy_SmvsMkFzttYSWdQhylXhLkcFSsmSNKzoMcaTSkoEPadqByNSPWVxvDdlNsmgZXloRVWfeMCdaEXbMMAeeFwBSvn_zMImmDBqCdisnSgQtTNMLnOeEhYiYrrMEXkjmhfmXJEBpwF_cCPhqlOcBvdtiwubWxUryUNbLRgdmIpfikoMaov_KgwOEkEnLixCldsvFROluTfbDFAZUAd_df_ZtInXUWSMMmfZOUEhbDZiAephSRgeaAUWLjtaHCDDyQHcbQbLHSIqksZCpAwNdFNhIxTIKGpcYyRamQiduoCwCzCdtHzFVgU
add r9d, 0xc
xor al, byte [rcx + rdx]
mov rcx, qword [rsp + 0x88]
movsx edx, al
add rcx, r8
mov rax, qword [rdi]
add r8, 0x18
mov word [rcx + rax], dx
lea eax, [r9 - 2]
mov rcx, qword [rsp + 0x20]
movsxd rsi, eax
movabs rax, 0x91f5bcb8bb02d9cd
cmp rsi, 0xc
jb 0x140009b74
mov rbx, qword [rsp + 0x70]
mov rax, rdi
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret