Function at 0x140044e30
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
xor edx, edx
cmp byte [0x140136d48], dl
mov qword [rsp + 0x90], rdx
je 0x140045329
cmp byte [0x140136d49], dl
jne 0x1400457d2
lea rax, [0x140136d4a]
mov byte [0x140136d49], 1
mov ecx, 0xf
mov r8d, 3
sub rcx, rax
sub r8, rax
mov qword [rsp + 0xa0], rcx
mov r9d, 4
sub r9, rax
mov ecx, 0x10
sub rcx, rax
mov r10d, 5
mov qword [rsp + 0xa8], rcx
sub r10, rax
mov ecx, 0x11
mov r11d, 6
sub rcx, rax
sub r11, rax
mov qword [rsp + 0x28], rcx
mov ebx, 7
sub rbx, rax
mov edi, 8
sub rdi, rax
mov esi, 9
sub rsi, rax
mov r14d, 0xa
sub r14, rax
mov r15d, 0xb
sub r15, rax
mov r12d, 0xc
sub r12, rax
mov ebp, 0xd
sub rbp, rax
mov r13d, 0xe
sub r13, rax
mov ecx, 0x12
sub rcx, rax
movabs rax, 0xd28f2c51de26cd5
mov qword [rsp + 0x30], rcx
nop word [rax + rax]
mov rcx, qword [0x140136d70]
xor rcx, rdx
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
lea rax, [0x140136d48]
add rax, 2
add rdx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx]
xor al, cl
mov rcx, rdx
mov byte [rdx], al
lea rax, [0x140136d49]
sub rcx, rax
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 1]
xor al, cl
mov rcx, rdx
mov byte [rdx + 1], al
lea rax, [0x140136d48]
sub rcx, rax
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 2]
xor al, cl
lea rcx, [rdx + r8]
mov byte [rdx + 2], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 3]
xor al, cl
lea rcx, [rdx + r9]
mov byte [rdx + 3], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 4]
xor al, cl
lea rcx, [rdx + r10]
mov byte [rdx + 4], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 5]
xor al, cl
lea rcx, [rdx + r11]
mov byte [rdx + 5], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 6]
xor al, cl
lea rcx, [rdx + rbx]
mov byte [rdx + 6], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 7]
xor al, cl
lea rcx, [rdx + rdi]
mov byte [rdx + 7], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 8]
xor al, cl
lea rcx, [rsi + rdx]
mov byte [rdx + 8], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 9]
xor al, cl
lea rcx, [r14 + rdx]
mov byte [rdx + 9], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xa]
xor al, cl
lea rcx, [r15 + rdx]
mov byte [rdx + 0xa], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xb]
xor al, cl
lea rcx, [r12 + rdx]
mov byte [rdx + 0xb], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xc]
xor al, cl
mov byte [rdx + 0xc], al
lea rcx, [rdx + rbp]
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xd]
xor al, cl
lea rcx, [rdx + r13]
mov byte [rdx + 0xd], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xe]
xor al, cl
mov rcx, qword [rsp + 0xa0]
mov byte [rdx + 0xe], al
add rcx, rdx
xor rcx, qword [0x140136d70]
movabs rax, 0xd28f2c51de26cd5
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xf]
xor al, cl
mov rcx, qword [rsp + 0xa8]
mov byte [rdx + 0xf], al
add rcx, rdx
xor rcx, qword [0x140136d70]
movabs rax, 0xd28f2c51de26cd5
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0x10]
xor al, cl
mov rcx, qword [rsp + 0x28]
mov byte [rdx + 0x10], al
add rcx, rdx
xor rcx, qword [0x140136d70]
movabs rax, 0xd28f2c51de26cd5
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0x11]
xor al, cl
mov rcx, qword [rsp + 0x30]
mov byte [rdx + 0x11], al
add rcx, rdx
xor rcx, qword [0x140136d70]
movabs rax, 0xd28f2c51de26cd5
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0x12]
xor al, cl
mov byte [rdx + 0x12], al
movabs rax, 0xd28f2c51de26cd5
mov rdx, qword [rsp + 0x90]
add rdx, 0x13
mov qword [rsp + 0x90], rdx
cmp rdx, 0x26
jb 0x140044f30
jmp 0x1400457d2
lea rax, [0x140136d4a]
mov ecx, 0xf
sub rcx, rax
mov r8d, 3
mov qword [rsp + 0xa0], rcx
sub r8, rax
mov ecx, 0x10
mov r9d, 4
sub rcx, rax
sub r9, rax
mov qword [rsp + 0xa8], rcx
mov r10d, 5
sub r10, rax
mov ecx, 0x11
sub rcx, rax
mov r11d, 6
mov qword [rsp + 0x28], rcx
sub r11, rax
mov ebx, 7
mov edi, 8
sub rbx, rax
sub rdi, rax
mov esi, 9
mov r14d, 0xa
sub rsi, rax
sub r14, rax
mov r15d, 0xb
mov r12d, 0xc
sub r15, rax
sub r12, rax
mov ebp, 0xd
mov r13d, 0xe
sub rbp, rax
sub r13, rax
mov ecx, 0x12
sub rcx, rax
movabs rax, 0xd28f2c51de26cd5
mov qword [rsp + 0x30], rcx
nop dword [rax]
mov rcx, qword [0x140136d70]
xor rcx, rdx
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
lea rax, [0x140136d48]
add rax, 2
add rdx, rax
mov rax, rcx
shr rax, 7
xor al, cl
mov rcx, rdx
xor byte [rdx], al
lea rax, [0x140136d49]
sub rcx, rax
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 1]
xor al, cl
mov rcx, rdx
mov byte [rdx + 1], al
lea rax, [0x140136d48]
sub rcx, rax
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 2]
xor al, cl
lea rcx, [r8 + rdx]
mov byte [rdx + 2], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 3]
xor al, cl
lea rcx, [r9 + rdx]
mov byte [rdx + 3], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 4]
xor al, cl
lea rcx, [r10 + rdx]
mov byte [rdx + 4], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 5]
xor al, cl
lea rcx, [r11 + rdx]
mov byte [rdx + 5], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 6]
xor al, cl
lea rcx, [rbx + rdx]
mov byte [rdx + 6], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 7]
xor al, cl
lea rcx, [rdi + rdx]
mov byte [rdx + 7], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 8]
xor al, cl
lea rcx, [rsi + rdx]
mov byte [rdx + 8], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 9]
xor al, cl
lea rcx, [r14 + rdx]
mov byte [rdx + 9], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xa]
xor al, cl
lea rcx, [r15 + rdx]
mov byte [rdx + 0xa], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xb]
xor al, cl
lea rcx, [r12 + rdx]
mov byte [rdx + 0xb], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xc]
xor al, cl
lea rcx, [rdx + rbp]
mov byte [rdx + 0xc], al
xor rcx, qword [0x140136d70]
movabs rax, 0xd28f2c51de26cd5
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xd]
xor al, cl
lea rcx, [rdx + r13]
mov byte [rdx + 0xd], al
movabs rax, 0xd28f2c51de26cd5
xor rcx, qword [0x140136d70]
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xe]
xor al, cl
mov rcx, qword [rsp + 0xa0]
mov byte [rdx + 0xe], al
add rcx, rdx
xor rcx, qword [0x140136d70]
movabs rax, 0xd28f2c51de26cd5
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0xf]
xor al, cl
mov rcx, qword [rsp + 0xa8]
mov byte [rdx + 0xf], al
add rcx, rdx
xor rcx, qword [0x140136d70]
movabs rax, 0xd28f2c51de26cd5
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0x10]
xor al, cl
mov rcx, qword [rsp + 0x28]
mov byte [rdx + 0x10], al
add rcx, rdx
xor rcx, qword [0x140136d70]
movabs rax, 0xd28f2c51de26cd5
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0x11]
xor al, cl
mov rcx, qword [rsp + 0x30]
mov byte [rdx + 0x11], al
add rcx, rdx
xor rcx, qword [0x140136d70]
movabs rax, 0xd28f2c51de26cd5
xor rcx, rax
mov rax, rcx
shl rax, 0xd
xor rcx, rax
mov rax, rcx
shr rax, 7
xor al, byte [rdx + 0x12]
xor al, cl
mov byte [rdx + 0x12], al
movabs rax, 0xd28f2c51de26cd5
mov rdx, qword [rsp + 0x90]
add rdx, 0x13
mov qword [rsp + 0x90], rdx
cmp rdx, 0x26
jb 0x1400453e0
mov rcx, qword [rsp + 0x98]
lea r8, [0x140136d6f]
lea rdx, [0x140136d4a]
call fcn.1400049a0
mov rax, qword [rsp + 0x98]
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret