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

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x1040
call fcn.1400ed360
sub rsp, rax
movaps xmmword [rsp + 0x1030], xmm6
mov eax, dword [0x141dd7f28]
nop word cs:[rax + rax]
mov ecx, dword [0x141dd2220]
or ecx, dword [0x141dd2224]
xor ecx, 0xa4c12402
and ecx, 0xecd12eb2
add ecx, 0x14e1e950
cmp ecx, 0xd4b5f93b
ja 0x1400fa360
cmp eax, 3
jne 0x1400fa401
mov eax, dword [0x141dd2228]
add eax, dword [0x141dd222c]
and eax, 0xd6063daf
add eax, 0x471cbae0
cmp eax, 0x50d10cd7
nop word cs:[rax + rax]
mov eax, dword [0x141dd2230]
add eax, dword [0x141dd2234]
imul eax, eax, 0x25f5d5b1
and eax, 0xd362e912
add eax, 0x32caf1f1
cmp eax, 0x35a85ca
jb 0x1400fa3b0
mov rdi, qword [0x141dd7f20]
mov eax, dword [0x141dd2238]
mov ecx, dword [0x141dd223c]
add eax, ecx
add eax, 0xb4c395c7
and eax, 0x565e09fb
imul eax, eax, 0x7203e88a
cmp eax, 0x4052f2cc
jae 0x1400fa408
jmp 0x1400fa430
call fcn.1400f2a70
jmp 0x1400fa38b
mov eax, dword [0x141dd2240]
sub eax, dword [0x141dd2244]
imul eax, eax, 0x9ca7dd04
add eax, 0xe384b08
mov ecx, 1
lock xadd qword [rdi], rcx
cmp eax, 0x8a469d09
jbe 0x1400fa436
lock inc qword [rdi]
jmp 0x1400fa408
mov r8d, 0x98ff2f89
nop dword [rax]
mov eax, dword [0x141dd2248]
xor edx, edx
div dword [0x141dd224c]
add eax, 0x15e48ef1
or eax, 0x7de85cd6
imul rax, r8
shr rax, 0x3d
cmp eax, 0x7fdc4333
je 0x1400fa440
test rcx, rcx
js 0x1400fa69a
xor eax, eax
nop word cs:[rax + rax]
mov ecx, dword [0x141dd2250]
sub ecx, dword [0x141dd2254]
add ecx, 0x16054eff
or ecx, 0x80450a40
and ecx, 0xc1679a50
cmp ecx, 0x6a99f71d
je 0x1400fa480
mov ecx, 0x60
mov edx, 0xb1046aad
movups xmm0, xmmword [0x141db6250]
movups xmm1, xmmword [0x141db6260]
xor r8d, r8d
jmp 0x1400fa4e5
sub rcx, 0xffffffffffffff80
add rax, 4
cmp rcx, 0x860
je 0x1400fa565
mov r9d, dword [0x141dd2258]
xor r9d, dword [0x141dd225c]
add r9d, 0x10a94257
imul r9, rdx
shr r9, 0x3f
cmp r9d, 0x2478faa4
ja 0x1400fa53c
nop dword [rax + rax]
movups xmmword [rsp + rcx - 0x30], xmm0
movups xmmword [rsp + rcx - 0x20], xmm1
movups xmmword [rsp + rcx - 0x10], xmm0
movups xmmword [rsp + rcx], xmm1
movups xmmword [rsp + rcx + 0x10], xmm0
movups xmmword [rsp + rcx + 0x20], xmm1
movups xmmword [rsp + rcx + 0x30], xmm0
movups xmmword [rsp + rcx + 0x40], xmm1
test r8b, r8b
je 0x1400fa4d0
movups xmmword [rsp + rcx - 0x20], xmm1
movups xmmword [rsp + rcx - 0x30], xmm0
movups xmmword [rsp + rcx - 0x10], xmm0
movups xmmword [rsp + rcx], xmm1
movups xmmword [rsp + rcx + 0x10], xmm0
movups xmmword [rsp + rcx + 0x20], xmm1
movups xmmword [rsp + rcx + 0x30], xmm0
movups xmmword [rsp + rcx + 0x40], xmm1
jmp 0x1400fa510
xor eax, eax
test al, al
jne 0x1400fa59d
mov eax, dword [0x141dd2260]
or eax, dword [0x141dd2264]
imul esi, eax, 0x73fb7ea4
lea rcx, [rsp + 0x830]
lea rdx, [rsp + 0x30]
mov r8d, 0x800
call sub.VCRUNTIME140.dll_memcpy
cmp esi, 0xb8a6ecc2
jne 0x1400fa5b7
lea rcx, [rsp + 0x830]
lea rdx, [rsp + 0x30]
mov r8d, 0x800
call sub.VCRUNTIME140.dll_memcpy
jmp 0x1400fa56b
mov eax, dword [0x141dd2268]
xor eax, dword [0x141dd226c]
add eax, 0x4622acaf
and eax, 0xa204e744
xor eax, 0x24c90505
cmp eax, 0x17a83e12
jb 0x1400fa610
mov eax, dword [0x141dd2270]
xor eax, dword [0x141dd2274]
xor eax, 0x784150f8
imul rbx, rax, 0x424a610d
shr rbx, 0x3d
movzx eax, byte [0x141dd7ff8]
mov edx, 0x980
xor ecx, ecx
call fcn.1400beea0
cmp ebx, 0x2e12985c
jbe 0x1400fa625
movzx eax, byte [0x141dd7ff8]
mov edx, 0x980
xor ecx, ecx
call fcn.1400beea0
jmp 0x1400fa5d9
mov rsi, rax
test rax, rax
je 0x1400fa65b
mov r14d, esi
and r14d, 0x7f
mov eax, dword [0x141dd2280]
add eax, dword [0x141dd2284]
or eax, 0xd9558b9
add eax, 0x252026a1
or eax, 0x996e4d7d
cmp eax, 0x5f3c53ef
jae 0x1400fa69c
jmp 0x1400fa74a
xor eax, eax
test al, al
je 0x1400fa670
ud2
mov eax, dword [0x141dd2278]
and eax, dword [0x141dd227c]
add eax, 0x5331b8dc
imul rax, rax, 0x6964b447
shr rax, 0x3e
or eax, 0xdcd08a8
ud2
ud2
mov ebp, dword [0x141dd2288]
or ebp, dword [0x141dd228c]
or ebp, 0x62b2558c
and ebp, 0x67b355dd
mov r15, rsi
sub r15, r14
lea rbx, [r15 + 0x80]
mov r12, r14
neg r12
mov qword [r15 + 0x78], rsi
mov qword [r15 + 0x80], 0
mov qword [r15 + 0x88], rdi
lea rcx, [r15 + 0x90]
lea rdx, [rsp + 0x830]
mov r8d, 0x800
call sub.VCRUNTIME140.dll_memcpy
xorps xmm0, xmm0
movaps xmmword [r15 + 0x890], xmm0
mov qword [r15 + 0x8a0], 1
mov qword [r15 + 0x8a8], 0
mov qword [r15 + 0x900], 0
mov rax, qword [rdi + 0x200]
mov qword [rsi + r12 + 0x80], rax
lock cmpxchg qword [rdi + 0x200], rbx
sete cl
cmp ebp, 0xb0a4c150
jbe 0x1400fa7d5
mov rbx, rsi
sub rbx, r14
lea r15, [rbx + 0x80]
mov r12, r14
neg r12
mov qword [rbx + 0x78], rsi
mov qword [rbx + 0x80], 0
mov qword [rbx + 0x88], rdi
lea rcx, [rbx + 0x90]
lea rdx, [rsp + 0x830]
mov r8d, 0x800
call sub.VCRUNTIME140.dll_memcpy
xorps xmm0, xmm0
movaps xmmword [rbx + 0x890], xmm0
mov qword [rbx + 0x8a0], 1
mov qword [rbx + 0x8a8], 0
mov qword [rbx + 0x900], 0
mov rax, qword [rdi + 0x200]
mov qword [rsi + r12 + 0x80], rax
lock cmpxchg qword [rdi + 0x200], r15
jmp 0x1400fa69c
test cl, cl
jne 0x1400fa7ee
nop dword [rax]
mov qword [rbx], rax
lock cmpxchg qword [rdi + 0x200], rbx
jne 0x1400fa7e0
mov eax, dword [0x141dd7ffc]
mov rcx, qword gs:[0x58]
mov rdx, qword [rcx + rax*8]
mov rax, qword [rdx + 8]
mov rcx, qword [rdx + 0x10]
mov qword [rdx + 8], 1
mov edx, dword [0x141dd2290]
add edx, dword [0x141dd2294]
mov r8d, 0xe35a798f
imul r8, rdx
shr r8, 0x3d
imul edx, r8d, 0xd9fd3d7d
add edx, 0xc02b9b5e
cmp edx, 0xfecee348
ja 0x1400fa869
mov edx, dword [0x141dd7ffc]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
mov qword [rdx + 0x10], rbx
xor edx, edx
test dl, dl
je 0x1400fa885
mov edx, dword [0x141dd7ffc]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
mov qword [rdx + 0x10], rbx
jmp 0x1400fa849
cmp eax, 1
je 0x1400fa940
test rax, rax
jne 0x1400faac3
mov eax, dword [0x141dd2298]
xor edx, edx
div dword [0x141dd229c]
mov eax, 0x86fc76d3
nop word [rax + rax]
mov ecx, dword [0x141dd22a0]
sub ecx, dword [0x141dd22a4]
and ecx, 0x8b3d0e39
imul rcx, rax
shr rcx, 0x3e
cmp ecx, 0xf9f381a1
je 0x1400fa8b0
mov eax, dword [0x141dd7ffc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x40], 0
jne 0x1400fa993
mov eax, dword [0x141dd7ffc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov ecx, dword [0x141dd22a8]
xor ecx, dword [0x141dd22ac]
mov qword [rax + 0x40], 0xffffffffffffffff
or ecx, 0xff87ffe7
add ecx, 0xfb36249a
cmp ecx, 0x7a211ca6
jae 0x1400fa9c5
jmp 0x1400fa9f9
mov eax, dword [0x141dd22f0]
sub eax, dword [0x141dd22f4]
add eax, 0xe1268b39
or eax, 0x76c363d3
cmp eax, 0xcca80dc4
jb 0x1400fa940
mov rdx, qword [rcx + 0x818]
mov rax, qword [rcx + 0x820]
lea r8, [rax - 1]
mov qword [rcx + 0x820], r8
test rdx, rdx
jne 0x1400faac3
cmp rax, 1
jne 0x1400faac3
call fcn.1400f2220
jmp 0x1400faac3
mov eax, dword [0x141dd22b8]
or eax, dword [0x141dd22bc]
imul rax, rax, 0x12e01243
shr rax, 0x38
imul eax, eax, 0xeef43d0
and eax, 0x8e3f0330
cmp eax, 0xa192734b
jne 0x1400fab1d
jmp 0x1400fab5b
mov eax, dword [0x141dd22b0]
add eax, dword [0x141dd22b4]
mov ecx, 0xa3b9d4f5
imul rcx, rax
shr rcx, 0x3c
xor ecx, 0xcbb1ac5d
add ecx, 0x19d11728
mov rax, qword [0x1400ff600]
cmp ecx, 0xd4505104
jae 0x1400faa02
mov rax, qword [0x1400ff600]
jmp 0x1400fa9c5
mov eax, dword [0x141dd7ffc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rsi, qword [rax + 0x58]
cmp rsi, qword [rax + 0x48]
jne 0x1400faa78
call fcn.140089320
mov eax, dword [0x141dd7ffc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x40]
inc rax
nop word [rax + rax]
mov ecx, dword [0x141dd22e8]
and ecx, dword [0x141dd22ec]
xor ecx, 0x28108044
and ecx, 0xf930825e
add ecx, 0xef7c0dc2
cmp ecx, 0x6d71363c
ja 0x1400faa50
jmp 0x1400faa7a
xor eax, eax
mov ecx, dword [0x141dd7ffc]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov rdx, qword [rcx + 0x50]
mov r8, rsi
shl r8, 4
lea r9, [rcx + 8]
mov qword [rdx + r8], r9
lea r9, [0x140073a40]
mov qword [rdx + r8 + 8], r9
inc rsi
mov qword [rcx + 0x58], rsi
mov qword [rcx + 0x40], rax
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400faad0
nop word cs:[rax + rax]
mov eax, dword [0x141dd22f8]
sub eax, dword [0x141dd22fc]
xor eax, 0xa9961cf5
imul eax, eax, 0x958e74f3
add eax, 0xa0a31fcd
cmp eax, 0x51deb2d6
ja 0x1400faae0
movaps xmm6, xmmword [rsp + 0x1030]
add rsp, 0x1040
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov eax, dword [0x141dd22c0]
or eax, dword [str.VwA_]
or eax, 0x9dcac8e8
add eax, 0xbab48f57
mov ecx, 0x954f6c03
imul rcx, rax
shr rcx, 0x3f
mov dword [rsp + 0x830], 0
mov byte [rsp + 0x834], 0
cmp ecx, 0x24bc2787
jne 0x1400fab70
mov dword [rsp + 0x830], 0
mov byte [rsp + 0x834], 0
jmp 0x1400fab1d
mov eax, dword [0x141dd22c8]
xor eax, dword [0x141dd22cc]
add eax, 0xc846ea8a
xor eax, 0x282208a
and eax, 0xc3a6258b
lea r14, [0x141db6ac0]
lea r15, [rsp + 0x28]
cmp eax, 0x8d5daf1d
jbe 0x1400fabcb
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], 1
mov qword [rsp + 0x40], r15
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
lea rcx, [rsp + 0x830]
lea rdx, [rsp + 0x30]
call fcn.140086dc0
xorps xmm6, xmm6
lea rdi, [rsp + 0x830]
lea rbx, [rsp + 0x30]
nop dword [rax + rax]
mov ebp, dword [0x141dd22d0]
sub ebp, dword [0x141dd22d4]
and ebp, 0xf4be0b57
add ebp, 0x36e62b4
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], 1
mov qword [rsp + 0x40], r15
movups xmmword [rsp + 0x48], xmm6
mov rcx, rdi
mov rdx, rbx
call fcn.140086dc0
cmp ebp, 0x12f5be8d
jb 0x1400fabe0
mov rsi, rax
mov eax, dword [0x141dd22d8]
xor edx, edx
div dword [0x141dd22dc]
add eax, 0x6ba634e5
mov ecx, 0xd005c57f
imul rcx, rax
shr rcx, 0x3e
imul eax, ecx, 0x8e69e689
cmp eax, 0x8b6b4e26
jae 0x1400fac70
mov rcx, rsi
call fcn.140087240
mov ecx, 7
int 0x29
nop word cs:[rax + rax]
mov edi, dword [0x141dd22e0]
sub edi, dword [0x141dd22e4]
or edi, 0xdfd9fdff
mov rcx, rsi
call fcn.140087240
mov ecx, 7
int 0x29
cmp edi, 0xe137b964
je 0x1400fac70
jmp 0x1400fa69a