Function at 0x14000bca0
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, 0x40
mov rbx, rcx
mov ecx, 0x18
call fcn.14000dc3c
xor esi, esi
mov rdi, rax
mov qword [rax], rsi
lea ecx, [rsi + 0xf]
mov qword [rax + 8], rsi
mov qword [rax + 0x10], rsi
call fcn.14000dc3c
mov qword [rdi], rax
lea r9d, [rsi + 2]
mov r11d, 1
lea r8, [rbx + 2]
mov r14d, r9d
mov r15d, 3
lea rcx, [rax + 0xf]
mov r12d, 4
mov qword [rdi + 0x10], rcx
mov ebp, 5
xor ecx, ecx
mov r13d, 6
mov qword [rax], rcx
sub r11, rbx
mov dword [rax + 8], ecx
sub r14, rbx
mov word [rax + 0xc], cx
sub r15, rbx
mov byte [rax + 0xe], cl
sub r12, rbx
add rax, 0xf
sub rbp, rbx
mov qword [rdi + 8], rax
sub r13, rbx
mov eax, 7
mov rcx, 0xfffffffffffffffe
sub rax, rbx
mov r10, rbx
mov qword [rsp + 0x88], rax
not r10
mov eax, 8
sub rax, rbx
mov qword [rsp + 0x90], rax
mov eax, 9
sub rax, rbx
mov qword [rsp + 0x98], rax
mov eax, 0xa
sub rax, rbx
mov qword [rsp + 0x20], rax
mov eax, 0xb
sub rax, rbx
mov qword [rsp + 0x28], rax
mov eax, 0xc
sub rax, rbx
sub rcx, rbx
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rcx
movabs rax, 0x4e5e0a72f0539783
nop dword [rax + rax]
mul rsi
add rcx, r8
mov rax, rsi
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 - 2]
shr rax, 8
imul rax, rax, 0x188
sub rsi, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rsi + rax]
movabs rsi, 0x4e5e0a72f0539783
mov rax, qword [rdi]
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
dec rcx
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 - 1]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
lea rcx, [r10 + r8]
mov rax, qword [rdi]
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
mov rcx, r8
mov rax, qword [rdi]
sub rcx, rbx
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
inc rcx
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 + 1]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
lea rcx, [r11 + r8]
mov rax, qword [rdi]
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 2
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 + 2]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
lea rcx, [r14 + r8]
mov rax, qword [rdi]
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 3
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 + 3]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
lea rcx, [r15 + r8]
mov rax, qword [rdi]
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 4
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 + 4]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
lea rcx, [r12 + r8]
mov rax, qword [rdi]
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 5
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 + 5]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
lea rcx, [r8 + rbp]
mov rax, qword [rdi]
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 6
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 + 6]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
lea rcx, [r8 + r13]
mov rax, qword [rdi]
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 7
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
movzx edx, byte [r8 + 7]
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
mov rax, qword [rdi]
mov rcx, qword [rsp + 0x88]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 8
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 + 8]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
mov rax, qword [rdi]
mov rcx, qword [rsp + 0x90]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 9
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 + 9]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
mov rax, qword [rdi]
mov rcx, qword [rsp + 0x98]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 0xa
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 + 0xa]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
mov rax, qword [rdi]
mov rcx, qword [rsp + 0x20]
add rcx, r8
mov byte [rcx + rax], dl
mov rax, rsi
movsxd rcx, r9d
add rcx, 0xb
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 + 0xb]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
mov rcx, qword [rsp + 0x28]
mov rax, qword [rdi]
add rcx, r8
mov byte [rcx + rax], dl
movsxd rcx, r9d
add rcx, 0xc
mov rax, rsi
add r9d, 0xf
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
movzx edx, byte [r8 + 0xc]
shr rax, 8
imul rax, rax, 0x188
sub rcx, rax
lea rax, str.WhHMCaBesVPsXdQdxTZFyKfRpTD_gw_sUSWtMrxOm_ukBMaueAPbFQHVLUi__BEnopjXDrZFQQuPFkbtKJEzc_gDHtseMrDtlPcajMRKd_ceGgLdosjLy_tNEVqThLkQcxDjtGdkpsFtGjuvjLKBUb__nRxqDxFscuIaDCveMoqxPHlMuikFllRwlxEx_rYESMJwLHorquzQOhrm_dVqHZIFzPCGrQnyzdslIwVawhRiHkIoPlLqrLmMmvLHEbslRdYlFJmZEuOXl_xqdZvgALdDSUpecvgXhalMeIQGDifvhpIdHGDVTROtfHnTweJoDMTwcypJdvrXflcXZaLHEGVIEuBuaGHUbvaAhiAXigzVaqoERobmxiJRoqfyUuCDhyuDDgM
xor dl, byte [rcx + rax]
mov rax, qword [rdi]
mov rcx, qword [rsp + 0x30]
add rcx, r8
add r8, 0xf
mov byte [rcx + rax], dl
lea eax, [r9 - 2]
mov rcx, qword [rsp + 0x38]
movsxd rsi, eax
movabs rax, 0x4e5e0a72f0539783
cmp rsi, 0xf
jb 0x14000bdb0
mov rbx, qword [rsp + 0x80]
mov rax, rdi
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret