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

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
mov rbx, rdx
mov rsi, rcx
mov r14, rdx
shr r14, 5
nop word cs:[rax + rax]
mov eax, dword [0x141f33880]
or eax, dword [0x141f33884]
imul eax, eax, 0x2f4fd8f2
and eax, 0x1ed6aca2
cmp eax, 0xcacff46a
je 0x14004aa20
cmp rbx, 0x500
jae 0x14004aea0
mov edi, ebx
and edi, 0x1f
mov eax, dword [0x141f338a0]
sub eax, dword [0x141f338a4]
imul eax, eax, 0x568c61ee
cmp eax, 0xdcce37ff
je 0x14004aa50
mov rcx, qword [rsi + 0xa0]
mov eax, 0xae6c5a2b
nop word cs:[rax + rax]
mov edx, dword [0x141f338a8]
and edx, dword [0x141f338ac]
xor edx, 0xcaea3b90
imul rdx, rax
shr rdx, 0x3f
or edx, 0x3db6f7ae
cmp edx, 0x70b389d7
ja 0x14004aa80
test rcx, rcx
je 0x14004abfb
mov eax, 0xa1e3c57d
nop word cs:[rax + rax]
mov edx, dword [0x141f338b0]
sub edx, dword [0x141f338b4]
add edx, 0xb4748ce4
imul rdx, rax
shr rdx, 0x3f
or edx, 0xc317d0c0
cmp edx, 0xd41764e2
ja 0x14004aac0
xor r8d, r8d
mov r9d, 0xc6f4167d
mov r10, rcx
nop word cs:[rax + rax]
mov eax, dword [0x141f338c0]
xor edx, edx
div dword [0x141f338c4]
nop
test r8b, r8b
jne 0x14004ab10
cmp rcx, 0x29
jae 0x14004ae32
lea rax, [r10 - 1]
nop word cs:[rax + rax]
mov edx, dword [0x141f33918]
sub edx, dword [0x141f3391c]
or edx, 0x12dfddc
imul edx, edx, 0x7abee0de
add edx, 0xc5c8ebdb
cmp edx, 0xa53078f2
jb 0x14004ab30
lea rdx, [rax + r14]
mov r11d, dword [0x141f33920]
and r11d, dword [0x141f33924]
or r11d, 0xe402aa26
add r11d, 0xd606b48a
imul r11, r9
shr r11, 0x3f
cmp r11d, 0xe7b1f96a
je 0x14004ab5a
cmp rdx, 0x28
jae 0x14004ae6b
nop word cs:[rax + rax]
mov r11d, dword [0x141f33930]
imul r11d, dword [0x141f33934]
imul r11d, r11d, 0xfe220cd4
add r11d, 0x5393a9ea
cmp r11d, 0x2f7a86f6
jb 0x14004aba0
mov r10d, dword [rsi + r10*4 - 4]
mov dword [rsi + rdx*4], r10d
mov edx, dword [0x141f33938]
sub edx, dword [0x141f3393c]
or edx, 0x5a04b3da
and edx, 0x5a85f3de
cmp edx, 0x2174fe73
je 0x14004abcf
mov r10, rax
test rax, rax
jne 0x14004ab00
cmp rbx, 0x20
jb 0x14004ac53
nop word cs:[rax + rax]
mov eax, dword [0x141f338b8]
mov ecx, dword [0x141f338bc]
add eax, ecx
add eax, 0x3c2f7730
xor eax, 0xa7640e6d
imul rax, rax, 0x52a3f447
shr rax, 0x3d
cmp r14, 1
mov r8, r14
adc r8, 0
cmp eax, 0x1d5c647f
ja 0x14004ac10
shl r8, 2
mov rcx, rsi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov r8, qword [rsi + 0xa0]
add r8, r14
xor eax, eax
nop
test al, al
jne 0x14004ac60
test rdi, rdi
je 0x14004af65
mov eax, dword [0x141f338c8]
xor edx, edx
div dword [0x141f338cc]
lea rax, [r8 - 1]
nop
mov ecx, dword [0x141f338d0]
and ecx, dword [0x141f338d4]
add ecx, 0xb5a83cb4
xor ecx, 0x545e6117
cmp ecx, 0xff681fee
ja 0x14004ac80
cmp rax, 0x27
ja 0x14004af3b
mov eax, dword [rsi + r8*4 - 4]
neg ebx
and ebx, 0x1f
mov edx, eax
mov ecx, ebx
shr edx, cl
mov r9, r8
test edx, edx
je 0x14004acf4
xor ecx, ecx
nop word cs:[rax + rax]
test cl, cl
jne 0x14004acd0
cmp r8, 0x27
ja 0x14004aec5
mov dword [rsi + r8*4], edx
lea r9, [r8 + 1]
mov cl, 1
nop dword [rax + rax]
test cl, cl
je 0x14004acf0
lea rdx, [r14 + 1]
nop dword [rax + rax]
mov ecx, dword [0x141f338d8]
xor ecx, dword [0x141f338dc]
add ecx, 0x541574cf
shr ecx, 3
imul rcx, rcx, 0x1225f12d
shr rcx, 0x33
add ecx, 0x88dd1947
cmp ecx, 0xea084f1f
ja 0x14004ad00
cmp rdx, r8
jae 0x14004adc7
nop word [rax + rax]
mov ecx, dword [0x141f33900]
and ecx, dword [0x141f33904]
or ecx, 0x48172617
imul ecx, ecx, 0x408cfb77
imul rcx, rcx, 0x25de7df3
shr rcx, 0x3b
cmp ecx, 0x8daad169
ja 0x14004ad40
lea rcx, [r8 - 2]
cmp rcx, 0x28
jae 0x14004ae0c
lea r10, [r8 - 1]
nop dword [rax]
mov ecx, dword [0x141f33910]
or ecx, dword [0x141f33914]
add ecx, 0x7009ebb5
and ecx, 0x58d404f4
cmp ecx, 0x98ea623b
ja 0x14004ad80
mov ecx, edi
shl eax, cl
mov r8d, dword [rsi + r8*4 - 8]
mov r11d, r8d
mov ecx, ebx
shr r11d, cl
or r11d, eax
mov dword [rsi + r10*4], r11d
mov eax, r8d
mov r8, r10
cmp rdx, r10
jb 0x14004ad40
mov r8d, dword [rsi + r14*4]
nop dword [rax + rax]
mov eax, dword [0x141f338f0]
xor edx, edx
div dword [0x141f338f4]
add eax, 0xadc765f3
and eax, 0x41f72558
imul edx, eax, 0xc7dbad1b
mov eax, r8d
mov ecx, edi
shl eax, cl
cmp edx, 0xebc0e32d
ja 0x14004add0
xor ecx, ecx
test cl, cl
je 0x14004af3d
jmp 0x14004af5c
ud2
mov eax, dword [0x141f33928]
or eax, dword [0x141f3392c]
xor eax, 0x10008540
or eax, 0x22090200
and eax, 0xb209a740
cmp eax, 0x4b542c9e
jne 0x14004ae56
ud2
xor eax, eax
nop dword [rax + rax]
ud2
mov eax, dword [0x141f33940]
or eax, dword [0x141f33944]
imul eax, eax, 0x324372ae
add eax, 0x8d72a4f9
mov ecx, 0xb919d8d1
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0x6d793ee2
jne 0x14004afa3
jmp 0x14004afd3
mov eax, dword [0x141f33888]
xor eax, dword [0x141f3388c]
imul rax, rax, 0x4889b205
shr rax, 0x3d
or eax, 0x8ac763c8
cmp eax, 0x3ec381dd
jne 0x14004aef1
jmp 0x14004af1b
mov eax, dword [0x141f338e0]
xor eax, dword [0x141f338e4]
and eax, 0x8c1045
or eax, 0xeb434982
imul eax, eax, 0xd1cc16a3
cmp eax, 0xb916981d
jbe 0x14004af79
jmp 0x14004af9f
mov eax, dword [0x141f33890]
add eax, dword [0x141f33894]
xor eax, 0x5c00d74d
imul rax, rax, 0x5df8ffb1
shr rax, 0x3c
or eax, 0x221dcf3b
ud2
ud2
ud2
mov ecx, dword [0x141f338f8]
imul ecx, dword [0x141f338fc]
or ecx, 0xdfdffaff
mov dword [rsi + r14*4], eax
cmp ecx, 0x2c840a70
jae 0x14004af62
mov dword [rsi + r14*4], eax
jmp 0x14004af3d
mov r8, r9
mov qword [rsi + 0xa0], r8
mov rax, rsi
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret
mov eax, dword [0x141f338e8]
imul eax, dword [0x141f338ec]
xor eax, 0xb7b0e667
imul eax, eax, 0x78d888d7
and eax, 0xa4594fb7
ud2
ud2
mov eax, dword [0x141f33948]
xor edx, edx
div dword [0x141f3394c]
or eax, 0xa989effc
mov ecx, 0xa548e2fb
imul rcx, rax
shr rcx, 0x3e
or ecx, 0x624d3950
ud2
ud2