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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x58
lea rbp, [rsp + 0x50]
movdqa xmmword [rbp - 0x10], xmm8
movdqa xmmword [rbp - 0x20], xmm7
movdqa xmmword [rbp - 0x30], xmm6
mov r10, r8
mov r9, rdx
mov r15, rcx
mov eax, dword [0x140229840]
mov ecx, dword [0x140229844]
not eax
not ecx
and ecx, eax
not ecx
or ecx, 0xf66f7fd9
add ecx, 0xc6027ee7
cmp ecx, 0x6d217f63
jae 0x14012e720
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
nop word cs:[rax + rax]
mov ecx, dword [0x140229848]
mov eax, dword [0x14022984c]
mov edx, ecx
not edx
and edx, eax
mov r8d, eax
not r8d
and r8d, ecx
imul r8d, edx
mov edx, ecx
and edx, eax
or ecx, eax
imul ecx, edx
add ecx, r8d
or ecx, 0x81187f5f
add ecx, 0x3c55d7cb
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov rdi, rsp
cmp ecx, 0xb2d3b423
ja 0x14012e720
nop
mov eax, dword [0x140229854]
mov ecx, eax
xor ecx, ecx
not ecx
and ecx, dword [0x140229850]
xor ecx, eax
mov eax, ecx
not eax
and eax, 0x6c7f2e1
mov edx, ecx
and edx, 0xf9380d1e
imul edx, eax
mov eax, ecx
and eax, 0x6c7f2e1
or ecx, 0x6c7f2e1
imul ecx, eax
lea eax, [rcx + rdx]
add eax, 0xb19a7aad
cmp eax, 0xd972a714
ja 0x14012e770
cmp qword [r15 + 0x18], 0
je 0x14012eacc
nop word cs:[rax + rax]
mov eax, dword [0x140229858]
sub eax, dword [0x14022985c]
or eax, 0x90bf7d73
add eax, 0xb0a44733
mov ecx, eax
and ecx, 0xe200182
add ecx, ecx
sub eax, ecx
cmp eax, 0xac5898d2
je 0x14012e7d0
mov rcx, qword [r15 + 0x20]
mov rdx, qword [r15 + 0x28]
sub rsp, 0x20
mov qword [rbp - 0x50], r9
mov r8, r9
mov qword [rbp - 0x38], r10
mov r9, r10
call fcn.1401081d0
add rsp, 0x20
mov rsi, rax
mov r9, qword [r15]
mov rbx, qword [r15 + 8]
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
xor eax, eax
nop
test al, al
jne 0x14012e840
movabs r11, 0x93f212071eb38c6c
pcmpeqd xmm7, xmm7
xor eax, eax
mov qword [rbp - 0x40], rax
mov r8, qword [rbp - 0x38]
mov qword [rbp - 0x48], rdi
mov r12, qword [rbp - 0x50]
nop word cs:[rax + rax]
mov eax, dword [0x140229860]
mov ecx, dword [0x140229864]
add eax, ecx
add eax, 0xaf1e4ac8
mov ecx, 0xac40702b
imul rax, rcx
shr rax, 0x3f
or eax, 0xbe74648a
cmp eax, 0xfe5b45e
jb 0x14012e870
and rsi, rbx
movdqu xmm8, xmmword [r9 + rsi]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm6
pmovmskb edi, xmm0
test di, di
je 0x14012ea10
nop dword [rax + rax]
tzcnt ecx, edi
mov rax, rsi
sub rax, r11
add rax, r11
add rax, rcx
mov rcx, rax
xor rcx, rbx
not rcx
or rax, rbx
and rax, rcx
not rax
shl rax, 5
cmp qword [rax + r9 + 0x10], r8
jne 0x14012e9c0
mov r15, r9
lea r13, [rax + r9]
add r13, 0x20
mov eax, dword [0x140229868]
mov ecx, dword [0x14022986c]
not eax
not ecx
and ecx, eax
not ecx
and ecx, 0xa20234a
add ecx, 0xb809da00
cmp ecx, 0x11e6fd09
jb 0x14012e9f0
nop dword [rax + rax]
mov eax, dword [0x140229870]
xor eax, dword [0x140229874]
and eax, 0xa9896c1
imul r14d, eax, 0xd7e920a9
xor r14d, 0x2f0e943c
mov rdx, qword [r13 - 0x18]
sub rsp, 0x20
mov rcx, r12
call sub.VCRUNTIME140.dll_memcmp
mov r8, qword [rbp - 0x38]
add rsp, 0x20
cmp r14d, 0xb06029ab
ja 0x14012e9f0
mov ecx, dword [0x140229878]
mov edx, dword [0x14022987c]
xor edx, ecx
not edx
and edx, ecx
or edx, 0x10020
xor edx, 0x4e025004
and edx, 0x6e175574
cmp edx, 0x88a0d74a
ja 0x14012e974
test eax, eax
mov r9, r15
movabs r11, 0x93f212071eb38c6c
je 0x14012eac0
nop word cs:[rax + rax]
mov eax, dword [0x140229890]
or eax, dword [0x140229894]
or eax, 0xee7e9bed
add eax, 0x8f0d7b9c
cmp eax, 0x2654965f
jb 0x14012e9c0
lea eax, [rdi - 1]
and eax, edi
mov edi, eax
test ax, ax
jne 0x14012e8c0
jmp 0x14012ea10
mov rdx, qword [r13 - 0x18]
sub rsp, 0x20
mov rcx, r12
call sub.VCRUNTIME140.dll_memcmp
mov r8, qword [rbp - 0x38]
add rsp, 0x20
jmp 0x14012e930
xor eax, eax
test al, al
jne 0x14012ea10
mov eax, dword [0x140229880]
xor edx, edx
div dword [0x140229884]
mov eax, dword [0x14022988c]
not eax
add eax, dword [0x140229888]
mov ecx, 0x2935be14
sub ecx, eax
or ecx, 0x6bb39be3
xor ecx, 0xd6cbd2f
cmp ecx, 0x904296e4
jb 0x14012ea24
pcmpeqb xmm8, xmm7
pmovmskb eax, xmm8
test ax, ax
jne 0x14012eacc
mov eax, dword [0x140229898]
sub eax, dword [0x14022989c]
and eax, 0xdf1d2d71
cmp eax, 0x7fe7a72e
je 0x14012ea5c
mov rdx, qword [rbp - 0x40]
add rdx, 0x10
mov rax, rdx
and rax, rsi
mov rcx, rdx
mov qword [rbp - 0x40], rdx
xor rsi, rdx
lea rsi, [rsi + rax*2]
mov eax, dword [0x1402298a0]
mov ecx, eax
not ecx
or ecx, dword [0x1402298a4]
add eax, ecx
inc eax
or eax, 0x9040031
and eax, 0x898400bf
imul eax, eax, 0xfce30728
cmp eax, 0xe2d6a92e
je 0x14012ea90
jmp 0x14012e870
xor eax, eax
test al, al
mov rdi, qword [rbp - 0x48]
je 0x14012ead3
jmp 0x14012eb28
xor ecx, ecx
jmp 0x14012eb50
mov eax, dword [0x1402298a8]
add eax, dword [0x1402298ac]
xor eax, 0x57252241
add eax, 0xcf96de1e
imul rsi, rax, 0x7a016a7b
shr rsi, 0x3d
mov rcx, qword [r13 - 8]
sub rsp, 0x20
mov edx, 0x200
xor r8d, r8d
mov r9, rdi
call fcn.140151220
add rsp, 0x20
movsd xmm0, qword [rdi + 8]
cvtsd2ss xmm0, xmm0
test eax, eax
je 0x14012eb20
xorps xmm0, xmm0
cmp esi, 0xfdd8f740
jbe 0x14012eb46
mov rcx, qword [r13 - 8]
sub rsp, 0x20
mov edx, 0x200
xor r8d, r8d
mov r9, rdi
call fcn.140151220
add rsp, 0x20
jmp 0x14012ead3
mov ecx, 1
nop dword [rax + rax]
mov eax, dword [0x1402298b0]
xor edx, edx
div dword [0x1402298b4]
or eax, 0xed1597c2
shr eax, 1
imul rax, rax, 0x362d42dd
shr rax, 0x3b
cmp eax, 0x1b9bd791
ja 0x14012eb50
mov eax, ecx
movaps xmm6, xmmword [rbp - 0x30]
movaps xmm7, xmmword [rbp - 0x20]
movaps xmm8, xmmword [rbp - 0x10]
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret