Function at 0x14047e18f
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rsi
xchg rsi, rdi
mov qword [rsp + 0x20], rsi
xchg rsi, rdi
nop
sub rsp, 8
mov qword [rsp], rbp
lea rbp, [rsp - 0x360]
sub rsp, 0x460
mov r13, r13
mov eax, edx
movzx edi, r8b
xchg rcx, rbp
mov rsi, rbp
xchg rbp, rcx
lea rdx, [rbp + 0x150]
mov ecx, eax
xchg rsp, rsp
mov r8d, 0x1358e536
add r8d, 0x448d0726
xor r8d, 0x1d69745
sub r8d, 0x20a4694a
sub r8d, 0x358f10cb
call fcn.140079890
xchg rsp, rsp
test al, al
je 0x14047e822
mov qword [rsp + 0x470], rbx
mov qword [rsp + 0x478], r14
mov dword [rsp - 0x2c], 0x4be268d8
test dil, dil
jne 0x14047e4f3
mov edx, 0x58b2f1d9
sub edx, 0x3b6f3b28
xor edx, 0x7114b35d
sub edx, 0x6c570590
lea rcx, [rbp + 0x150]
mov rdx, rdx
call fcn.140096fd0
xchg r15, rax
mov rdi, r15
xchg r15, rax
test rax, rax
je 0x14047e22b
mov r8, r8
add rdi, 2
jmp 0x14047e236
lea rdi, [rbp + 0x150]
mov dword [rsp - 0x20], esi
lea rax, [rsp + 0x38]
xor edx, edx
mov r8d, 0x5ca8723b
xor r8d, 0x3907ee06
sub r8d, 0xd0d45a7
xor r8d, 0x15e1d400
xor r8d, 0x4d438396
xchg r9, rax
mov qword [rsp + 0x30], r9
xchg r9, rax
lea rcx, [rsp + 0x38]
call fcn.140096540
mov dword [rsp - 0xc], ebp
nop
movabs rbx, 0xffffffff6a2a4c2b
sub rbx, 0x3b8f7a7d
add rbx, 0x8e4f430
add rbx, 0x7fffffff
xor rbx, 0x48803a22
xchg rbx, rax
mov rbx, rax
xchg rbx, rax
inc rax
mov rdx, rdx
cmp word [rdi + rax*2], 0
jne 0x14047e2a4
xchg rcx, r10
mov r10, qword [rsp + 0x30]
xchg rcx, r10
lea r14, [rax + 1]
xchg r10, rax
mov qword [rbp + 0x38], r10
xchg r10, rax
lea rax, [rsp + 0x38]
cmp rcx, rax
je 0x14047e2e2
xchg r9, r9
call fcn.140095ef0
cmp r14, 0x80
jbe 0x14047e320
xchg r13, r13
lea rcx, [r14 + r14]
call fcn.140096260
mov qword [rsp + 0x30], rax
test rax, rax
mov dword [rsp - 0x18], 0x43d1afe9
jne 0x14047e333
lea r14, [rsp + 0x38]
mov qword [rsp + 0x30], r14
jmp 0x14047e3a3
lea rax, [rsp + 0x38]
mov qword [rsp + 0x30], rax
mov dword [rsp - 0xc], ebx
lea rax, [rsp + 0x38]
xor edx, edx
mov r8d, 0x7461a0da
sub r8d, 0x7ea3dcb
add r8d, 0xa75db71
sub r8d, 0x76ed3d80
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.140096540
mov r11, r11
xchg r10, r14
mov r10, qword [rsp + 0x30]
xchg r14, r10
test r14, r14
mov r8, r8
je 0x14047e3a3
xchg r12, r9
mov r12, qword [rbp + 0x38]
xchg r12, r9
xchg r10, rdi
mov r8, r10
xchg r10, rdi
xchg rcx, r14
mov r14, rcx
xchg r14, rcx
lea rdx, [r9 + 1]
call fcn.140096f10
mov r14, qword [rsp + 0x30]
mov rsi, rsi
xorps xmm0, xmm0
lea rdi, [rbp + 0x150]
xor eax, eax
mov ecx, 0x5cf11261
add ecx, 0x15071665
sub ecx, 0x4ff9d2f7
add ecx, 0x25c4d378
sub ecx, 0x47c3273f
rep stosb byte [rdi], al
lea rax, [rsi + 8]
mov r13, r13
xchg r12, rax
mov qword [rsi], r12
xchg r12, rax
xchg rsi, rax
movups xmmword [rsi], xmm0
xchg rsi, rax
movups xmmword [rax + 0x10], xmm0
xchg r10, rax
movups xmmword [r10 + 0x20], xmm0
xchg r10, rax
nop dword [rax + rax]
mov dword [rsp - 0x3c], esi
inc rbx
cmp word [r14 + rbx*2], 0
jne 0x14047e3fc
xchg rbx, rcx
mov rdx, rcx
xchg rbx, rcx
xchg r8, rbx
mov qword [rsi + 0x38], r8
xchg rbx, r8
xchg rsi, r13
mov rcx, r13
xchg r13, rsi
call fcn.14000ed40
xchg rsi, rsi
xor edx, edx
xchg r8, rax
mov rax, r8
xchg r8, rax
mov edi, 0x418aafa1
xor edi, 0x4ec4186b
xor edi, 0x3ffe1a5d
xor edi, 0x818cf4f
xor edi, 0x2ed31bb2
cmp qword [rsi + 0x38], rdx
jbe 0x14047e4cd
mov rdx, rdx
sub r14, rax
mov r9d, 0x6e8ca9d4
sub r9d, 0x505901b6
xor r9d, 0x1d423149
add r9d, 0x224b0934
sub r9d, 0x25bca18c
nop dword [rax]
xchg r9, r9
nop word [rax + rax]
movzx eax, di
lea r8, [r8 + 2]
and ax, r9w
mov rsp, rsp
ror edi, 4
ror edi, 2
ror edi, 2
xor ax, word [r14 + r8 - 2]
xchg rbp, rbp
inc rdx
mov word [r8 - 2], ax
cmp rdx, qword [rsi + 0x38]
jb 0x14047e497
mov dword [rsp - 0x28], esp
xchg r14, rcx
mov r14, qword [rsp + 0x30]
xchg rcx, r14
lea rax, [rsp + 0x38]
mov r13, r13
cmp rcx, rax
jne 0x14047e815
lea rdi, [rsp + 0x38]
jmp 0x14047e7af
lea rax, [rbp + 0x48]
mov r10, r10
xor edx, edx
mov r8d, 0x79d371fe
sub r8d, 0x52d5fd14
add r8d, 0x559ab2c0
sub r8d, 0x726cc64f
sub r8d, 0xa2b605b
xchg r11, rax
mov qword [rbp + 0x40], r11
xchg r11, rax
lea rcx, [rbp + 0x48]
mov dword [rsp - 0x20], 0x3886adf9
call fcn.140096540
nop
movabs rbx, 0xffffffff15c9c301
xor rbx, 0x4a18ebf1
xor rbx, 0x4a628fdc
add rbx, 0x7fffffff
xor rbx, 0x6a4c58d4
lea rcx, [rbp + 0x150]
xchg r10, rax
mov r10, rbx
xchg r10, rax
nop dword [rax]
inc rax
mov dword [rsp - 0x44], esi
cmp word [rcx + rax*2], 0
jne 0x14047e573
mov rcx, qword [rbp + 0x40]
lea rdi, [rax + 1]
mov dword [rsp - 0x40], 0xf1ee834
xchg r10, rax
mov qword [rbp + 0x148], r10
xchg r10, rax
lea rax, [rbp + 0x48]
mov dword [rsp - 0x18], 0x29712954
cmp rcx, rax
je 0x14047e5bd
call fcn.140095ef0
xchg rbp, rbp
cmp rdi, 0x80
jbe 0x14047e5f8
lea rcx, [rdi + rdi]
xchg rsp, rsp
call fcn.140096260
xchg r13, rax
mov qword [rbp + 0x40], r13
xchg r13, rax
test rax, rax
jne 0x14047e608
mov dword [rsp - 0x18], ebp
lea r14, [rbp + 0x48]
mov qword [rbp + 0x40], r14
jmp 0x14047e67d
lea rax, [rbp + 0x48]
xchg rbx, rax
mov qword [rbp + 0x40], rbx
xchg rbx, rax
lea rax, [rbp + 0x48]
xor edx, edx
mov rdx, rdx
mov r8d, 0x495765f
add r8d, 0x13474f15
add r8d, 0x39231ae
add r8d, 0xad06c9d
xor r8d, 0x263f62bf
xchg r12, rax
mov rcx, r12
xchg r12, rax
call fcn.140096540
mov r14, qword [rbp + 0x40]
mov dword [rsp - 0x30], 0x433a63fc
test r14, r14
je 0x14047e67d
xchg rsp, r9
mov rsp, qword [rbp + 0x148]
xchg rsp, r9
lea r8, [rbp + 0x150]
xchg rcx, rdx
mov rdx, r14
xchg rdx, rcx
lea rdx, [r9 + 1]
mov rbp, rbp
call fcn.140096f10
mov r14, qword [rbp + 0x40]
xorps xmm0, xmm0
mov rcx, rcx
lea rdi, [rbp + 0x150]
xor eax, eax
mov ecx, 0x3da8b6db
xor ecx, 0x3f057a6c
add ecx, 0x64d5046e
sub ecx, 0x6782cf1d
rep stosb byte [rdi], al
mov r12, r12
lea rax, [rsi + 8]
mov qword [rsi], rax
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov dword [rsp - 0x34], edi
xchg r11, rax
movups xmmword [r11 + 0x20], xmm0
xchg r11, rax
inc rbx
mov dword [rsp - 0x34], 0x7dc2788a
cmp word [r14 + rbx*2], 0
jne 0x14047e6c3
xchg rbx, rdx
mov rbx, rdx
xchg rdx, rbx
xchg rbx, r10
mov qword [rsi + 0x38], r10
xchg rbx, r10
xchg rsi, rbx
mov rcx, rbx
xchg rsi, rbx
call fcn.14000ed40
xor edx, edx
mov dword [rsp - 0x40], esp
xchg rcx, rdx
mov rdx, rax
xchg rdx, rcx
mov edi, 0x7abac0b9
xor edi, 0x15027609
sub edi, 0x426348d3
xor edi, 0x27eedeed
xor edi, 0x1cc0ca5a
cmp qword [rsi + 0x38], rdx
jbe 0x14047e78f
sub r14, rax
xchg r10, r10
mov r9d, 0x4a6378cc
add r9d, 0x21dd64d1
sub r9d, 0x2a9b2749
xor r9d, 0x41a5b6ab
nop word [rax + rax]
movzx eax, di
mov r14, r14
lea rcx, [rcx + 2]
and ax, r9w
ror edi, 1
ror edi, 1
ror edi, 2
ror edi, 3
ror edi, 1
xor ax, word [r14 + rcx - 2]
inc rdx
mov rsp, rsp
mov word [rcx - 2], ax
cmp rdx, qword [rsi + 0x38]
jb 0x14047e75b
mov rcx, qword [rbp + 0x40]
xchg r10, r10
lea rax, [rbp + 0x48]
cmp rcx, rax
jne 0x14047e815
lea rdi, [rbp + 0x48]
mov dword [rsp - 0x2c], 0x10ac5ff1
xor eax, eax
mov ecx, 0x70d7ca21
sub ecx, 0x2fb3a8dd
add ecx, 0x2b29c00d
sub ecx, 0xd3c7d89
xor ecx, 0x5f1162c8
rep stosb byte [rdi], al
mov rsp, rsp
xchg rbp, rbx
mov rbp, qword [rsp + 0x470]
xchg rbx, rbp
mov r14, qword [rsp + 0x478]
lea r11, [rsp + 0x460]
xchg r14, rsi
mov rax, r14
xchg r14, rsi
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
xchg r11, r15
mov rsp, r15
xchg r11, r15
pop rbp
mov dword [rsp - 0x14], 0x79c75521
ret
call fcn.140095ef0
xchg rsi, rsi
jmp 0x14047e7d3
lea rdi, [rsi + 8]
mov dword [rsp - 0xc], 0x576e49bc
mov dword [rsp + 0x20], 0x967a2ab
add dword [rsp + 0x20], 0x41733ad9
add dword [rsp + 0x20], 0x168003e3
xor dword [rsp + 0x20], 0x76bcc85a
add dword [rsp + 0x20], 0x652ee319
mov qword [rsi], rdi
mov dword [rsp - 0x14], ecx
xorps xmm0, xmm0
xchg rdi, rbx
movups xmmword [rbx], xmm0
xchg rdi, rbx
mov dword [rsp + 0x24], 0x3feb0413
add dword [rsp + 0x24], 0x37a37479
sub dword [rsp + 0x24], 0xb7e3e60
add dword [rsp + 0x24], 0xbfbdbd8
xchg r10, rdi
movups xmmword [r10 + 0x10], xmm0
xchg r10, rdi
mov byte [rsp + 0x28], 0x5a
sub byte [rsp + 0x28], 0x13
add byte [rsp + 0x28], 0x18
xor byte [rsp + 0x28], 0xb
movups xmmword [rdi + 0x20], xmm0
mov qword [rsi + 0x38], 0x2f517e89
sub qword [rsi + 0x38], 0x27b75058
sub qword [rsi + 0x38], 0x726be32
add qword [rsi + 0x38], 0x13ae1313
sub qword [rsi + 0x38], 0x14218309
xchg r12, rcx
mov r12, qword [rsi]
xchg rcx, r12
cmp rcx, rdi
je 0x14047e8f3
mov dword [rsp - 0x18], 0x28025083
call fcn.140095ef0
xchg rdi, rdx
mov qword [rsi], rdx
xchg rdx, rdi
xorps xmm0, xmm0
xchg rdi, rsp
movups xmmword [rsp], xmm0
xchg rsp, rdi
xor edx, edx
mov dword [rsp - 0x14], esi
xchg r15, rdi
movups xmmword [r15 + 0x10], xmm0
xchg r15, rdi
xchg rdi, rcx
movups xmmword [rcx + 0x20], xmm0
xchg rdi, rcx
xchg r14, rcx
mov r14, qword [rsi]
xchg r14, rcx
cmp qword [rsi + 0x38], rdx
xchg r12, r12
jbe 0x14047e7e9
nop word [rax + rax]
movzx eax, byte [rsp + rdx + 0x20]
mov word [rcx + rdx*2], ax
mov dword [rsp - 0x30], esi
inc rdx
cmp rdx, qword [rsi + 0x38]
jb 0x14047e945
jmp 0x14047e7e9