Function at 0x14049f452
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp - 8], rbp
sub rsp, 8
nop
push 0x515e7711
mov qword [rsp], rbx
nop
mov qword [rsp - 8], r12
sub rsp, 8
push r13
nop
sub rsp, 8
mov qword [rsp], r14
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
xor r13d, r13d
xchg rsi, rsi
lea rdx, [rsp + 0x68]
mov dword [rbp + 0xe0], r13d
xorps xmm0, xmm0
mov r11, r11
mov r12, rcx
mov dword [rsp + 0x50], 0x60174446
xor dword [rsp + 0x50], 0x7d95251
xor dword [rsp + 0x50], 0x3ec7551c
add dword [rsp + 0x50], 0x26932f4
xor dword [rsp + 0x50], 0xf2e3d2c
lea rcx, [rsp + 0x68]
xchg rbp, rbp
mov dword [rsp + 0x54], 0x6ffeb7da
sub dword [rsp + 0x54], 0x1639df01
sub dword [rsp + 0x54], 0x4d9e66a5
add dword [rsp + 0x54], 0x502aedac
mov dword [rsp + 0x58], 0x2ae948a5
sub dword [rsp + 0x58], 0x1ff94650
add dword [rsp + 0x58], 0x548c9561
xor dword [rsp + 0x58], 0xb34df1f
mov eax, 0x58d9b986
add eax, 0x3d9cef4
add eax, 0x23abdf1
xor eax, 0x70f8b0bb
sub eax, 0x2e16f6c4
mov qword [rsp + 0x60], rcx
mov dword [rsp - 0x1c], edx
mov r14d, r13d
mov qword [rbp - 0x68], rax
xchg rsp, r12
movups xmmword [r12 + 0x68], xmm0
xchg rsp, r12
xchg rsp, r13
movups xmmword [r13 + 0x78], xmm0
xchg r13, rsp
xchg rbp, r9
movups xmmword [r9 - 0x78], xmm0
xchg r9, rbp
cmp rcx, rdx
je 0x14049ef97
mov rsp, rsp
call fcn.1400b6f90
xchg rcx, rax
mov rcx, qword [rbp - 0x68]
xchg rcx, rax
lea rdx, [rsp + 0x68]
xorps xmm0, xmm0
xchg r15, rdx
mov qword [rsp + 0x60], r15
xchg r15, rdx
xchg r9, rcx
mov r9, r13
xchg r9, rcx
xchg r8, rsp
movups xmmword [r8 + 0x68], xmm0
xchg r8, rsp
xchg r14, rsp
movups xmmword [r14 + 0x78], xmm0
xchg rsp, r14
movups xmmword [rbp - 0x78], xmm0
test rax, rax
je 0x14049f000
mov rsi, rsi
nop word [rax + rax]
movzx eax, byte [rsp + rcx + 0x50]
mov word [rdx + rcx*2], ax
mov r8, r8
inc rcx
cmp rcx, qword [rbp - 0x68]
jb 0x14049efdf
mov dword [rsp - 0x38], 0x5b3d1cf9
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x1a0], rdi
call fcn.140098b60
mov r15, r15
mov rcx, qword [rsp + 0x60]
mov ebx, eax
lea rax, [rsp + 0x68]
cmp rcx, rax
mov dword [rsp - 0x40], edx
jne 0x14049f057
lea rdi, [rsp + 0x68]
xor eax, eax
mov dword [rsp - 0x40], edi
mov ecx, 0xe680234
add ecx, 0x281dd317
sub ecx, 0x3584651b
xor ecx, 0x1017000
rep stosb byte [rdi], al
jmp 0x14049f05c
call fcn.1400b6f90
test ebx, ebx
je 0x14049fa56
mov rbx, rbx
lea r8, [rbp + 0xe8]
mov edx, 0x490fa1c7
xor edx, 0x6d34f701
xor edx, 0x64f5fb47
xor edx, 0x40cea991
mov ecx, ebx
call fcn.14009aa60
mov dword [rsp - 0x44], 0x2885ecb6
test eax, eax
js 0x14049fa56
mov rax, qword [0x1404db508]
mov dword [rsp - 0x28], edx
lea rdx, [rbp + 0xe0]
movabs rcx, 0x73034d441ba7ff1d
add rcx, 0x63f81565
sub rcx, 0x38e0a881
add rcx, 0x211fd293
add rcx, 0x7fffffff
xor rcx, 0x64bf88f5
add rax, rcx
movabs rcx, 0x4650f867122aa1b7
add rcx, 0x55213723
xor rcx, 0x185ee12f
xor rcx, 0x51dc2056
add rcx, 0x7fffffff
add rcx, 0x4555b0f2
rol rax, 0x11
rol rax, 0x12
rol rax, 1
rol rax, 2
rol rax, 1
rol rax, 1
sub rax, rcx
mov dword [rsp - 0x3c], ebp
movabs rcx, 0x320c89f77ff2100f
sub rcx, 0x2c9f87d
xor rcx, 0x4e313a78
add rcx, 0x14891ca2
ror rax, 0x14
ror rax, 1
ror rax, 1
ror rax, 1
xor rax, rcx
mov rcx, qword [rbp + 0xe8]
call rax
mov dword [rsp - 0x34], 0x3d0eaf61
test eax, eax
je 0x14049fa44
cmp dword [rbp + 0xe0], r13d
jne 0x14049fa44
mov dword [rsp - 0x28], edi
mov rdx, qword [rbp + 0xe8]
lea r8, [rbp - 0x60]
xchg rcx, rsi
mov rsi, r12
xchg rcx, rsi
call 0x14049ad70
mov r8, r8
test al, al
je 0x14049fa44
xchg rdx, r8
mov r8, qword [rbp - 0x60]
xchg r8, rdx
lea r8, [rbp + 0xf0]
xchg r9, rcx
mov r9, qword [rbp + 0xe8]
xchg r9, rcx
mov r9d, 0x58124041
sub r9d, 0x1b7e2ecc
add r9d, 0x1f23c241
sub r9d, 0x5bb7d3ae
xchg r13, rcx
mov qword [rbp + 0xf0], rcx
xchg r13, rcx
xchg r9, r13
mov qword [rsp + 0x20], r9
xchg r9, r13
call fcn.1400925b0
test eax, eax
mov r11, r11
js 0x14049fa44
xchg r15, rax
mov r15, qword [rbp + 0xf0]
xchg r15, rax
test rax, rax
je 0x14049fa44
mov r12, r12
mov edx, dword [rbp - 0x58]
lea r8, [rbp + 0xf0]
xchg rcx, r11
mov r11, qword [rbp + 0xe8]
xchg r11, rcx
add rdx, rax
mov r9d, 0x301065f4
add r9d, 0x24c63b62
xor r9d, 0x4ea63ebe
sub r9d, 0x169416b1
sub r9d, 0x3dc892f
xchg r13, rdi
mov qword [rsp + 0x20], rdi
xchg rdi, r13
call fcn.1400925b0
test eax, eax
js 0x14049fa44
mov dword [rsp - 0x14], 0x733c8243
mov rax, qword [rbp + 0xf0]
test rax, rax
je 0x14049fa44
mov edx, dword [rbp - 0x54]
mov dword [rsp - 0x40], 0x54652f08
lea r8, [rsp + 0x50]
mov rcx, qword [rbp + 0xe8]
xorps xmm0, xmm0
mov rsp, rsp
add rdx, rax
mov qword [rsp + 0x20], r13
mov r9d, 0x2a28377a
add r9d, 0x442d14f2
sub r9d, 0x498a1fa0
sub r9d, 0x24cb2cbc
movups xmmword [rsp + 0x50], xmm0
call fcn.1400925b0
xchg rbx, rbx
test eax, eax
js 0x14049fa44
xchg rdx, rsi
mov qword [rsp + 0x1a8], rdx
xchg rdx, rsi
mov rsi, qword [rsp + 0x50]
cmp rsi, qword [rsp + 0x58]
xchg r9, r9
je 0x14049fa36
xchg r8, r15
mov qword [rsp + 0x198], r8
xchg r8, r15
mov r15d, r13d
xchg r10, r10
cmp r15d, 4
jge 0x14049fa2e
mov rcx, qword [rbp + 0xe8]
lea r8, [rbp + 0xf0]
xchg r9, r9
mov r9d, 0x7a0648d7
sub r9d, 0x4c8d3260
xor r9d, 0x14f9bc02
sub r9d, 0x3980aa6d
xchg r13, rdx
mov qword [rsp + 0x20], rdx
xchg r13, rdx
xchg r11, rdx
mov r11, rsi
xchg r11, rdx
call fcn.1400925b0
xchg rbx, rbx
test eax, eax
js 0x14049fa0e
xchg r13, rdx
mov r13, qword [rbp + 0xf0]
xchg rdx, r13
test rdx, rdx
je 0x14049fa0e
mov rdx, rdx
xchg r8, rcx
mov r8, qword [rbp + 0xe8]
xchg r8, rcx
lea r8, [rbp - 0x10]
mov dword [rsp - 0x14], ebx
mov r9d, 0x2e3c53bc
sub r9d, 0x611ec12
add r9d, 0x538fef
sub r9d, 0x1686b849
sub r9d, 0x11f73eb8
xchg r13, r10
mov qword [rsp + 0x20], r10
xchg r13, r10
call fcn.1400925b0
test eax, eax
js 0x14049fa0e
xchg r8, r8
cmp dword [rbp - 0xc], r13d
je 0x14049fa0e
mov edx, 0x6faa3641
xor edx, 0x5ec85438
xor edx, 0x26f9c638
sub edx, 0x179ba402
lea rcx, [rbp + 8]
call fcn.1400b8240
movsxd rcx, dword [rbp - 0xc]
mov dword [rsp - 0x30], ebp
cmp rax, rcx
jne 0x14049fa0e
mov ecx, 0x7b1b0d88
sub ecx, 0x3802fcc4
sub ecx, 0x410cd9dc
xor ecx, 0x7b141b38
xor ecx, 0x791f2d58
mov qword [rsp + 0x30], r13
xchg rcx, rcx
xchg r9, r13
mov qword [rsp + 0x38], r9
xchg r9, r13
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], 0x8e6ec6c
add qword [rsp + 0x48], 0x5baedde
xor qword [rsp + 0x48], 0x358f4319
xor qword [rsp + 0x48], 0x10b3b4c
sub qword [rsp + 0x48], 0x3a25a21d
call fcn.1400b6e40
test rax, rax
mov dword [rsp - 0x18], ebx
je 0x14049f4b8
mov edx, 0x230f43c7
add edx, 0x47226f61
sub edx, 0x4932811d
sub edx, 0x20ff3205
xchg r13, rax
mov rcx, r13
xchg r13, rax
call fcn.1404ab7f0
xchg r15, r15
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
jmp 0x14049f4c1
xchg rbx, r13
mov r13, rbx
xchg r13, rbx
xchg r8, rcx
mov r8, qword [rsp + 0x38]
xchg rcx, r8
test rcx, rcx
mov dword [rsp - 0x2c], 0x49197bb2
je 0x14049f5c3
xchg r9, rax
mov r9, qword [rsp + 0x40]
xchg r9, rax
cmp rcx, rax
jb 0x14049f5b6
mov dword [rsp - 0x38], 0x5e92a8a1
add rax, qword [rsp + 0x48]
xchg r10, rax
mov qword [rsp + 0x40], r10
xchg r10, rax
lea rcx, [rax*8]
call fcn.1400b71e0
mov rcx, qword [rsp + 0x38]
mov dword [rsp - 0x10], 0x3cc3a81f
mov rdi, rax
xchg rsi, r13
mov rdx, rsi
xchg r13, rsi
test rcx, rcx
je 0x14049f57c
nop word [rax + rax]
xchg rsp, rsp
xchg r10, rax
mov r10, qword [rsp + 0x30]
xchg r10, rax
mov rcx, qword [rax + rdx*8]
mov dword [rsp - 0x18], 0x6e21aa9e
xchg r12, rcx
mov qword [rdi + rdx*8], r12
xchg rcx, r12
inc rdx
xchg r10, r10
xchg rcx, r9
mov r9, qword [rsp + 0x38]
xchg rcx, r9
cmp rdx, rcx
jb 0x14049f540
xchg rsp, rsp
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x14049f5a8
mov dword [rsp - 0x40], esp
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.1400b6f90
mov r8, r8
xchg rcx, r11
mov r11, qword [rsp + 0x38]
xchg rcx, r11
mov qword [rsp + 0x30], rdi
mov dword [rsp - 0x1c], edx
jmp 0x14049f605
mov rdi, qword [rsp + 0x30]
xchg rcx, rcx
jmp 0x14049f605
mov rdi, qword [rsp + 0x30]
mov dword [rsp - 0x10], ebp
test rdi, rdi
jne 0x14049f605
mov rcx, qword [rsp + 0x48]
xchg r15, r15
mov qword [rsp + 0x40], rcx
lea rcx, [rcx*8]
call fcn.1400b71e0
mov rcx, qword [rsp + 0x38]
xchg r8, r8
xchg r13, rdi
mov r13, rax
xchg r13, rdi
mov qword [rsp + 0x30], rax
lea rax, [rdi + rcx*8]
mov dword [rsp - 0x2c], 0x3dc153cf
inc rcx
xchg rsi, rcx
mov qword [rsp + 0x38], rsi
xchg rsi, rcx
mov ecx, 0x72c101b3
sub ecx, 0x50ed26c4
add ecx, 0x47261231
xor ecx, 0x7bba3b58
sub ecx, 0x1343d5f0
mov qword [rax], rbx
call fcn.1400b6e40
mov dword [rsp - 0x40], ecx
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
test rax, rax
je 0x14049f7be
mov r13, r13
xorps xmm0, xmm0
lea rax, [rbp - 0x48]
xchg r13, rax
mov qword [rbp - 0x50], r13
xchg r13, rax
or r14d, 1
lea rax, [rbp + 8]
xchg rbx, rbx
nop
movabs rdx, 0xffffffff0edea0c0
xor rdx, 0x67274588
sub rdx, 0x32ed9ac9
add rdx, 0x332e687a
add rdx, 0x7fffffff
add rdx, 0x15c54d07
xchg rdx, rbp
movups xmmword [rdx - 0x48], xmm0
xchg rdx, rbp
xchg r14, rbp
movups xmmword [r14 - 0x38], xmm0
xchg rbp, r14
xchg r8, rbp
movups xmmword [r8 - 0x28], xmm0
xchg r8, rbp
nop dword [rax + rax]
mov rbx, rbx
inc rdx
cmp word [rax + rdx*2], r13w
jne 0x14049f6ce
mov dword [rsp - 0x1c], 0xb3c0279
lea rcx, [rbp - 0x50]
mov qword [rbp - 0x18], rdx
call fcn.140010f10
mov dword [rsp - 0x24], 0x577d0b26
xchg rcx, rax
mov rdx, rcx
xchg rcx, rax
mov ecx, 0x97c7dc9
xor ecx, 0x305a606d
sub ecx, 0x305f0139
xor ecx, 0x39f731ec
xchg rdi, r14
mov r14, r13
xchg r14, rdi
cmp qword [rbp - 0x18], r13
mov dword [rsp - 0x34], 0x715e8dd8
jbe 0x14049f7a1
lea r8, [rbp + 8]
mov r9d, 0x3cba79b0
add r9d, 0x9276589
sub r9d, 0x23740f70
add r9d, 0xb694698
sub r9d, 0x2dd71562
sub r8, rax
mov r10, r10
nop word [rax + rax]
movzx eax, cx
lea rdx, [rdx + 2]
mov dword [rsp - 0x10], 0x669c79d7
and ax, r9w
ror ecx, 8
xor ax, word [r8 + rdx - 2]
mov dword [rsp - 0x20], 0x2971ba33
inc rdi
mov word [rdx - 2], ax
cmp rdi, qword [rbp - 0x18]
mov r13, r13
jb 0x14049f769
lea rdx, [rbp - 0x50]
mov rcx, rbx
xchg r8, r8
call fcn.1404ab670
xchg r8, rbx
mov r8, rax
xchg r8, rbx
jmp 0x14049f7c7
xchg r13, rbx
mov r13, rbx
xchg rbx, r13
mov rcx, qword [rsp + 0x38]
test rcx, rcx
mov dword [rsp - 0x1c], edx
je 0x14049f8ac
xchg r11, rax
mov r11, qword [rsp + 0x40]
xchg r11, rax
cmp rcx, rax
jb 0x14049f89f
add rax, qword [rsp + 0x48]
xchg r12, r12
xchg r8, rax
mov qword [rsp + 0x40], r8
xchg r8, rax
lea rcx, [rax*8]
mov dword [rsp - 0x38], 0x1f94b27c
call fcn.1400b71e0
xchg rcx, r15
mov r15, qword [rsp + 0x38]
xchg r15, rcx
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
xchg rbx, r13
mov rdx, rbx
xchg rbx, r13
test rcx, rcx
xchg rcx, rcx
je 0x14049f86a
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax + rdx*8]
xchg r10, rcx
mov qword [rdi + rdx*8], r10
xchg rcx, r10
inc rdx
xchg r12, rcx
mov r12, qword [rsp + 0x38]
xchg rcx, r12
cmp rdx, rcx
mov dword [rsp - 0x20], 0x313af55a
jb 0x14049f838
xchg r13, rax
mov r13, qword [rsp + 0x30]
xchg r13, rax
test rax, rax
je 0x14049f891
mov dword [rsp - 0x34], ecx
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
call fcn.1400b6f90
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x30], rdi
mov dword [rsp - 0x38], edx
jmp 0x14049f8f8
mov rdi, qword [rsp + 0x30]
xchg rcx, rcx
jmp 0x14049f8f8
mov rdi, qword [rsp + 0x30]
test rdi, rdi
jne 0x14049f8f8
mov dword [rsp - 0x40], 0x444f02f4
mov rcx, qword [rsp + 0x48]
xchg r14, rcx
mov qword [rsp + 0x40], r14
xchg r14, rcx
lea rcx, [rcx*8]
call fcn.1400b71e0
mov rcx, qword [rsp + 0x38]
mov dword [rsp - 0x24], 0x7c63001e
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
mov qword [rsp + 0x30], rax
lea rax, [rdi + rcx*8]
mov dword [rsp - 0x24], 0x2d002b21
inc rcx
xchg rcx, r8
mov qword [rsp + 0x38], r8
xchg r8, rcx
xchg rbp, rbx
mov qword [rax], rbp
xchg rbx, rbp
test r14b, 1
mov dword [rsp - 0x30], edx
je 0x14049f980
xchg rcx, r15
mov r15, qword [rbp - 0x50]
xchg rcx, r15
lea rax, [rbp - 0x48]
and r14d, 0xfffffffe
mov dword [rsp - 0x30], esp
cmp rcx, rax
jne 0x14049f978
lea rdi, [rbp - 0x48]
mov dword [rsp - 0x18], 0x3400265b
xor eax, eax
mov ecx, 0x565a879c
sub ecx, 0x20464c5c
add ecx, 0x3661cee7
xor ecx, 0x6c760a17
rep stosb byte [rdi], al
mov dword [rsp - 0x28], esi
jmp 0x14049f980
call fcn.1400b6f90
mov rbp, rbp
mov ecx, 0x71adb241
sub ecx, 0xb883a
add ecx, 0x6415c73
sub ecx, 0x77e385f2
call fcn.1400b6e40
xchg r12, r12
test rax, rax
je 0x14049f9c6
xor r8d, r8d
lea rdx, [rsp + 0x30]
xchg rsi, rsi
xchg rcx, rdx
mov rdx, rax
xchg rdx, rcx
call fcn.1404ab490
jmp 0x14049f9cf
xchg r13, r12
mov rax, r12
xchg r13, r12
lea rdx, [rbp + 0xf8]
xchg r10, rax
mov qword [rbp + 0xf8], r10
xchg r10, rax
xchg rsp, rcx
mov rsp, r12
xchg rcx, rsp
call fcn.1400b9cb0
mov dword [rsp - 0x44], 0x1dab85b9
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14049fa0e
call fcn.1400b6f90
mov dword [rsp - 0x14], esp
nop
add rsi, 0x3db62689
sub rsi, 0x3db62681
inc r15d
xchg r10, r10
cmp rsi, qword [rsp + 0x58]
jne 0x14049f312
mov r15, qword [rsp + 0x198]
xchg rdx, rsi
mov rdx, qword [rsp + 0x1a8]
xchg rsi, rdx
xchg r10, rcx
mov r10, qword [rbp + 0xe8]
xchg r10, rcx
call fcn.1400923e0
xchg rdi, rbp
mov rbp, qword [rsp + 0x1a0]
xchg rbp, rdi
mov rax, r12
sub rsp, 0xfffffffffffffe50
mov dword [rsp - 0x14], ecx
pop r14
nop
mov r13, qword [rsp]
add rsp, 8
pop r12
mov dword [rsp - 0x3c], 0x50101b8a
nop
mov rbx, qword [rsp]
add rsp, 8
nop
mov rbp, qword [rsp]
add rsp, 8
ret