Function at 0x1400288b0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov rax, qword [0x14003f040]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rax, rdx
xor ebx, ebx
and rax, 0xfffffffffffff000
mov r15, r8
add rax, 0x1000
mov r14, rdx
mov r9d, ebx
mov qword [rsp + 0x20], rax
mov r8, 0xffffffffffffffff
mov edx, ebx
mov rsi, rcx
call fcn.14001c3d0
mov rdi, rax
test rax, rax
jne 0x140028ac3
movdqa xmm3, xmmword [0x14003a720]
lea rcx, [rbp - 0x45]
movdqa xmm4, xmmword [0x14003a7c0]
mov edx, 0xb891
mov dword [rbp - 0x49], 0xb8a6b8d1
mov dword [rbp - 0x45], 0xb8adb8d1
mov dword [rbp - 0x41], 0xb8eeb8cd
mov dword [rbp - 0x3d], 0xb8b6b8fe
mov dword [rbp - 0x39], 0xb8b3b8e6
mov dword [rbp - 0x35], 0xb8f9b8f5
mov dword [rbp - 0x31], 0xb8f8b8fa
mov dword [rbp - 0x2d], 0xb8f8b8fb
mov dword [rbp - 0x29], 0xb8feb8ee
mov dword [rbp - 0x25], 0xb8edb8bc
mov dword [rbp - 0x21], 0xb8f8b8ff
mov dword [rbp - 0x1d], 0xb8d2b8c5
mov dword [rbp - 0x19], 0xb8c5b882
mov dword [rbp - 0x15], 0xb8d7b8cb
mov dword [rbp - 0x11], 0xb8cab886
mov dword [rbp - 0xd], 0xb8c5b8cc
mov word [rbp - 9], bx
mov byte [rbp - 7], 1
nop dword [rax]
nop word [rax + rax]
movd xmm1, dword [rcx - 4]
lea rax, [rdx - 0xb891]
xorps xmm0, xmm0
lea rcx, [rcx + 0x10]
punpcklwd xmm1, xmm0
movq xmm2, rax
punpckldq xmm1, xmm0
lea rax, [rdx - 5]
punpcklqdq xmm2, xmm2
paddq xmm2, xmm4
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rax
pshuflw xmm1, xmm0, 0xd8
lea rax, [rdx - 3]
movd dword [rcx - 0x14], xmm1
xorps xmm0, xmm0
movd xmm1, dword [rcx - 0x10]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
punpcklqdq xmm2, xmm2
paddq xmm2, xmm3
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rax
pshuflw xmm1, xmm0, 0xd8
lea rax, [rdx - 1]
movd dword [rcx - 0x10], xmm1
xorps xmm0, xmm0
movd xmm1, dword [rcx - 0xc]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
punpcklqdq xmm2, xmm2
paddq xmm2, xmm3
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rax
pshuflw xmm1, xmm0, 0xd8
movq xmm0, rdx
movd dword [rcx - 0xc], xmm1
add rdx, 8
movd xmm1, dword [rcx - 8]
punpcklqdq xmm2, xmm0
xorps xmm0, xmm0
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
lea rax, [rdx - 0xb891]
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
movd dword [rcx - 8], xmm1
cmp rax, 0x20
jb 0x1400289b0
mov byte [rbp - 7], bl
lea rdx, [rbp - 0x49]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
call fcn.140023cc0
lea rdx, [0x140023ea0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
xor eax, eax
jmp 0x140028f5d
lea r8, [rax + 0x28]
mov dword [rbp + 0x27], ebx
mov r9d, 4
lea rdx, [rbp + 0x27]
mov rcx, rsi
call fcn.14001bb70
test al, al
jne 0x140028b77
lea rcx, [rbp - 0x49]
mov dword [rbp - 0x49], 0xb8a0b8d7
mov dword [rbp - 0x45], 0xb8afb8d3
mov dword [rbp - 0x41], 0xb8f0b8d3
mov dword [rbp - 0x3d], 0xb8b4b8fc
mov dword [rbp - 0x39], 0xb8b5b8e0
mov dword [rbp - 0x35], 0xb8f2b8e4
mov dword [rbp - 0x31], 0xb8fdb8f9
mov dword [rbp - 0x2d], 0xb8efb8ba
mov dword [rbp - 0x29], 0xb8f8b8f4
mov dword [rbp - 0x25], 0xb8c0b8be
mov dword [rbp - 0x21], 0xb8e5b8ed
mov dword [rbp - 0x1d], 0xb883b8ee
mov dword [rbp - 0x19], 0xb885b89e
mov dword [rbp - 0x15], 0xb8deb8c4
mov dword [rbp - 0x11], 0xb8ccb8dc
mov dword [rbp - 0xd], 0xb8c4b8e9
mov dword [rbp - 9], 0xb8c3b8d9
mov dword [rbp - 5], 0xb8da
mov byte [rbp - 1], 1
call fcn.140028f80
mov rdx, rax
jmp 0x140028aa0
mov eax, dword [rbp + 0x27]
cmp rax, r14
jae 0x140028d79
movdqa xmm3, xmmword [0x14003a720]
lea rcx, [rbp - 0x45]
movdqa xmm4, xmmword [0x14003a7d0]
mov edx, 0xb893
mov dword [rbp - 0x49], 0xb8a0b8d7
mov dword [rbp - 0x45], 0xb8afb8d3
mov dword [rbp - 0x41], 0xb8feb8d3
mov dword [rbp - 0x3d], 0xb8ffb8e7
mov dword [rbp - 0x39], 0xb8fbb8f0
mov dword [rbp - 0x35], 0xb8e3b8b1
mov dword [rbp - 0x31], 0xb8f8b8b8
mov dword [rbp - 0x2d], 0xb8f7b8f6
mov dword [rbp - 0x29], 0xb8feb8f3
mov dword [rbp - 0x25], 0xb8ebb8ff
mov dword [rbp - 0x21], 0xb881b8c5
mov dword [rbp - 0x1d], 0xb8cdb8c7
mov dword [rbp - 0x19], 0xb8d0b8cb
mov dword [rbp - 0x15], 0xb8cfb8c1
mov dword [rbp - 0x11], 0xb8c4b888
mov dword [rbp - 0xd], 0xb8c6b8cf
mov dword [rbp - 9], 0xb8dfb8c3
mov dword [rbp - 5], 0xb883b8d7
mov dword [rbp - 1], 0xb8d2b890
mov dword [rbp + 3], 0xb8d6b8de
mov dword [rbp + 7], 0xb8dbb8d5
mov dword [rbp + 0xb], 0xb8d9b8df
mov dword [rbp + 0xf], 0xb899b8df
mov dword [rbp + 0x13], 0xb8cbb8cf
mov word [rbp + 0x17], bx
mov byte [rbp + 0x19], 1
nop dword [rax]
movd xmm1, dword [rcx - 4]
lea rax, [rdx - 0xb893]
xorps xmm0, xmm0
lea rcx, [rcx + 0x10]
punpcklwd xmm1, xmm0
movq xmm2, rax
punpckldq xmm1, xmm0
lea rax, [rdx - 5]
punpcklqdq xmm2, xmm2
paddq xmm2, xmm4
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rax
pshuflw xmm1, xmm0, 0xd8
lea rax, [rdx - 3]
movd dword [rcx - 0x14], xmm1
xorps xmm0, xmm0
movd xmm1, dword [rcx - 0x10]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
punpcklqdq xmm2, xmm2
paddq xmm2, xmm3
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rax
pshuflw xmm1, xmm0, 0xd8
lea rax, [rdx - 1]
movd dword [rcx - 0x10], xmm1
xorps xmm0, xmm0
movd xmm1, dword [rcx - 0xc]
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
punpcklqdq xmm2, xmm2
paddq xmm2, xmm3
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
movq xmm2, rax
pshuflw xmm1, xmm0, 0xd8
movq xmm0, rdx
movd dword [rcx - 0xc], xmm1
add rdx, 8
movd xmm1, dword [rcx - 8]
punpcklqdq xmm2, xmm0
xorps xmm0, xmm0
punpcklwd xmm1, xmm0
punpckldq xmm1, xmm0
lea rax, [rdx - 0xb893]
xorps xmm2, xmm1
pshufd xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
movd dword [rcx - 8], xmm1
cmp rax, 0x30
jb 0x140028c50
mov byte [rbp + 0x19], bl
lea rdx, [rbp - 0x49]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
call fcn.140023cc0
lea rdx, [0x140023ea0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
mov rdx, rdi
mov rcx, rsi
call fcn.14001cf30
mov rdx, rdi
mov rcx, rsi
call fcn.14001d290
xor eax, eax
jmp 0x140028f5d
mov rdx, rdi
mov rcx, rsi
call fcn.14001c610
mov r14, rax
test rax, rax
jne 0x140028e3f
lea rcx, [rbp - 0x49]
mov dword [rbp - 0x49], 0xb8a6b8d1
mov dword [rbp - 0x45], 0xb8adb8d1
mov dword [rbp - 0x41], 0xb8eeb8cd
mov dword [rbp - 0x3d], 0xb8b6b8fe
mov dword [rbp - 0x39], 0xb8b3b8e6
mov dword [rbp - 0x35], 0xb8f0b8e7
mov dword [rbp - 0x31], 0xb8b7b8e2
mov dword [rbp - 0x2d], 0xb8fdb8f5
mov dword [rbp - 0x29], 0xb8bbb8f6
mov dword [rbp - 0x25], 0xb8fcb8ec
mov dword [rbp - 0x21], 0xb8fab8f9
mov dword [rbp - 0x1d], 0xb881b8d3
mov dword [rbp - 0x19], 0xb8c2b8c1
mov dword [rbp - 0x15], 0xb8cdb8c7
mov dword [rbp - 0x11], 0xb88bb8c3
mov dword [rbp - 0xd], 0xb8cab888
mov dword [rbp - 9], 0xb8ceb8c6
mov dword [rbp - 5], 0xb8c3b8cd
mov dword [rbp - 1], 0xb8c1b8c7
mov dword [rbp + 3], 0xb891b8d7
mov dword [rbp + 7], 0xb8c3b8c7
mov dword [rbp + 0xb], 0xb89a
mov byte [rbp + 0xf], 1
call fcn.140019d00
mov rdx, rax
jmp 0x140028d40
mov rdx, rdi
mov rcx, rsi
call fcn.14001c9c0
test al, al
jne 0x140028f52
lea rcx, [rbp - 0x49]
mov dword [rbp - 0x49], 0xb8a6b8d1
mov dword [rbp - 0x45], 0xb8adb8d1
mov dword [rbp - 0x41], 0xb8eeb8cd
mov dword [rbp - 0x3d], 0xb8b6b8fe
mov dword [rbp - 0x39], 0xb8b3b8e6
mov dword [rbp - 0x35], 0xb8fdb8f7
mov dword [rbp - 0x31], 0xb8f9b8f7
mov dword [rbp - 0x2d], 0xb8fcb8ff
mov dword [rbp - 0x29], 0xb8ebb8ba
mov dword [rbp - 0x25], 0xb8f2b8ee
mov dword [rbp - 0x21], 0xb8fab8ea
mov dword [rbp - 0x1d], 0xb8d5b8c3
mov dword [rbp - 0x19], 0xb8ccb8cb
mov dword [rbp - 0x15], 0xb885b8ca
mov dword [rbp - 0x11], 0xb8c8b8c0
mov dword [rbp - 0xd], 0xb889b8da
mov dword [rbp - 9], 0xb8cfb8c7
mov dword [rbp - 5], 0xb88db8c0
mov dword [rbp - 1], 0xb8ceb8de
mov dword [rbp + 3], 0xb8d4b8d7
mov dword [rbp + 7], 0xb89fb8c1
mov dword [rbp + 0xb], 0xb8d6b894
mov dword [rbp + 0xf], 0xb8d2b8da
mov dword [rbp + 0x13], 0xb8d7b8d9
mov dword [rbp + 0x17], 0xb8d5b8d3
mov dword [rbp + 0x1b], 0xb89db8db
mov dword [rbp + 0x1f], 0xb8cfb8cb
mov word [rbp + 0x23], bx
mov byte [rbp + 0x25], 1
call fcn.140021870
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov rdx, rax
call fcn.140023cc0
lea rdx, [0x140023ea0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
call fcn.14001cd20
jmp 0x140028d5c
test r15, r15
je 0x140028f5a
mov qword [r15], rdi
mov rax, r14
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.14002dc20
mov rbx, qword [rsp + 0x108]
add rsp, 0xc0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret