Function at 0x14008a680
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, 0x18
lea rbp, [rsp + 0x10]
mov r12, r8
mov r14, rdx
mov eax, dword [0x141dcbb78]
imul eax, dword [0x141dcbb7c]
xor eax, 0x8c0b0482
and eax, 0x8c4b6496
imul eax, eax, 0x71234b73
cmp eax, 0x23067c3e
jae 0x14008a6e0
mov eax, 0x10
call fcn.1400ed360
sub rsp, rax
mov eax, 0x20
call fcn.1400ed360
sub rsp, rax
nop dword [rax]
mov eax, dword [0x141dcbb80]
mov edx, dword [0x141dcbb84]
add edx, eax
add edx, 0xe7fd2af8
xor edx, 0x88a4a902
or edx, 0x174a02f5
mov eax, 0x10
call fcn.1400ed360
sub rsp, rax
mov rdi, rsp
mov eax, 0x20
call fcn.1400ed360
sub rsp, rax
mov rbx, rsp
cmp edx, 0xd8300e86
ja 0x14008a6e0
nop dword [rax + rax]
mov eax, dword [0x141dcbb88]
and eax, dword [0x141dcbb8c]
and eax, 0xea4d5d21
imul rax, rax, 0x3f1785a1
shr rax, 0x3c
imul eax, eax, 0x45b5ce50
cmp eax, 0x8655b
ja 0x14008a730
nop dword [rax]
mov eax, dword [0x141dcbb90]
xor eax, dword [0x141dcbb94]
or eax, 0x4169eb
add eax, 0x41f2219a
and eax, 0xa99d9c
cmp eax, 0xf0587db8
ja 0x14008a760
test r12, r12
js 0x14008a7ea
mov r8d, 0xe26ccd25
nop dword [rax]
mov eax, dword [0x141dcbba8]
xor edx, edx
div dword [0x141dcbbac]
imul eax, eax, 0x7a4d56b2
imul rax, r8
shr rax, 0x3e
xor eax, 0xdae78395
cmp eax, 0x7e0c7245
jb 0x14008a790
test r12, r12
mov qword [rbp - 0x10], rcx
je 0x14008a7e3
mov eax, dword [0x141dcbbb0]
imul eax, dword [0x141dcbbb4]
add eax, 0xdbcf244c
cmp eax, 0xebabcdc5
jbe 0x14008aef1
jmp 0x14008af1b
mov ecx, 1
jmp 0x14008a843
mov eax, dword [0x141dcbb98]
imul eax, dword [0x141dcbb9c]
add eax, 0xd7045211
or eax, 0xe61dac86
add eax, 0xe95b9fdd
cmp eax, 0xcfcc03fd
ja 0x14008a83d
mov eax, dword [0x141dcbba0]
mov ecx, dword [0x141dcbba4]
add eax, ecx
add eax, 0x430620
imul rcx, rax, 0x3de122ab
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
ud2
ud2
mov eax, dword [0x141dcbbe0]
xor edx, edx
div dword [0x141dcbbe4]
or eax, 0xdbff54b9
add eax, 0x33f78055
cmp eax, 0x7733cd03
jbe 0x14008a875
mov qword [rbx], r12
mov qword [rbx + 8], rcx
mov qword [rbx + 0x10], 0
mov byte [rbx + 0x18], 1
mov r15, r14
lea rax, [r14 + r12*2]
mov qword [rbp - 8], rax
mov eax, dword [0x141dcbbe8]
xor edx, edx
div dword [0x141dcbbec]
mov qword [rbx], r12
mov qword [rbx + 8], rcx
mov qword [rbx + 0x10], 0
mov byte [rbx + 0x18], 1
cmp eax, 0x3a64bc54
je 0x14008a880
xor edx, edx
mov dword [rbp + 4], 0
mov rsi, rcx
nop word cs:[rax + rax]
cmp word [rbp + 4], 0
je 0x14008a8e0
movzx eax, word [rbp + 2]
mov r8d, eax
jmp 0x14008a96d
mov eax, dword [0x141dcbbf0]
sub eax, dword [0x141dcbbf4]
imul rax, rax, 0x29cbe747
shr rax, 0x3d
or eax, 0xe36acb54
cmp eax, 0xb1e28563
jb 0x14008a8e0
cmp r15, qword [rbp - 8]
je 0x14008ae8c
nop dword [rax]
mov eax, dword [0x141dcbbf8]
imul eax, dword [0x141dcbbfc]
and eax, 0x9b690952
add eax, 0x79a73dbd
imul rcx, rax, 0x1889ed8d
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
cmp eax, 0x6b2e7709
ja 0x14008a910
lea rax, [r15 + 2]
mov ecx, dword [0x141dcbc00]
or ecx, dword [0x141dcbc04]
xor ecx, 0x85110094
and ecx, 0x9f150596
movzx r8d, word [r15]
cmp ecx, 0x5243100e
je 0x14008a946
mov r15, rax
mov ecx, r8d
and ecx, 0xf800
movzx eax, r8w
cmp ecx, 0xd800
jne 0x14008a9a0
cmp eax, 0xdbff
jbe 0x14008ab30
mov dword [rbp + 4], 0
jmp 0x14008abbe
mov ecx, dword [0x141dcbc08]
add ecx, dword [0x141dcbc0c]
or ecx, 0xd4d32ac6
and ecx, 0xd5d76ae6
cmp ecx, 0xa0b67d1c
je 0x14008a9a0
mov rcx, rax
shl rcx, 0x10
nop word [rax + rax]
mov eax, dword [0x141dcbc10]
xor eax, dword [0x141dcbc14]
add eax, 0xb1386b20
or eax, 0x1222d69e
cmp eax, 0x435e77ac
jb 0x14008a9d0
mov rax, rcx
shr rax, 0x10
mov dword [rdi], 0
cmp eax, 0x80
jae 0x14008aa80
mov ecx, dword [0x141dcbc78]
add ecx, dword [0x141dcbc7c]
imul ecx, ecx, 0x154ea896
or ecx, 0x1820ce02
imul ecx, ecx, 0xddddfa0b
cmp ecx, 0x49e93d89
je 0x14008aa01
mov byte [rdi], al
nop dword [rax]
mov eax, dword [0x141dcbc80]
sub eax, dword [0x141dcbc84]
imul eax, eax, 0xa50b2674
xor eax, 0x8cf134b1
imul eax, eax, 0x5763ac7c
cmp eax, 0x5ee12a62
je 0x14008aa30
mov r12d, 1
mov dword [rbp + 4], 0
mov rax, qword [rbx]
sub rax, rdx
cmp rax, r12
jae 0x14008abfc
jmp 0x14008adc4
cmp eax, 0x800
jae 0x14008aaf0
mov r8d, dword [0x141dcbc60]
or r8d, dword [0x141dcbc64]
add r8d, 0xb7df52bd
xor r8d, 0x6b499806
cmp r8d, 0xb2bd650
jb 0x14008aa87
shr ecx, 0x16
or cl, 0xc0
mov byte [rdi], cl
and al, 0x3f
mov ecx, dword [0x141dcbc68]
imul ecx, dword [0x141dcbc6c]
or ecx, 0x402100e
xor ecx, 0xc9481203
or ecx, 0x2a1c9a0
cmp ecx, 0xbee333b4
jne 0x14008ad80
jmp 0x14008ae13
mov r8d, dword [0x141dcbc40]
sub r8d, dword [0x141dcbc44]
add r8d, 0xd20bc1d6
or r8d, 0x4b65596b
cmp r8d, 0xd37c269
je 0x14008aaf0
cmp eax, 0x10000
jae 0x14008acae
mov dword [rbp + 4], 0
jmp 0x14008abc8
mov rcx, qword [rbp - 8]
cmp r15, rcx
je 0x14008abb4
nop dword [rax]
mov ecx, dword [0x141dcbc18]
and ecx, dword [0x141dcbc1c]
imul ecx, ecx, 0xbadf09f6
or ecx, 0xd65557ba
imul rcx, rcx, 0x3f13950d
shr rcx, 0x3c
cmp ecx, 0xbc38a21
ja 0x14008ab40
lea r9, [r15 + 2]
nop
mov ecx, dword [0x141dcbc20]
sub ecx, dword [0x141dcbc24]
imul ecx, ecx, 0x9495ece
cmp ecx, 0x78636ddf
je 0x14008ab70
movzx ecx, word [r15]
lea r10d, [rcx + 0x2000]
movzx r10d, r10w
cmp r10d, 0xfc00
jae 0x14008ac0e
mov r8w, 1
mov dword [rbp + 4], r8d
mov word [rbp + 2], cx
mov r15, r9
jmp 0x14008abbe
mov dword [rbp + 4], 0
mov r15, rcx
mov byte [rbx + 0x18], 0
mov dword [rdi], 0
mov ecx, eax
shr ecx, 0xc
or cl, 0xe0
mov byte [rdi], cl
mov ecx, eax
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [rdi + 1], cl
and al, 0x3f
or al, 0x80
mov byte [rdi + 2], al
mov r12d, 3
mov rax, qword [rbx]
sub rax, rdx
cmp rax, r12
jb 0x14008adc4
mov r13, rdx
xor eax, eax
test al, al
je 0x14008ae20
jmp 0x14008ae6b
movzx eax, cx
mov ecx, dword [0x141dcbc28]
or ecx, dword [0x141dcbc2c]
add ecx, 0x22ab7fc2
or ecx, 0xa8573628
imul ecx, ecx, 0x63f2394a
cmp ecx, 0xe0b6d794
ja 0x14008ac11
and r8d, 0x3ff
and eax, 0x3ff
mov ecx, dword [0x141dcbc30]
mov r10d, dword [0x141dcbc34]
add ecx, r10d
add ecx, 0x1213d914
and ecx, 0x86ed164c
add ecx, 0xefe4e4e8
cmp ecx, 0xaf0480f1
ja 0x14008ac43
shl r8, 0x1a
movabs rcx, 0x100000000
add r8, rcx
shl rax, 0x10
mov r10d, dword [0x141dcbc38]
xor r10d, dword [0x141dcbc3c]
and r10d, 0x89795a45
mov rcx, rax
or rcx, r8
cmp r10d, 0xf77223b7
je 0x14008ac82
mov r15, r9
jmp 0x14008a9ed
mov r8d, dword [str._r__b]
and r8d, dword [0x141dcbc4c]
and r8d, 0xb78e2c48
imul r8d, r8d, 0xe05153d7
cmp r8d, 0x85ef0e43
je 0x14008ad19
mov r8d, dword [0x141dcbc50]
or r8d, dword [0x141dcbc54]
add r8d, 0x6fce2f7b
or r8d, 0xe2572315
mov r9, rcx
shr r9, 0x22
or r9b, 0xf0
mov r10, rcx
shr r10, 0x1c
and r10b, 0x3f
or r10b, 0x80
mov byte [rdi], r9b
mov byte [rdi + 1], r10b
cmp r8d, 0x2af2ac29
jne 0x14008ad3c
mov r8, rcx
shr r8, 0x22
or r8b, 0xf0
mov byte [rdi], r8b
mov r8, rcx
shr r8, 0x1c
and r8b, 0x3f
or r8b, 0x80
mov byte [rdi + 1], r8b
jmp 0x14008acd3
shr rcx, 0x16
and cl, 0x3f
or cl, 0x80
mov byte [rdi + 2], cl
and al, 0x3f
or al, 0x80
mov byte [rdi + 3], al
mov eax, dword [0x141dcbc58]
or eax, dword [0x141dcbc5c]
xor eax, 0x7344090
add eax, 0x57780e25
and eax, 0x3d085f05
cmp eax, 0xae4ad5da
ja 0x14008ad50
mov r12d, 4
jmp 0x14008aa5a
mov ecx, dword [0x141dcbc70]
and ecx, dword [0x141dcbc74]
xor ecx, 0xe6fcfe54
imul ecx, ecx, 0x38d4038
lea r8d, [rax - 0x80]
mov byte [rdi + 1], r8b
cmp ecx, 0x713cf6b0
je 0x14008ae13
mov dword [rbp + 4], 0
mov r12d, 2
mov rax, qword [rbx]
sub rax, rdx
cmp rax, r12
jae 0x14008abfc
sub rsp, 0x30
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, rbx
mov r8, r12
call fcn.1400faca0
add rsp, 0x30
mov rsi, qword [rbx + 8]
mov r13, qword [rbx + 0x10]
nop
mov eax, dword [0x141dcbc88]
and eax, dword [0x141dcbc8c]
or eax, 0xf6cafc9f
imul eax, eax, 0x294a035
cmp eax, 0x86fa959f
jb 0x14008adf0
jmp 0x14008abff
lea ecx, [rax - 0x80]
mov byte [rdi + 1], cl
jmp 0x14008ad80
mov eax, dword [0x141dcbc90]
add eax, dword [0x141dcbc94]
or eax, 0x79efe5ff
imul r14d, eax, 0x3caf4bf6
or r14d, 0x5e960680
lea rcx, [rsi + r13]
sub rsp, 0x20
mov rdx, rdi
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
lea rdx, [r12 + r13]
mov qword [rbx + 0x10], rdx
cmp r14d, 0xf9f35a49
jbe 0x14008a8c0
lea rcx, [rsi + r13]
sub rsp, 0x20
mov rdx, rdi
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
lea rax, [r12 + r13]
mov qword [rbx + 0x10], rax
jmp 0x14008ae20
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
mov rax, qword [rbp - 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov eax, 0x8d50677d
nop word cs:[rax + rax]
mov ecx, dword [0x141dcbc98]
and ecx, dword [0x141dcbc9c]
imul rcx, rax
shr rcx, 0x3e
add ecx, 0xe69e3dd5
shr ecx, 2
imul rcx, rcx, 0x280bc0fd
shr rcx, 0x3b
cmp ecx, 0xe3ac5e14
ja 0x14008aeb0
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x141dcbbb8]
and eax, dword [0x141dcbbbc]
imul eax, eax, 0xe18f7d6a
add eax, 0x1dfaddf2
or eax, 0xd6134a3f
movzx ecx, byte [0x141dd7ff8]
cmp eax, 0x68377c94
jae 0x14008af24
movzx eax, byte [0x141dd7ff8]
jmp 0x14008aef1
mov eax, dword [0x141dcbbc0]
and eax, dword [0x141dcbbc4]
or eax, 0x3cfaab2e
imul eax, eax, 0x19a1edbd
or eax, 0xc2f98d35
cmp eax, 0xc66f18dd
ja 0x14008af7f
mov eax, dword [0x141dcbbc8]
imul eax, dword [0x141dcbbcc]
or eax, 0x5bae9d64
imul esi, eax, 0x89759f90
or esi, 0x789309e6
sub rsp, 0x20
xor ecx, ecx
mov rdx, r12
call fcn.1400beea0
add rsp, 0x20
cmp esi, 0x34caa280
jae 0x14008af93
sub rsp, 0x20
xor ecx, ecx
mov rdx, r12
call fcn.1400beea0
add rsp, 0x20
jmp 0x14008af47
mov rcx, rax
test rax, rax
jne 0x14008a843
mov eax, dword [0x141dcbbd0]
imul eax, dword [0x141dcbbd4]
imul rax, rax, 0xf6d0afb
shr rax, 0x3b
imul eax, eax, 0xd8f14b3b
add eax, 0x93eab5c7
cmp eax, 0x7f5b11ed
jbe 0x14008afcb
ud2
mov eax, 0x8a5473cf
mov ecx, dword [0x141dcbbd8]
and ecx, dword [0x141dcbbdc]
imul rcx, rax
shr rcx, 0x3f
xor ecx, 0x598181e1
ud2