Function at 0x140119770
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
mov rdi, rcx
mov dword [rsp + 0x20], 0
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], 0
mov qword [rcx + 0x18], 0
mov qword [rcx + 0x10], 0
mov qword [rcx + 0x18], 0xf
mov byte [rcx], 0
mov dword [rsp + 0x20], 1
xor r8d, r8d
lea r13d, [r8 - 6]
mov rcx, rdx
cmp qword [rdx + 0x18], 0x10
jb 0x1401197dd
mov rcx, qword [rdx]
mov r10, rcx
mov r9, rcx
jmp 0x1401197e3
mov r10, rdx
mov r9, rdx
mov qword [rsp + 0x90], r10
mov rax, qword [rdx + 0x10]
add rax, r9
mov qword [rsp + 0x28], rax
movabs rdx, 0x7fffffffffffffff
movabs r11, 0x8000000000000000
cmp rcx, rax
je 0x140119d09
lea rbx, [0x1401a3220]
nop dword [rax + rax]
shl r8d, 8
movzx eax, byte [r10]
add r8d, eax
mov dword [rsp + 0x88], r8d
add r13d, 8
js 0x140119b54
movsxd r10, r8d
mov qword [rsp + 0x98], r10
nop dword [rax + rax]
mov r9d, r13d
cmp dword [0x1401a3268], 0
jne 0x1401199e3
mov eax, dword [0x1401a3264]
xor r8d, r8d
nop dword [rax]
xor byte [r8 + rbx], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 1], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 2], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 3], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 4], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 5], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 6], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 7], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 8], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 9], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 0xa], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 0xb], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [r8 + rbx + 0xc], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov edx, eax
shr edx, 0x11
xor eax, edx
mov edx, eax
shl edx, 5
xor eax, edx
add r8, 0xd
cmp r8, 0x41
jne 0x140119870
mov dword [0x1401a3268], 1
movabs rdx, 0x7fffffffffffffff
movzx ecx, r9b
mov rax, r10
sar rax, cl
and eax, 0x3f
movzx r15d, byte [rax + rbx]
mov rsi, qword [rdi + 0x10]
mov r14, qword [rdi + 0x18]
cmp rsi, r14
jae 0x140119a24
lea rax, [rsi + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp r14, 0x10
jb 0x140119a16
mov rax, qword [rdi]
mov byte [rax + rsi], r15b
mov byte [rax + rsi + 1], 0
jmp 0x140119b30
mov rax, rdx
sub rax, rsi
cmp rax, 1
jb 0x140119e6e
lea r12, [rsi + 1]
mov rbx, r12
or rbx, 0xf
cmp rbx, rdx
jbe 0x140119a54
mov rbx, rdx
mov rcx, r11
call fcn.1400db600
mov rbp, rax
jmp 0x140119aa8
mov rcx, r14
shr rcx, 1
mov rax, rdx
sub rax, rcx
cmp r14, rax
jbe 0x140119a75
mov rbx, rdx
mov rcx, r11
call fcn.1400db600
mov rbp, rax
jmp 0x140119aa8
lea rax, [r14 + rcx]
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140119a97
call fcn.1400db600
mov rbp, rax
jmp 0x140119aa8
test rcx, rcx
je 0x140119aa6
call fcn.140111dac
mov rbp, rax
jmp 0x140119aa8
xor ebp, ebp
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], rbx
mov r8, rsi
mov rcx, rbp
cmp r14, 0x10
jb 0x140119b03
mov rbx, qword [rdi]
mov rdx, rbx
call fcn.140118538
mov byte [rsi + rbp], r15b
mov byte [rsi + rbp + 1], 0
lea rdx, [r14 + 1]
cmp rdx, 0x1000
jb 0x140119af9
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x140119e67
mov rbx, rcx
mov rcx, rbx
call fcn.140111038
jmp 0x140119b14
mov rdx, rdi
call fcn.140118538
mov byte [rsi + rbp], r15b
mov byte [rsi + rbp + 1], 0
lea rbx, [0x1401a3220]
movabs r11, 0x8000000000000000
mov r10, qword [rsp + 0x98]
mov qword [rdi], rbp
sub r13d, 6
movabs rdx, 0x7fffffffffffffff
jns 0x140119850
mov r8d, dword [rsp + 0x88]
mov r10, qword [rsp + 0x90]
inc r10
mov qword [rsp + 0x90], r10
cmp r10, qword [rsp + 0x28]
jne 0x140119820
cmp r13d, 0xfffffffa
jle 0x140119d09
cmp dword [0x1401a3268], 0
jne 0x140119cec
mov ecx, dword [0x1401a3264]
xor edx, edx
nop dword [rax]
xor byte [rdx + rbx], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 1], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 2], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 3], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 4], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 5], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 6], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 7], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 8], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 9], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 0xa], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 0xb], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [rdx + rbx + 0xc], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
add rdx, 0xd
cmp rdx, 0x41
jne 0x140119b90
mov dword [0x1401a3268], 1
lea ecx, [r13 + 8]
shl r8d, 8
movsxd rdx, r8d
sar rdx, cl
and edx, 0x3f
movzx edx, byte [rdx + rbx]
mov rcx, rdi
call fcn.140109e40
mov rcx, qword [rdi + 0x10]
test cl, 3
je 0x140119e53
mov r14, rcx
movabs r12, 0x7fffffffffffffff
movabs r13, 0x8000000000000000
nop dword [rax]
mov rbp, qword [rdi + 0x18]
cmp rcx, rbp
jae 0x140119d58
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rbp, 0x10
jb 0x140119d4d
mov rax, qword [rdi]
mov word [rcx + rax], 0x3d
jmp 0x140119e43
mov rax, r12
sub rax, r14
cmp rax, 1
jb 0x140119e6e
lea r15, [r14 + 1]
mov rbx, r15
or rbx, 0xf
cmp rbx, r12
jbe 0x140119d88
mov rbx, r12
mov rcx, r13
call fcn.1400db600
mov rsi, rax
jmp 0x140119ddc
mov rcx, rbp
shr rcx, 1
mov rax, r12
sub rax, rcx
cmp rbp, rax
jbe 0x140119da9
mov rbx, r12
mov rcx, r13
call fcn.1400db600
mov rsi, rax
jmp 0x140119ddc
lea rax, [rcx + rbp]
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140119dcb
call fcn.1400db600
mov rsi, rax
jmp 0x140119ddc
test rcx, rcx
je 0x140119dda
call fcn.140111dac
mov rsi, rax
jmp 0x140119ddc
xor esi, esi
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], rbx
mov r8, r14
mov rcx, rsi
cmp rbp, 0x10
jb 0x140119e31
mov rbx, qword [rdi]
mov rdx, rbx
call fcn.140118538
mov word [r14 + rsi], 0x3d
lea rdx, [rbp + 1]
cmp rdx, 0x1000
jb 0x140119e27
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x140119e67
mov rbx, rcx
mov rcx, rbx
call fcn.140111038
jmp 0x140119e40
mov rdx, rdi
call fcn.140118538
mov word [r14 + rsi], 0x3d
mov qword [rdi], rsi
mov rcx, qword [rdi + 0x10]
mov r14, rcx
test cl, 3
jne 0x140119d30
mov rax, rdi
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
push rdi
call 0x14028bb88
int3
call fcn.1401043d0
int3