Function at 0x140003970
Capabilities:
Encode data using base64

Disassembly:
push rbp
push rbx
push rsi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x50
mov rax, qword [0x140076040]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov r10d, dword [rcx + 0x10]
xor r14d, r14d
cmp qword [rcx + 0x18], 0xf
mov rsi, rdx
mov r12, rcx
mov dword [rbp - 0x20], r10d
mov r13d, r14d
mov r15d, r14d
mov r8d, r14d
mov edx, r10d
jbe 0x1400039bd
mov rbx, qword [rcx]
mov rcx, rbx
jmp 0x1400039c0
mov rbx, r12
add rcx, qword [r12 + 0x10]
cmp byte [rcx - 1], 0x3d
jne 0x1400039dd
nop dword [rax + rax]
inc r8d
lea rcx, [rcx - 1]
cmp byte [rcx - 1], 0x3d
je 0x1400039d0
lea eax, [rdx + rdx*2]
mov qword [rsp + 0xa0], rdi
add eax, eax
cdq
and edx, 7
add eax, edx
sar eax, 3
sub eax, r8d
mov r8, qword [rsi + 0x10]
movsxd rdx, eax
cmp rdx, r8
ja 0x140003a19
mov qword [rsi + 0x10], rdx
mov rax, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x140003a13
mov rax, qword [rsi]
mov byte [rax + rdx], r13b
jmp 0x140003a74
mov r9, qword [rsi + 0x18]
mov rcx, rdx
sub rcx, r8
mov rax, r9
sub rax, r8
mov qword [rbp - 0x18], rcx
cmp rcx, rax
ja 0x140003a5d
mov qword [rsi + 0x10], rdx
mov rax, rsi
cmp r9, 0xf
jbe 0x140003a42
mov rax, qword [rsi]
lea rdi, [rax + r8]
xor edx, edx
mov r8, rcx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memset
mov rax, qword [rbp - 0x18]
mov byte [rdi + rax], r13b
jmp 0x140003a70
mov r9, rcx
mov byte [rsp + 0x20], r13b
mov rdx, rcx
mov rcx, rsi
call fcn.140002220
mov r10d, dword [rbp - 0x20]
cmp qword [r12 + 0x18], 0xf
mov r8, r12
jbe 0x140003a88
mov r8, qword [r12]
mov rdx, r8
jmp 0x140003a8b
mov rdx, r12
add rdx, qword [r12 + 0x10]
mov rcx, r8
mov rax, rdx
mov r9, r14
sub rax, r8
cmp r8, rdx
cmova rax, r14
test rax, rax
je 0x140003b03
cmp rax, 0x40
jb 0x140003b03
movdqa xmm1, xmmword [0x14006b0e0]
and rax, 0xffffffffffffffc0
nop word [rax + rax]
movdqu xmm0, xmmword [rcx]
add r9, 0x40
psubb xmm0, xmm1
movdqu xmmword [rcx], xmm0
movdqu xmm0, xmmword [rcx + 0x10]
psubb xmm0, xmm1
movdqu xmmword [rcx + 0x10], xmm0
movdqu xmm0, xmmword [rcx + 0x20]
psubb xmm0, xmm1
movdqu xmmword [rcx + 0x20], xmm0
movdqu xmm0, xmmword [rcx + 0x30]
psubb xmm0, xmm1
movdqu xmmword [rcx + 0x30], xmm0
add rcx, 0x40
cmp r9, rax
jne 0x140003ac0
cmp rcx, rdx
je 0x140003b1a
nop dword [rax + rax]
dec byte [rcx]
inc rcx
cmp rcx, rdx
jne 0x140003b10
test r10d, r10d
je 0x140003ea2
movzx r9d, byte [rbp - 0x15]
mov rax, r14
movzx r8d, byte [rbp - 0x16]
mov r12d, 0x3f
movzx edx, byte [rbp - 0x17]
movzx ecx, byte [rbp - 0x18]
nop
dec r10d
mov dword [rbp - 0x20], r10d
movzx r10d, byte [rbx]
cmp r10b, 0x3d
je 0x140003d12
mov byte [rbp + rax - 0x18], r10b
inc rbx
inc rax
inc r13d
cmp rax, 4
jne 0x140003cf3
movzx edx, byte [rbp - 0x18]
lea ecx, [rdx - 0x41]
cmp cl, 0x19
jbe 0x140003ba6
lea eax, [rdx - 0x61]
cmp al, 0x19
ja 0x140003b85
lea ecx, [rdx - 0x47]
jmp 0x140003ba6
lea eax, [rdx - 0x30]
cmp al, 9
ja 0x140003b91
lea ecx, [rdx + 4]
jmp 0x140003ba6
cmp dl, 0x2b
jne 0x140003b9a
mov cl, 0x3e
jmp 0x140003ba6
cmp dl, 0x2f
mov ecx, 0xff
cmove ecx, r12d
movzx r8d, byte [rbp - 0x17]
mov byte [rbp - 0x18], cl
lea edx, [r8 - 0x41]
cmp dl, 0x19
jbe 0x140003bea
lea eax, [r8 - 0x61]
cmp al, 0x19
ja 0x140003bc5
lea edx, [r8 - 0x47]
jmp 0x140003bea
lea eax, [r8 - 0x30]
cmp al, 9
ja 0x140003bd3
lea edx, [r8 + 4]
jmp 0x140003bea
cmp r8b, 0x2b
jne 0x140003bdd
mov dl, 0x3e
jmp 0x140003bea
cmp r8b, 0x2f
mov edx, 0xff
cmove edx, r12d
movzx r9d, byte [rbp - 0x16]
mov byte [rbp - 0x17], dl
lea r8d, [r9 - 0x41]
cmp r8b, 0x19
jbe 0x140003c31
lea eax, [r9 - 0x61]
cmp al, 0x19
ja 0x140003c0a
lea r8d, [r9 - 0x47]
jmp 0x140003c31
lea eax, [r9 - 0x30]
cmp al, 9
ja 0x140003c18
lea r8d, [r9 + 4]
jmp 0x140003c31
cmp r9b, 0x2b
jne 0x140003c23
mov r8b, 0x3e
jmp 0x140003c31
cmp r9b, 0x2f
mov r8d, 0xff
cmove r8d, r12d
movzx r10d, byte [rbp - 0x15]
mov byte [rbp - 0x16], r8b
lea r9d, [r10 - 0x41]
cmp r9b, 0x19
jbe 0x140003c79
lea eax, [r10 - 0x61]
cmp al, 0x19
ja 0x140003c52
lea r9d, [r10 - 0x47]
jmp 0x140003c79
lea eax, [r10 - 0x30]
cmp al, 9
ja 0x140003c60
lea r9d, [r10 + 4]
jmp 0x140003c79
cmp r10b, 0x2b
jne 0x140003c6b
mov r9b, 0x3e
jmp 0x140003c79
cmp r10b, 0x2f
mov r9d, 0xff
cmove r9d, r12d
movzx eax, cl
mov byte [rbp - 0x15], r9b
shl al, 2
movzx r10d, dl
shr r10b, 4
movzx r11d, r8b
shr r11b, 2
and r10b, 3
add r10b, al
and r11b, 0xf
movzx eax, dl
movzx edi, r8b
shl al, 4
shl dil, 6
add r11b, al
add dil, r9b
mov rax, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x140003cbf
mov rax, qword [rsi]
mov byte [rax + r15], r10b
mov rax, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x140003cd0
mov rax, qword [rsi]
mov byte [r15 + rax + 1], r11b
mov rax, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x140003ce2
mov rax, qword [rsi]
mov byte [r15 + rax + 2], dil
mov r13d, r14d
add r15, 3
mov rax, r14
jmp 0x140003d05
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
movzx edx, byte [rbp - 0x17]
movzx ecx, byte [rbp - 0x18]
mov r10d, dword [rbp - 0x20]
test r10d, r10d
jne 0x140003b40
test r13d, r13d
je 0x140003ea2
movsxd rax, r13d
cmp rax, 4
jge 0x140003d50
jae 0x140003ec6
mov byte [rbp + rax - 0x18], r14b
inc rax
cmp rax, 4
jl 0x140003d24
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
movzx edx, byte [rbp - 0x17]
movzx ecx, byte [rbp - 0x18]
nop word [rax + rax]
lea r11d, [rcx - 0x41]
cmp r11b, 0x19
jbe 0x140003d8b
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x140003d67
lea r11d, [rcx - 0x47]
jmp 0x140003d8b
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x140003d74
lea r11d, [rcx + 4]
jmp 0x140003d8b
cmp cl, 0x2b
jne 0x140003d7e
mov r11b, 0x3e
jmp 0x140003d8b
cmp cl, 0x2f
mov r11d, 0xff
cmove r11d, r12d
lea r10d, [rdx - 0x41]
cmp r10b, 0x19
jbe 0x140003dc6
lea eax, [rdx - 0x61]
cmp al, 0x19
ja 0x140003da2
lea r10d, [rdx - 0x47]
jmp 0x140003dc6
lea eax, [rdx - 0x30]
cmp al, 9
ja 0x140003daf
lea r10d, [rdx + 4]
jmp 0x140003dc6
cmp dl, 0x2b
jne 0x140003db9
mov r10b, 0x3e
jmp 0x140003dc6
cmp dl, 0x2f
mov r10d, 0xff
cmove r10d, r12d
lea ecx, [r8 - 0x41]
cmp cl, 0x19
jbe 0x140003e02
lea eax, [r8 - 0x61]
cmp al, 0x19
ja 0x140003ddd
lea ecx, [r8 - 0x47]
jmp 0x140003e02
lea eax, [r8 - 0x30]
cmp al, 9
ja 0x140003deb
lea ecx, [r8 + 4]
jmp 0x140003e02
cmp r8b, 0x2b
jne 0x140003df5
mov cl, 0x3e
jmp 0x140003e02
cmp r8b, 0x2f
mov ecx, 0xff
cmove ecx, r12d
lea edx, [r9 - 0x41]
cmp dl, 0x19
jbe 0x140003e3e
lea eax, [r9 - 0x61]
cmp al, 0x19
ja 0x140003e19
lea edx, [r9 - 0x47]
jmp 0x140003e3e
lea eax, [r9 - 0x30]
cmp al, 9
ja 0x140003e27
lea edx, [r9 + 4]
jmp 0x140003e3e
cmp r9b, 0x2b
jne 0x140003e31
mov dl, 0x3e
jmp 0x140003e3e
cmp r9b, 0x2f
mov edx, 0xff
cmove edx, r12d
movzx eax, r10b
shl r11b, 2
shr al, 4
and al, 3
shl r10b, 4
add al, r11b
mov byte [rbp - 0x18], al
movzx eax, cl
shr al, 2
and al, 0xf
shl cl, 6
add al, r10b
add cl, dl
mov byte [rbp - 0x17], al
lea eax, [r13 - 1]
mov byte [rbp - 0x16], cl
movsxd rdx, eax
test eax, eax
jle 0x140003ea2
nop word [rax + rax]
cmp qword [rsi + 0x18], 0xf
mov rax, rsi
movzx ecx, byte [rbp + r14 - 0x18]
jbe 0x140003e93
mov rax, qword [rsi]
mov byte [rax + r15], cl
inc r14
inc r15
cmp r14, rdx
jl 0x140003e80
mov rdi, qword [rsp + 0xa0]
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.14005ec90
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbx
pop rbp
ret
call fcn.14005f068
int3