Function at 0x140049100
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
mov rbp, rsp
sub rsp, 0x60
mov rax, qword [0x140ce2080]
xor rax, rsp
mov qword [rbp - 0x10], rax
movdqa xmm0, xmmword [0x140cc6480]
xor ebx, ebx
mov rdi, rcx
mov dword [rbp - 0x20], 0xe0f0d3e3
movdqu xmmword [rbp - 0x30], xmm0
mov ecx, ebx
mov dword [rbp - 0x1c], 0x100e4fa
nop
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x16
jb 0x140049140
mov rsi, 0xffffffffffffffff
mov byte [rbp - 0x19], bl
mov rax, rsi
lea rcx, [rbp - 0x30]
inc rax
cmp byte [rcx + rax], bl
jne 0x140049161
cmp qword [rdi + 0x18], 0x10
mov rcx, rdi
jb 0x140049176
mov rcx, qword [rdi]
mov rdx, qword [rdi + 0x10]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x88], r14
xor r8d, r8d
mov qword [rsp + 0x90], r15
mov qword [rsp + 0x20], rax
call fcn.1400368b0
cmp rax, rsi
jne 0x14004964b
movdqa xmm0, xmmword [0x140cc4660]
mov rcx, rbx
movdqu xmmword [rbp - 0x30], xmm0
mov byte [rbp - 0x20], 1
nop dword [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0xf
jb 0x1400491c0
mov r15, qword [rdi + 0x10]
lea rcx, [rbp - 0x30]
mov r14, qword [rdi + 0x18]
mov rax, rsi
mov byte [rbp - 0x20], bl
inc rax
cmp byte [rcx + rax], bl
jne 0x1400491e2
mov rcx, rdi
cmp r14, 0x10
jb 0x1400491f6
mov rcx, qword [rdi]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, r15
call fcn.1400368b0
cmp rax, rsi
jne 0x14004964b
mov dword [rbp - 0x30], 0xe5e6f0d5
mov rcx, rbx
mov dword [rbp - 0x2c], 0xedf5f3f6
mov word [rbp - 0x28], 0x100
nop word [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 8
jb 0x140049230
mov byte [rbp - 0x27], bl
lea rcx, [rbp - 0x30]
mov rax, rsi
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], bl
jne 0x140049250
mov rcx, rdi
cmp r14, 0x10
jb 0x140049264
mov rcx, qword [rdi]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, r15
call fcn.1400368b0
cmp rax, rsi
jne 0x14004964b
movdqa xmm0, xmmword [0x140cc4650]
mov rcx, rbx
movdqu xmmword [rbp - 0x30], xmm0
mov byte [rbp - 0x20], 1
nop word [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0xf
jb 0x1400492a0
mov byte [rbp - 0x20], bl
lea rcx, [rbp - 0x30]
mov rax, rsi
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], bl
jne 0x1400492c0
mov rcx, rdi
cmp r14, 0x10
jb 0x1400492d4
mov rcx, qword [rdi]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, r15
call fcn.1400368b0
cmp rax, rsi
jne 0x14004964b
movdqa xmm0, xmmword [0x140cc5c80]
mov rcx, rbx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0xf7d2e0f4
mov dword [rbp - 0x1c], 0xe5f9e1
mov byte [rbp - 0x18], 1
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x17
jb 0x140049320
mov byte [rbp - 0x18], bl
lea rcx, [rbp - 0x30]
mov rax, rsi
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], bl
jne 0x140049340
mov rcx, rdi
cmp r14, 0x10
jb 0x140049354
mov rcx, qword [rdi]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, r15
call fcn.1400368b0
cmp rax, rsi
jne 0x14004964b
movdqa xmm0, xmmword [0x140cc5f50]
mov rcx, rbx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0xd6eae0fe
mov dword [rbp - 0x1c], 0xdbc8eefa
mov word [rbp - 0x18], 0x100
nop word [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x18
jb 0x1400493a0
mov byte [rbp - 0x17], bl
lea rcx, [rbp - 0x30]
mov rax, rsi
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], bl
jne 0x1400493c0
mov rcx, rdi
cmp r14, 0x10
jb 0x1400493d4
mov rcx, qword [rdi]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, r15
call fcn.1400368b0
cmp rax, rsi
jne 0x14004964b
movdqa xmm0, xmmword [0x140cc6450]
mov rcx, rbx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0xccfce3
mov byte [rbp - 0x1c], 1
nop dword [rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x13
jb 0x140049410
mov byte [rbp - 0x1c], bl
lea rcx, [rbp - 0x30]
mov rax, rsi
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], bl
jne 0x140049430
mov rcx, rdi
cmp r14, 0x10
jb 0x140049444
mov rcx, qword [rdi]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, r15
call fcn.1400368b0
cmp rax, rsi
jne 0x14004964b
movdqa xmm0, xmmword [0x140cc5610]
mov rcx, rbx
movdqu xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x20], IStream_Reset
mov byte [rbp - 0x1e], 1
nop dword [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x11
jb 0x140049480
mov byte [rbp - 0x1e], bl
lea rcx, [rbp - 0x30]
mov rax, rsi
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], bl
jne 0x1400494a0
mov rcx, rdi
cmp r14, 0x10
jb 0x1400494b4
mov rcx, qword [rdi]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, r15
call fcn.1400368b0
cmp rax, rsi
jne 0x14004964b
movdqa xmm0, xmmword [0x140cc4f60]
mov rcx, rbx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0xbdbcae8c
mov dword [rbp - 0x1c], 0xa6b1bb91
mov dword [rbp - 0x18], 0x9b88a2
mov byte [rbp - 0x14], 1
nop word [rax + rax]
lea eax, [rcx - 0x42]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x1b
jb 0x140049500
mov byte [rbp - 0x14], bl
lea rcx, [rbp - 0x30]
mov rax, rsi
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], bl
jne 0x140049520
mov rcx, rdi
cmp r14, 0x10
jb 0x140049534
mov rcx, qword [rdi]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, r15
call fcn.1400368b0
cmp rax, rsi
jne 0x14004964b
movdqa xmm0, xmmword [0x140cc60d0]
mov rcx, rbx
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0xfcd0fefd
mov dword [rbp - 0x1c], 0xc7e3e5f0
mov word [rbp - 0x18], 0xda
mov byte [rbp - 0x16], 1
nop dword [rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 0x30], al
inc rcx
cmp rcx, 0x19
jb 0x140049580
mov byte [rbp - 0x16], bl
lea rcx, [rbp - 0x30]
mov rax, rsi
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], bl
jne 0x1400495a0
mov rcx, rdi
cmp r14, 0x10
jb 0x1400495b4
mov rcx, qword [rdi]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, r15
call fcn.1400368b0
cmp rax, rsi
jne 0x14004964b
movdqa xmm0, xmmword [0x140cc6440]
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0xecfcd0fc
mov dword [rbp - 0x1c], 0x100d5ca
nop dword [rax + rax]
lea eax, [rbx - 0x7f]
xor byte [rbp + rbx - 0x30], al
inc rbx
cmp rbx, 0x16
jb 0x1400495f0
mov byte [rbp - 0x19], 0
lea rax, [rbp - 0x30]
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x140049610
mov rcx, rdi
cmp r14, 0x10
jb 0x140049625
mov rcx, qword [rdi]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rdx, r15
call fcn.1400368b0
cmp rax, 0xffffffffffffffff
jne 0x14004964b
mov rcx, rdi
call fcn.14002c7e0
xor al, al
jmp 0x140049655
mov rcx, rdi
call fcn.14002c7e0
mov al, 1
mov r15, qword [rsp + 0x90]
mov r14, qword [rsp + 0x88]
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.1401308a0
mov rbx, qword [rsp + 0x98]
add rsp, 0x60
pop rdi
pop rsi
pop rbp
ret