Function at 0x48ec0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa0
mov rax, qword [0x00078100]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x118]
mov rsi, qword [rsp + 0x100]
mov r13, qword [rsp + 0x108]
mov qword [rsp + 0x40], rcx
mov rcx, qword [rsp + 0x120]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rsp + 0x130]
mov qword [rsp + 0x58], rax
lea rax, [rcx - 4]
mov ebp, 0xf
sub bpl, sil
mov r15, r9
mov r12, r8
mov dword [rsp + 0x38], edx
cmp rax, 0xc
ja 0x49297
test cl, 1
jne 0x49297
lea rax, [rsi - 7]
cmp rax, 6
ja 0x49297
lea eax, [rcx - 2]
mov edi, 0x10
lea r14d, [rbp - 1]
and al, 0xfe
lea rcx, [rsp + 0x61]
mov r8, rsi
or al, dil
mov rdx, r9
shl al, 2
or al, r14b
mov byte [rsp + 0x60], al
call fcn.0005d130
xor ebx, ebx
mov r11, r12
cmp bpl, bl
jbe 0x48fb2
lea rax, [rsp + 0x6f]
movzx ecx, bpl
mov byte [rax], r11b
dec rax
shr r11, 8
sub rcx, 1
jne 0x48fa2
cmp r11, rbx
ja 0x49297
xor eax, eax
mov rcx, rbx
mov rdx, rdi
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
mov al, byte [rsp + rcx + 0x60]
inc rcx
xor byte [rsp + rcx + 0x6f], al
sub rdx, 1
jne 0x48fcd
mov rcx, qword [rsp + 0x40]
lea rax, [rsp + 0x30]
lea r9, [rsp + 0x70]
lea rdx, [rsp + 0x70]
mov r8, rdi
mov qword [rsp + 0x20], rax
call fcn.00041910
cmp eax, ebx
jne 0x4929c
xor eax, eax
mov rcx, rbx
mov rdx, rdi
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov rax, qword [r13]
mov qword [rsp + 0x62], rax
mov eax, dword [r13 + 8]
mov byte [rsp + 0x60], bl
mov dword [rsp + 0x6a], eax
mov al, byte [r13 + 0xc]
mov byte [rsp + 0x61], 0xd
mov byte [rsp + 0x6e], al
mov al, byte [rsp + rcx + 0x60]
inc rcx
xor byte [rsp + rcx + 0x6f], al
sub rdx, 1
jne 0x4903b
mov r13, qword [rsp + 0x40]
lea rax, [rsp + 0x30]
lea r9, [rsp + 0x70]
lea rdx, [rsp + 0x70]
mov r8, rdi
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.00041910
cmp eax, ebx
jne 0x4929c
lea rcx, [rsp + 0x81]
mov r8, rsi
mov rdx, r15
mov byte [rsp + 0x80], r14b
call fcn.0005d130
lea rcx, [rsp + rsi + 0x81]
movzx r8d, bpl
xor edx, edx
call fcn.0005d630
mov byte [rsp + 0x8f], 1
cmp r12, rbx
jbe 0x49229
mov r14, qword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
cmp r12, rdi
movzx esi, r12b
cmova esi, edi
cmp dword [rsp + 0x38], ebx
jne 0x4912e
xor eax, eax
lea rcx, [rsp + 0x60]
movzx r8d, sil
mov rdx, r14
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
call fcn.0005d130
mov r11, rbx
mov rcx, rdi
mov al, byte [rsp + r11 + 0x60]
inc r11
xor byte [rsp + r11 + 0x6f], al
sub rcx, 1
jne 0x490f4
lea rax, [rsp + 0x30]
lea r9, [rsp + 0x70]
lea rdx, [rsp + 0x70]
mov r8, rdi
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.00041910
cmp eax, ebx
jne 0x4929c
lea rax, [rsp + 0x30]
lea r9, [rsp + 0x60]
lea rdx, [rsp + 0x80]
mov r8, rdi
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.00041910
cmp eax, ebx
jne 0x4929c
cmp sil, bl
jbe 0x4918e
lea rax, [rsp + 0x60]
mov rdx, r14
mov r8, r15
sub rdx, rax
lea rax, [rsp + 0x60]
lea rcx, [rsp + 0x60]
sub r8, rax
movzx r9d, sil
mov al, byte [rdx + rcx]
xor al, byte [rcx]
mov byte [r8 + rcx], al
inc rcx
sub r9, 1
jne 0x4917c
cmp dword [rsp + 0x38], 1
jne 0x491f2
xor eax, eax
lea rcx, [rsp + 0x60]
movzx r8d, sil
mov rdx, r15
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
call fcn.0005d130
mov r11, rbx
mov rcx, rdi
mov al, byte [rsp + r11 + 0x60]
inc r11
xor byte [rsp + r11 + 0x6f], al
sub rcx, 1
jne 0x491b8
lea rax, [rsp + 0x30]
lea r9, [rsp + 0x70]
lea rdx, [rsp + 0x70]
mov r8, rdi
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.00041910
cmp eax, ebx
jne 0x4929c
movzx eax, sil
mov dl, bl
add r15, rax
add r14, rax
sub r12, rax
cmp bpl, bl
jbe 0x49220
lea rcx, [rsp + 0x8f]
movzx eax, dl
sub rcx, rax
add byte [rcx], 1
jne 0x49220
inc dl
cmp dl, bpl
jb 0x49206
cmp r12, rbx
ja 0x490c1
cmp bpl, bl
jbe 0x49245
lea rax, [rsp + 0x8f]
movzx edx, bpl
mov byte [rax], bl
dec rax
sub rdx, 1
jne 0x4923a
lea rax, [rsp + 0x30]
lea r9, [rsp + 0x60]
lea rdx, [rsp + 0x80]
mov r8, rdi
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.00041910
cmp eax, ebx
jne 0x4929c
mov al, byte [rsp + rbx + 0x60]
inc rbx
xor byte [rsp + rbx + 0x6f], al
sub rdi, 1
jne 0x4926b
mov r8, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x70]
call fcn.0005d130
xor eax, eax
jmp 0x4929c
mov eax, 0xfffffff3
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.0005cf80
mov rbx, qword [rsp + 0xe8]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret