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

Disassembly:
push rbp
sub rsp, 0xc0
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x48], r8
mov qword [rbp - 0x40], rdx
mov qword [rbp - 0x38], rcx
mov eax, 0x10
mov qword [rbp - 0x30], rax
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x28], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov qword [rbp - 0x10], rax
add rax, 0x60
mov qword [rbp - 0x18], rax
mov word [rbp + 0x36], 0x275
lea rcx, [rbp + 0x36]
sub rsp, 0x20
call fcn.14008db90
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x10]
mov qword [rbp - 8], rcx
mov al, byte [rax + 0x60]
mov cl, 0xf4
xor cl, 0xf4
cmp al, cl
jne 0x14028e536
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x48]
add rsp, 0x20
mov rax, qword [rbp - 8]
xorps xmm0, xmm0
movaps xmmword [rcx], xmm0
mov r8, qword [rax]
mov qword [rbp + 0x20], r8
mov rax, qword [rax + 8]
mov qword [rbp + 0x28], rax
lea r8, [rbp + 0x20]
mov r9d, 0x20019
sub rsp, 0x20
call fcn.14011d9d0
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x30
xor cl, 0x30
cmp al, cl
jne 0x14028e536
mov ecx, dword [0x1402b8e00]
mov edx, dword [0x1402b8e04]
xor edx, 0x43cf08af
xor ecx, 0xffffffff
xor edx, 0xffffffff
mov eax, 0xffffffff
xor eax, 0xaa5022e2
or ecx, edx
or eax, 0xaa5022e2
xor ecx, 0xffffffff
and ecx, eax
mov eax, ecx
xor eax, 0xcf4eefa0
mov edx, 0x2b647e67
xor edx, 0xe42a91c7
mov r8d, 0xa68c8a7c
xor r8d, 0x59737583
xor edx, r8d
and ecx, edx
shl ecx, 1
sub ecx, eax
mov edx, 0xffffffff
xor edx, 0x90cb3b3f
mov eax, ecx
xor eax, edx
and eax, ecx
sub eax, 0x793eb8dd
cmp eax, 0x2086cc01
jbe 0x14028e7bd
mov rdx, qword [rbp - 0x28]
mov eax, dword [0x1402b8e08]
xor eax, 0x7faaf6fb
imul eax, dword [0x1402b8e0c]
mov ecx, 0x6af8c33f
xor ecx, 0xed17e417
add eax, ecx
mov ecx, 0x77b0af43
xor ecx, 0xc84c4889
add eax, ecx
add eax, 0xde5119fd
mov ecx, 0x4cf039f6
xor ecx, 0x8b6dd759
mov r8, qword [rdx]
mov qword [rbp - 0x58], r8
cmp byte [rdx + 8], 0
sete dl
mov byte [rbp - 0x49], dl
cmp eax, ecx
je 0x14028e204
mov al, byte [rbp - 0x49]
test al, 1
jne 0x14028e26d
jmp 0x14028e28c
sub rsp, 0x20
call fcn.1400ad910
add rsp, 0x20
mov rax, qword [rbp - 0x18]
cmp byte [rax], 0
je 0x14028e711
jmp 0x14028e536
mov r11d, dword [0x1402b8e10]
mov r10d, dword [0x1402b8e14]
mov ecx, r11d
xor ecx, 0xffffffff
mov eax, 0x86b2cc0c
xor eax, 0x794d33f3
mov r8d, r10d
xor r8d, eax
mov edx, 0xffffffff
xor edx, 0xae8d7d0e
mov r9d, 0xa68e0104
xor r9d, 0x8037c0a
mov eax, ecx
and eax, r9d
and r11d, edx
mov r9d, r8d
and r9d, 0xae8d7d0e
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xae8d7d0e
and ecx, edx
or eax, ecx
mov ecx, 0x307f7506
xor edx, edx
div ecx
mov ecx, 0x9cb3dc19
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x9b18dd30
mov edx, 0xe9d4ea9f
xor edx, 0x162b1560
xor ecx, edx
add eax, 0x9b18dd30
add eax, 1
add eax, ecx
cmp eax, 0xb2ebe592
jae 0x14028e7c6
mov ecx, dword [0x1402b8e18]
xor ecx, 0x86e25845
mov eax, dword [0x1402b8e1c]
xor eax, ecx
not eax
and eax, ecx
xor eax, 0x978c55be
add eax, 0x917eedb2
mov dword [rbp - 0x60], eax
mov eax, 0xef7ce5e
mov dword [rbp - 0x64], eax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov rcx, qword [rbp - 0x20]
add rsp, 0x20
xorps xmm0, xmm0
movaps xmmword [rcx], xmm0
movabs rdx, 0xe50c5f7cb8094b29
movabs rax, 0xe50c5f7cb8094b29
xor rdx, rax
sub rsp, 0x20
call fcn.14004b0c3
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x58]
add rsp, 0x20
mov r8d, 7
sub rsp, 0x20
call fcn.14027be40
mov rdx, qword [rbp - 0x18]
mov ecx, dword [rbp - 0x64]
mov eax, dword [rbp - 0x60]
add rsp, 0x20
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x59], dl
cmp eax, ecx
je 0x14028e332
mov al, byte [rbp - 0x59]
test al, 1
jne 0x14028e412
jmp 0x14028e3e9
mov rax, qword [rbp - 0x18]
mov cl, 0x3c
xor cl, 0x3c
mov byte [rax], cl
sub rsp, 0x20
call fcn.140282db9
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov al, byte [rax]
cmp al, 0
mov byte [rbp - 0x65], al
jne 0x14028e4b9
sub rsp, 0x20
mov cx, 0x235
call fcn.14008d810
mov r8, qword [rbp - 0x20]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp - 0x18]
mov al, byte [rax]
test al, al
sete cl
mov r8, qword [r8]
sub rdx, r8
setl dl
and cl, dl
test cl, 1
mov byte [rbp - 0x66], al
jne 0x14028e451
jmp 0x14028e4b3
mov rcx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x38]
mov rax, qword [rax]
mov rax, qword [rax + 0x30]
mov dl, 0xd6
xor dl, 0xd7
mov byte [rax], dl
mov rax, qword [rcx]
mov qword [rbp + 0x10], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0x18], rax
sub rsp, 0x20
call fcn.140279be9
mov rax, qword [rbp - 0x40]
add rsp, 0x20
mov rcx, qword [rax]
mov rax, qword [rbp + 0x10]
mov qword [rbp], rax
mov rax, qword [rbp + 0x18]
mov qword [rbp + 8], rax
mov rdx, rbp
sub rsp, 0x20
call fcn.14004b3e0
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp - 0x66], al
mov al, byte [rbp - 0x66]
mov byte [rbp - 0x65], al
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x20]
mov dl, byte [rbp - 0x65]
mov byte [rbp - 0x68], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.140279bc4
mov rcx, qword [rbp - 0x58]
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov dl, byte [rax]
mov byte [rbp - 0x67], dl
mov dl, 1
xor dl, 1
mov byte [rax], dl
sub rsp, 0x20
call fcn.14011e1cc
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14028e536
mov al, byte [rbp - 0x68]
mov cl, byte [rbp - 0x67]
mov dl, 0x61
xor dl, 0x60
mov byte [rbp - 0x6a], dl
cmp cl, 0
mov byte [rbp - 0x69], al
je 0x14028e525
mov al, byte [rbp - 0x6a]
mov byte [rbp - 0x69], al
mov rcx, qword [rbp - 0x18]
mov al, byte [rbp - 0x69]
mov byte [rcx], al
cmp al, 0
je 0x14028e711
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
mov ax, word [rax + 0x12]
mov cx, 0xacb6
xor cx, 0xacb7
cmp ax, cx
jle 0x14028e711
mov eax, dword [0x1402b8e20]
or eax, dword [0x1402b8e24]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, eax
xor edx, 0xffffffff
and ecx, edx
mov edx, 0xff41e721
or edx, 0xff41e721
mov r8d, 0xa6dab282
xor r8d, 0x59254d7d
xor edx, r8d
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xff41e721
and eax, edx
or ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
and eax, 0x937a46e5
xor eax, 0xffffffff
add ecx, 0x937a46e5
mov edx, 0xc604be2a
xor edx, 0xc604be2b
add ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x9220052a
or ecx, 0x9220052a
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x3adb39e3
xor ecx, 0x61719e7
cmp eax, ecx
je 0x14028e7cf
mov rcx, qword [rbp - 0x78]
mov edx, dword [0x1402b8e28]
xor edx, 0x5b0290cd
mov r8d, dword [str._8:C]
mov eax, edx
and eax, r8d
xor edx, r8d
or eax, edx
sub eax, 0x98545f4c
mov r8d, 0x1e737e3f
xor edx, edx
div r8d
mov edx, 0x9898c3b2
xor edx, 0xa2845ed5
sub eax, edx
sub eax, 0x6d8af3b
add eax, 0x3a1c9d67
mov rcx, qword [rcx + 0x18]
cmp dword [rcx + 8], 0xd4054986
sete cl
mov byte [rbp - 0x79], cl
cmp eax, 0x13437a29
jb 0x14028e609
mov al, byte [rbp - 0x79]
test al, 1
jne 0x14028e67d
jmp 0x14028e711
mov rax, qword [rbp - 0x18]
mov cl, 0xc5
xor cl, 0xc5
mov byte [rax], cl
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov qword [rbp + 0x38], 0
mov rdx, qword [rax + 0x10]
lea rcx, [rbp + 0x38]
xor r8d, r8d
sub rsp, 0x20
call fcn.140024f90
add rsp, 0x20
mov rcx, qword [rbp + 0x38]
sub rsp, 0x20
call fcn.1400c0539
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14028e711
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov rcx, rax
add rcx, 0x10
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x38]
xor r8d, r8d
sub rsp, 0x20
call fcn.140024f90
add rsp, 0x20
mov eax, dword [0x1402b8e30]
mov ecx, 0x6416dda6
xor ecx, 0x226d787c
xor eax, ecx
xor edx, edx
div dword [0x1402b8e34]
mov edx, 0x678489c7
xor edx, 0x987b7638
mov ecx, eax
xor ecx, edx
mov edx, 0x22a99fa6
xor edx, 0x2664f979
and ecx, edx
mov edx, 0xffffffff
xor edx, 0x4cd66df
and eax, edx
sub eax, ecx
xor eax, 0x4c310742
xor eax, 0xaad6bb03
cmp eax, 0xfa4760f9
ja 0x14028e7d8
mov eax, dword [0x1402b8e38]
xor eax, dword [0x1402b8e3c]
xor eax, 0xc66129be
mov ecx, eax
xor ecx, 0x62cf905
mov edx, 0xffffffff
xor edx, 0x62cf905
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0xb8b3642c
xor ecx, 0x82f49b64
sub eax, ecx
mov ecx, 0x3a482c1e
xor ecx, 0x82177163
cmp eax, ecx
je 0x14028e7d8
lea rsp, [rbp + 0x40]
pop rbp
ret
test dword fs:[rdx], 0xfa3ee90d
invalid
push rsi
sub esp, dword [rdx - 0x49c16f6]
invalid
sub bl, r14b
invalid
rcr dword [rcx], 1
xor ch, byte [rcx + rbp*8 - 0x75]
nop word cs:[rax + rax]