Function at 0x180010290
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0xa0
mov rbx, rdx
mov rdi, rcx
test rdx, rdx
je 0x1800103b0
mov ecx, dword [0x180037d98]
mov rax, qword gs:[0x58]
mov edx, 4
mov rcx, qword [rax + rcx*8]
xor esi, esi
mov eax, dword [rdx + rcx]
cmp dword [0x1800383cc], eax
jg 0x180010458
cmp qword [0x1800383a8], 0
jne 0x1800103c0
mov dword [rbp - 0x29], 0xf377f30e
mov dword [rbp - 0x25], 0xf378f30a
mov dword [rbp - 0x21], 0xf33bf31f
mov dword [rbp - 0x1d], 0xf330f332
mov dword [rbp - 0x19], 0xf33af338
mov dword [rbp - 0x15], 0xf314f37f
mov dword [rbp - 0x11], 0xf342f30e
mov dword [rbp - 0xd], 0xf30df305
mov dword [rbp - 9], 0xf302f30b
mov dword [rbp - 5], 0xf32df347
mov dword [rbp - 1], 0xf32bf311
mov dword [rbp + 3], 0xf300f307
mov dword [rbp + 7], 0xf30df302
mov dword [rbp + 0xb], 0xf304f30e
mov dword [rbp + 0xf], 0xf322f314
mov dword [rbp + 0x13], 0xf31bf31c
mov dword [rbp + 0x17], 0xf319
mov edx, esi
mov r8d, 0xcab
nop dword [rax]
movsxd rax, edx
lea rcx, [rbp - 0x29]
lea rcx, [rcx + rax*2]
movzx eax, dx
sub ax, r8w
xor word [rcx], ax
inc edx
cmp edx, 0x21
jb 0x180010370
mov word [rbp + 0x19], si
lea rdx, [rbp - 0x29]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
call fcn.180015960
lea rdx, [0x180015b40]
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 al, al
jmp 0x1800103cb
inc r8
cmp byte [rax + r8], 0
je 0x1800103ef
jmp 0x1800103b4
mov r9, rbx
mov rcx, rdi
call fcn.180015df0
mov rbx, qword [rsp + 0xd0]
add rsp, 0xa0
pop rdi
pop rsi
pop rbp
ret
lea rcx, [0x1800383cc]
call fcn.18002a168
jmp 0x1800102dc
lea rdx, [rbp - 0x39]
lea rcx, [rbp + 0x27]
call fcn.180006240
nop
lea r8, [rbp + 0x27]
mov rdx, qword [0x180037eb8]
mov rcx, rdi
call fcn.1800104e0
mov qword [0x1800383a8], rax
mov rdx, qword [rbp + 0x3f]
cmp rdx, 0x10
jb 0x1800103de
inc rdx
mov rcx, qword [rbp + 0x27]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800104ce
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800104ce
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
lea rcx, [0x1800383cc]
call fcn.18002a1c8
cmp dword [0x1800383cc], 0xffffffff
jne 0x1800102dc
mov dword [rbp - 0x39], 0x2a112e10
mov dword [rbp - 0x35], 0x330b3f3c
mov word [rbp - 0x31], 0x3232
xor eax, eax
mov byte [rbp - 0x2f], al
mov eax, esi
nop dword [rax]
movsxd rcx, eax
lea rdx, [rbp - 0x39]
add rdx, rcx
lea ecx, [rax + 0x55]
xor byte [rdx], cl
inc eax
cmp eax, 0xa
jb 0x180010490
mov byte [rbp - 0x2f], 0
mov qword [rbp + 0x27], rsi
mov qword [rbp + 0x37], rsi
mov qword [rbp + 0x3f], sendto
mov byte [rbp + 0x27], 0
lea rax, [rbp - 0x39]
mov r8, 0xffffffffffffffff
jmp 0x1800103b4
call fcn.180029c7c
jmp 0x1800103de