Function at 0x140054650
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x138]
sub rsp, 0x210
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x14013e0a0]
xor rax, rsp
mov qword [rbp + 0xf0], rax
mov r12, rcx
mov qword [rbp + 0xd8], rcx
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
movdqa xmm1, xmmword [0x14011ed50]
movdqu xmmword [rsp + 0x30], xmm1
mov dword [rsp + 0x40], 0xedf1fd
mov byte [rsp + 0x44], 1
xor r13d, r13d
mov ecx, r13d
lea eax, [rcx - 0x74]
xor byte [rsp + rcx + 0x30], al
inc rcx
cmp rcx, 0x13
jb 0x1400546c0
mov byte [rsp + 0x44], r13b
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqa xmmword [rsp + 0x60], xmm1
lea rax, [rsp + 0x30]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rax + r8], r13b
jne 0x1400546f5
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400035b0
mov dword [rsp + 0x70], r13d
mov dword [rsp + 0x20], 0xeef8e3e5
mov dword [rsp + 0x24], 0xccf6f8fc
mov dword [rsp + 0x28], 0xf2fdfae0
mov word [rsp + 0x2c], 0xf6
mov byte [rsp + 0x2e], 1
mov rcx, r13
nop dword [rax]
lea eax, [rcx - 0x74]
xor byte [rsp + rcx + 0x20], al
inc rcx
cmp rcx, 0xd
jb 0x140054740
mov byte [rsp + 0x2e], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], r13
mov qword [rbp - 0x70], r13
lea rax, [rsp + 0x20]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140054770
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x78]
call fcn.1400035b0
mov dword [rbp - 0x68], 1
mov dword [rsp + 0x20], 0xeef8e3e5
mov dword [rsp + 0x24], 0xccf6f8fc
mov dword [rsp + 0x28], 0xf5f6f5
mov byte [rsp + 0x2c], 1
mov rcx, r13
lea eax, [rcx - 0x74]
xor byte [rsp + rcx + 0x20], al
inc rcx
cmp rcx, 0xb
jb 0x1400547b0
mov byte [rsp + 0x2c], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x50], xmm1
lea rax, [rsp + 0x20]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400547e0
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x60]
call fcn.1400035b0
mov dword [rbp - 0x40], 2
mov dword [rsp + 0x20], 0xeef8e3e5
mov dword [rsp + 0x24], 0xccf6f8fc
mov dword [rsp + 0x28], 0xf4e0e7
mov byte [rsp + 0x2c], 1
mov rcx, r13
nop
lea eax, [rcx - 0x74]
xor byte [rsp + rcx + 0x20], al
inc rcx
cmp rcx, 0xb
jb 0x140054820
mov byte [rsp + 0x2c], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x20], r13
lea rax, [rsp + 0x20]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140054850
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x38]
call fcn.1400035b0
mov dword [rbp - 0x18], 3
mov dword [rsp + 0x20], 0xeef8e3e5
mov dword [rsp + 0x24], 0xccf6f8fc
mov dword [rsp + 0x28], 0xf3ffe2fc
mov word [rsp + 0x2c], 0x100
mov rcx, r13
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx - 0x74]
xor byte [rsp + rcx + 0x20], al
inc rcx
cmp rcx, 0xc
jb 0x1400548a0
mov byte [rsp + 0x2d], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp], xmm1
lea rax, [rsp + 0x20]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400548d0
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x10]
call fcn.1400035b0
mov dword [rbp + 0x10], 4
mov dword [rsp + 0x20], 0xeef8e3e5
mov dword [rsp + 0x24], 0xccf6f8fc
mov dword [rsp + 0x28], 0xe1e4f0e7
mov dword [rsp + 0x2c], 0x100ebfd
mov rcx, r13
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx - 0x74]
xor byte [rsp + rcx + 0x20], al
inc rcx
cmp rcx, 0xe
jb 0x140054920
mov byte [rsp + 0x2f], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x18], xmm0
mov qword [rbp + 0x28], r13
mov qword [rbp + 0x30], r13
lea rax, [rsp + 0x20]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140054950
lea rdx, [rsp + 0x20]
lea rcx, [rbp + 0x18]
call fcn.1400035b0
mov dword [rbp + 0x38], 5
mov dword [rsp + 0x20], 0xe4ede2e0
mov dword [rsp + 0x24], 0x100f5f5
mov rcx, r13
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx - 0x74]
xor byte [rsp + rcx + 0x20], al
inc rcx
cmp rcx, 6
jb 0x140054990
mov byte [rsp + 0x27], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x50], xmm1
lea rax, [rsp + 0x20]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400549c0
lea rdx, [rsp + 0x20]
lea rcx, [rbp + 0x40]
call fcn.1400035b0
mov dword [rbp + 0x60], 6
mov dword [rsp + 0x20], 0xecedf8ff
mov dword [rsp + 0x24], 0xe1e2f5
mov byte [rsp + 0x28], 1
mov rcx, r13
nop word [rax + rax]
lea eax, [rcx - 0x74]
xor byte [rsp + rcx + 0x20], al
inc rcx
cmp rcx, 7
jb 0x140054a00
mov byte [rsp + 0x28], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x78], r13
mov qword [rbp + 0x80], r13
lea rax, [rsp + 0x20]
mov r8, rbx
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140054a30
lea rdx, [rsp + 0x20]
lea rcx, [rbp + 0x68]
call fcn.1400035b0
mov dword [rbp + 0x88], 7
mov dword [rsp + 0x20], 0xe3e7ecea
mov dword [rsp + 0x24], 0x100f5f5
mov rcx, r13
nop word [rax + rax]
lea eax, [rcx - 0x74]
xor byte [rsp + rcx + 0x20], al
inc rcx
cmp rcx, 6
jb 0x140054a70
mov byte [rsp + 0x27], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xa0], xmm1
lea rax, [rsp + 0x20]
nop
inc rbx
cmp byte [rax + rbx], 0
jne 0x140054aa0
mov r8, rbx
lea rdx, [rsp + 0x20]
lea rcx, [rbp + 0x90]
call fcn.1400035b0
mov dword [rbp + 0xb0], 8
mov qword [rbp + 0xe0], r13
mov qword [rbp + 0xe8], r13
mov ecx, 0x48
call fcn.1400a09c8
mov r15, rax
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp + 0xe0], rax
lea r14, [rsp + 0x50]
movabs rbx, 0x38e38e38e38e38e
nop dword [rax]
mov r9, r14
mov r8, r15
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0xe0]
call fcn.140063b10
movups xmm6, xmmword [rax]
movsd xmm0, qword [rax + 0x10]
movsd qword [rsp + 0x40], xmm0
cmp byte [rsp + 0x40], 0
jne 0x140054bc5
cmp qword [rbp + 0xe8], rbx
je 0x140054d4b
mov rdi, qword [rbp + 0xe0]
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], r13
mov ecx, 0x48
call fcn.1400a09c8
mov rsi, rax
mov qword [rsp + 0x28], rax
mov rdx, r14
lea rcx, [rax + 0x20]
call fcn.1400036b0
mov eax, dword [r14 + 0x20]
mov dword [rsi + 0x40], eax
mov qword [rsi], rdi
mov qword [rsi + 8], rdi
mov qword [rsi + 0x10], rdi
mov word [rsi + 0x18], 0
mov qword [rsp + 0x28], r13
movaps xmmword [rsp + 0x30], xmm6
mov r8, rsi
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0xe0]
call fcn.140025c50
movabs rbx, 0x38e38e38e38e38e
add r14, 0x28
lea rax, [rbp + 0xb8]
cmp r14, rax
jne 0x140054b10
lea r9, [fcn.140003990]
mov edx, 0x28
lea r8d, [rdx - 0x1f]
lea rcx, [rsp + 0x50]
call fcn.1400a0a04
mov r13, qword [rbp + 0xe0]
mov rdi, qword [r13 + 8]
mov r14, r13
cmp byte [rdi + 0x19], 0
jne 0x140054c7f
mov rsi, qword [r12 + 0x10]
mov r15, qword [r12 + 0x18]
mov rbx, rdi
nop dword [rax]
nop dword [rax + rax]
lea rcx, [rbx + 0x20]
mov rdx, r12
cmp r15, 0x10
jb 0x140054c31
mov rdx, qword [r12]
mov rdi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x140054c3f
mov rcx, qword [rcx]
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
call fcn.1400c2470
test eax, eax
je 0x140054c58
jns 0x140054c63
mov al, 0xff
jmp 0x140054c65
cmp rdi, rsi
jae 0x140054c61
mov al, 0xff
jmp 0x140054c65
jbe 0x140054c6f
mov al, 1
test al, al
jns 0x140054c6f
mov rbx, qword [rbx + 0x10]
jmp 0x140054c75
mov r14, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x140054c20
mov rdi, qword [r13 + 8]
cmp byte [r14 + 0x19], 0
jne 0x140054c96
lea r8, [r14 + 0x20]
mov rdx, r12
call fcn.140063590
test al, al
je 0x140054c99
mov r14, r13
mov ebx, dword [r14 + 0x40]
mov r8, rdi
lea rdx, [rbp + 0xe0]
lea rcx, [rbp + 0xe0]
call fcn.140060800
mov edx, 0x48
mov rcx, qword [rbp + 0xe0]
call fcn.1400a09c0
nop
mov rdx, qword [r12 + 0x18]
cmp rdx, 0x10
jb 0x140054cfd
inc rdx
mov rcx, qword [r12]
cmp rdx, 0x1000
jb 0x140054cf8
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140054d51
mov rcx, r8
call fcn.1400a09c0
mov qword [r12 + 0x10], 0
mov qword [r12 + 0x18], send
mov byte [r12], 0
mov eax, ebx
mov rcx, qword [rbp + 0xf0]
xor rcx, rsp
call fcn.1400a09a0
lea r11, [rsp + 0x210]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140013cf0
nop
call fcn.1400d2350
int3