Function at 0x140072c60
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0xa0]
sub rsp, 0x1a0
mov rax, qword [0x14013e0a0]
xor rax, rsp
mov qword [rbp + 0x90], rax
mov rbx, rdx
mov rsi, rcx
mov qword [rsp + 0x78], rcx
xor r12d, r12d
mov dword [rsp + 0x58], r12d
movabs rax, 0x1845c8a0ce512957
imul rdx
mov rdi, rdx
sar rdi, 0xd
mov rax, rdi
shr rax, 0x3f
add rdi, rax
imul rax, rdi, 0x15180
mov rcx, rbx
sub rcx, rax
movabs r8, 0x48d159e26af37c05
mov rax, r8
imul rcx
mov r14, rdx
sar r14, 0xa
mov rax, r14
shr rax, 0x3f
add r14, rax
mov rax, r8
imul rbx
sar rdx, 0xa
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rax, rdx, 0xe10
mov rcx, rbx
sub rcx, rax
movabs r8, 0x8888888888888889
mov rax, r8
imul rcx
lea r15, [rcx + rdx]
sar r15, 5
mov rax, r15
shr rax, 0x3f
add r15, rax
mov rax, r8
imul rbx
add rdx, rbx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul eax, edx, 0x3c
sub ebx, eax
xor edx, edx
mov r8d, 0xe8
lea rcx, [rbp - 0x60]
call fcn.1400c2030
lea rcx, [rbp - 0x60]
call fcn.140006230
nop
mov edx, edi
lea rcx, [rbp - 0x60]
call fcn.140058000
mov r8, rax
mov dword [rsp + 0x38], 0xeef7f1b4
mov dword [rsp + 0x3c], 0xbba0b9eb
mov word [rsp + 0x40], 0x100
mov ecx, r12d
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx - 0x6c]
xor byte [rsp + rcx + 0x38], al
inc rcx
cmp rcx, 8
jb 0x140072da0
mov byte [rsp + 0x41], 0
lea rdx, [rsp + 0x38]
mov rcx, r8
call fcn.1400793b0
mov rdi, rax
mov rax, qword [rax]
movsxd rcx, dword [rax + 4]
mov byte [rcx + rdi + 0x58], 0x30
mov edx, 2
lea rcx, [rbp - 0x80]
call fcn.14007af54
mov rdx, qword [rax + 8]
mov r8, qword [rax]
mov rax, qword [rdi]
movsxd rcx, dword [rax + 4]
add rcx, rdi
call r8
mov edx, r14d
mov rcx, rdi
call fcn.140058000
mov r8, rax
mov dword [rsp + 0x28], 0xfcfce5ac
mov dword [rsp + 0x2c], 0xb2abb0
mov byte [rsp + 0x30], 1
mov rcx, r12
nop dword [rax]
lea eax, [rcx - 0x74]
xor byte [rsp + rcx + 0x28], al
inc rcx
cmp rcx, 7
jb 0x140072e20
mov byte [rsp + 0x30], 0
lea rdx, [rsp + 0x28]
mov rcx, r8
call fcn.1400793b0
mov rdi, rax
mov rax, qword [rax]
movsxd rcx, dword [rax + 4]
mov byte [rcx + rdi + 0x58], 0x30
mov edx, 2
lea rcx, [rbp - 0x70]
call fcn.14007af54
mov rdx, qword [rax + 8]
mov r8, qword [rax]
mov rax, qword [rdi]
movsxd rcx, dword [rax + 4]
add rcx, rdi
call r8
mov edx, r15d
mov rcx, rdi
call fcn.140058000
mov r8, rax
mov dword [rsp + 0x48], 0xf9fff8b4
mov dword [rsp + 0x4c], 0xbba0b9eb
mov word [rsp + 0x50], 0x100
mov rcx, r12
nop dword [rax + rax]
lea eax, [rcx - 0x6c]
xor byte [rsp + rcx + 0x48], al
inc rcx
cmp rcx, 8
jb 0x140072ea0
mov byte [rsp + 0x51], 0
lea rdx, [rsp + 0x48]
mov rcx, r8
call fcn.1400793b0
mov rdi, rax
mov rax, qword [rax]
movsxd rcx, dword [rax + 4]
mov byte [rcx + rdi + 0x58], 0x30
mov edx, 2
lea rcx, [rsp + 0x60]
call fcn.14007af54
mov rdx, qword [rax + 8]
mov r8, qword [rax]
mov rax, qword [rdi]
movsxd rcx, dword [rax + 4]
add rcx, rdi
call r8
mov edx, ebx
mov rcx, rdi
call fcn.140058000
mov r8, rax
mov dword [rsp + 0x20], 0xecebfeac
mov word [rsp + 0x24], 0xe3
mov byte [rsp + 0x26], 1
mov rax, r12
nop dword [rax + rax]
lea ecx, [rax - 0x74]
xor byte [rsp + rax + 0x20], cl
inc rax
cmp rax, 5
jb 0x140072f20
mov byte [rsp + 0x26], 0
lea rdx, [rsp + 0x20]
mov rcx, r8
call fcn.1400793b0
nop
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r12
mov qword [rsi + 0x18], send
mov byte [rsi], 0
mov dword [rsp + 0x58], 4
movups xmmword [rsp + 0x60], xmm0
mov rcx, qword [rbp + 0x18]
mov eax, ecx
and al, 0x22
cmp al, 2
je 0x140072f92
mov rax, qword [rbp - 0x18]
mov r8, qword [rax]
test r8, r8
je 0x140072f92
mov rax, qword [rbp - 0x38]
mov rdx, qword [rax]
cmp r8, qword [rbp + 0x10]
cmovb r8, qword [rbp + 0x10]
sub r8, rdx
jmp 0x140072fc3
test cl, 4
jne 0x140072fb9
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax]
test rcx, rcx
je 0x140072fb9
mov rax, qword [rbp - 0x40]
mov rdx, qword [rax]
mov rax, qword [rbp - 8]
movsxd r8, dword [rax]
add r8, rcx
sub r8, rdx
jmp 0x140072fc3
mov r8, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x140072fd1
mov rcx, rsi
call fcn.1400078e0
nop
mov rax, qword [rbp - 0x60]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx - 0x60], rax
mov rax, qword [rbp - 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx - 0x64], edx
lea rcx, [rbp - 0x58]
call fcn.140005f30
mov rax, qword [rbp - 0x60]
movsxd rcx, dword [rax + 4]
lea rdx, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x60], rdx
mov rcx, qword [rbp - 0x60]
movsxd rdx, dword [rcx + 4]
lea r8d, [rdx - 0x10]
mov dword [rbp + rdx - 0x64], r8d
lea rcx, vtable.std::ios_base.0
mov qword [rbp + 0x28], rcx
lea rcx, [rbp + 0x28]
call fcn.14007ae48
nop
mov rax, rsi
mov rcx, qword [rbp + 0x90]
xor rcx, rsp
call fcn.1400a09a0
lea r11, [rsp + 0x1a0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret