Function at 0x140049650
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov qword [rbp - 0x20], 0xfffffffffffffffe
mov qword [rax + 0x20], rbx
mov rsi, rcx
lea rax, [0x14010d280]
mov qword [rcx], rax
xor edi, edi
mov dword [rcx + 8], edi
add rcx, 0xc
xor edx, edx
lea r8d, [rdi + 0x20]
call fcn.1400ea570
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
lea rcx, [rsi + 0x30]
call fcn.14004926c
nop
lea rcx, [rsi + 0x70]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.14004926c
nop
lea rcx, [rsi + 0xb0]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.14004926c
nop
lea rcx, [rsi + 0xf0]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.14004926c
nop
lea rcx, [rsi + 0x130]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.1400492f4
nop
lea rcx, [rsi + 0x170]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.1400492f4
nop
lea rcx, [rsi + 0x1b0]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.140048f3c
nop
lea rcx, [rsi + 0x1f0]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.140048f3c
nop
mov qword [rsi + 0x230], rdi
mov qword [rsi + 0x238], rdi
mov qword [rsi + 0x240], rdi
mov qword [rsi + 0x248], rdi
mov qword [rsi + 0x250], rdi
mov qword [rsi + 0x258], rdi
lea rcx, [rsi + 0x260]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.14004926c
nop
lea rbx, [rsi + 0x2a0]
mov dword [rbp + 0x48], edi
mov qword [rbx], rdi
mov qword [rbx + 8], rdi
mov qword [rbx + 0x10], rdi
lea r8, [rbp + 0x48]
xor edx, edx
mov rcx, rbx
call fcn.14004c578
mov qword [rbx + 0x18], rdi
lea rcx, [rsi + 0x2c0]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.14004948c
nop
lea rcx, [rsi + 0x300]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.14004948c
nop
lea rcx, [rsi + 0x340]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.14004948c
nop
mov byte [rsi + 0x380], 1
lea rcx, [rsi + 0x388]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.14004904c
nop
lea rbx, [rsi + 0x3c8]
mov qword [rbp + 0x50], rbx
mov qword [rbx], rdi
mov qword [rbx + 8], rdi
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.14004c0f4
mov qword [rbx], rax
lea rcx, [rbx + 0x10]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.14004937c
nop
lea rcx, [rbx + 0x50]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.140048fc4
nop
lea rcx, [rsi + 0x458]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.140049404
nop
lea rcx, [rsi + 0x498]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.140049404
nop
lea rcx, [rsi + 0x4d8]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.140049404
nop
lea rcx, [rsi + 0x518]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.140049404
nop
lea rcx, [rsi + 0x558]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.140049404
nop
lea rcx, [rsi + 0x598]
call fcn.14004959c
nop
mov qword [rsi + 0xc20], rdi
mov dword [rsi + 0xc28], edi
mov qword [rsi + 0xc48], 0xf
mov qword [rsi + 0xc40], rdi
mov byte [rsi + 0xc30], dil
mov word [rsi + 0xc50], 0x101
mov byte [rsi + 0xc52], 1
mov dword [rsi + 0xc58], edi
or eax, 0xffffffff
mov dword [rsi + 0xc60], eax
mov dword [rsi + 0xc64], eax
mov dword [rsi + 0xc68], eax
mov byte [rsi + 0xc6c], dil
mov qword [rsi + 0xc70], rdi
mov qword [rsi + 0xc78], 0x2710
mov dword [rsi + 0xc80], 0x1e8480
mov dword [rsi + 0xc84], 0x3e8
mov qword [rsi + 0xc88], 0x4c4b40
mov qword [rsi + 0xc90], rdi
mov qword [rsi + 0xc98], rdi
mov qword [rsi + 0xca0], rdi
mov qword [rsi + 0xca8], rdi
lea rcx, [rsi + 0xcb0]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.14004926c
nop
lea rcx, [rsi + 0xcf0]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.1400491e4
nop
mov qword [rsi + 0xd30], rdi
mov qword [rsi + 0xd38], rdi
lea rcx, [rsi + 0xd40]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.14004915c
nop
lea rcx, [rsi + 0xd80]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.1400490d4
nop
lea rcx, [rsi + 0xdc0]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.1400492f4
nop
mov byte [rsi + 0xe00], 1
lea rcx, [rsi + 0xe08]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.140048eb4
nop
lea rbx, [rsi + 0xe48]
mov qword [rbx], rdi
mov qword [rbx + 8], rdi
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.14004bdb8
mov qword [rbx], rax
lea rcx, [rsi + 0xe58]
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x48]
call fcn.140049514
nop
mov dword [rsi + 0xe98], edi
mov ebx, edi
lea r12, [0x140000000]
mov r13d, 0xcdcd
mov r15d, 0x6161
movzx eax, word [rbx + r12 + 0x154090]
xor ax, r13w
add ax, r15w
mov word [rbp + 0x48], ax
mov r9b, byte [0x14016ffd3]
lea r8, [rbp + 0x48]
lea rdx, [rbp - 0x18]
lea rcx, [rsi + 0x30]
call fcn.140048058
add rbx, 2
cmp rbx, 0xf4
jb 0x140049a3b
mov ebx, r15d
movzx eax, word [rdi + r12 + 0x154110]
xor ax, r13w
add ax, bx
mov word [rbp + 0x48], ax
mov r9b, byte [0x14016ffd3]
lea r8, [rbp + 0x48]
lea rdx, [rbp - 0x18]
lea rcx, [rsi + 0x70]
call fcn.140048058
add rdi, 2
cmp rdi, 0x144
jb 0x140049a78
mov rax, rsi
mov rbx, qword [rsp + 0x98]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret