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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov dword [rsp + 0x2c], edx
test edx, edx
je 0x1400f5720
mov rsi, rcx
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x40], rax
test rax, rax
je 0x1400f5720
nop word cs:[rax + rax]
mov eax, dword [0x141dc8458]
xor eax, dword [0x141dc845c]
add eax, 0xe9ce44cb
and eax, 0xcddb391c
add eax, 0xde971890
cmp eax, 0x22818e84
jb 0x1400f53f0
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400f5420
nop word cs:[rax + rax]
mov eax, dword [0x141dc8460]
or eax, dword [0x141dc8464]
imul eax, eax, 0x614a1afc
add eax, 0x10e17bd0
cmp eax, 0xa8fc3834
ja 0x1400f5430
xor r12d, r12d
mov r13d, 0xdbab5a95
mov r15, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
xor ecx, ecx
mov qword [rsp + 0x30], rsi
jmp 0x1400f5480
mov rcx, qword [rsp + 0x38]
cmp rcx, qword [rsp + 0x40]
je 0x1400f5720
mov eax, dword [0x141dc8468]
xor edx, edx
div dword [0x141dc846c]
nop
mov eax, dword [0x141dc8470]
imul eax, dword [0x141dc8474]
imul rax, rax, 0x37db123d
shr rax, 0x3d
or eax, 0xeda3c4b0
imul rax, r13
shr rax, 0x3e
cmp eax, 0x375a719d
je 0x1400f5490
cmp qword [rsi + 0x10], rcx
jbe 0x1400f574e
lea rax, [rcx + 1]
mov qword [rsp + 0x38], rax
mov rdx, qword [rsi + 8]
shl rcx, 7
xor eax, eax
mov r8b, 1
lock cmpxchg byte [rdx + rcx + 4], r8b
lea r14, [rdx + rcx]
lea rbx, [rdx + rcx + 4]
sete al
mov ecx, dword [0x141dc8478]
add ecx, dword [0x141dc847c]
imul rdx, rcx, 0x24679b
shr rdx, 0x20
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 0x1e
add ecx, 0xa61327af
imul rcx, rcx, 0x1c2c6be3
shr rcx, 0x39
cmp ecx, 0xeed41bd9
ja 0x1400f54ef
test al, al
jne 0x1400f55a0
mov eax, dword [0x141dc8480]
and eax, dword [0x141dc8484]
imul eax, eax, 0x1b4b9c3f
mov ecx, 0xb593ed4b
imul rax, rcx
shr rax, 0x3f
cmp eax, 0x3dcd1459
ja 0x1400f55c1
mov eax, dword [0x141dc8488]
xor edx, edx
div dword [0x141dc848c]
mov ebp, eax
xor ebp, 0xf9717d1f
add ebp, 0x14f9fd70
mov rcx, rbx
call fcn.1400f8d30
cmp ebp, 0x32098296
ja 0x1400f5552
nop
mov eax, dword [0x141dc8490]
and eax, dword [0x141dc8494]
and eax, 0x5523f64e
cmp eax, 0xc4ab9776
je 0x1400f5580
nop dword [rax + rax]
test r12b, r12b
jne 0x1400f55a0
movzx ebp, byte [r14 + 5]
test bpl, bpl
je 0x1400f5609
mov byte [r14 + 5], 0
test r12b, r12b
mov rdi, r15
je 0x1400f55d0
jmp 0x1400f5650
mov rcx, rbx
call fcn.1400f8d30
jmp 0x1400f5552
mov eax, dword [0x141dc84a0]
sub eax, dword [0x141dc84a4]
imul esi, eax, 0xc6e29d67
add esi, 0x9ab84dc0
and esi, 0x7aeebe47
lock inc dword [r14]
mov rcx, r14
call rdi
cmp esi, 0xa6b364ca
ja 0x1400f5650
mov rsi, qword [rsp + 0x30]
lock dec qword [rsi + 0x18]
xor eax, eax
xchg byte [rbx], al
cmp al, 2
jne 0x1400f56b3
mov eax, dword [0x141dc84a8]
sub eax, dword [0x141dc84ac]
and eax, 0xe71b9044
mov ecx, 0xc591cd63
imul rax, rcx
shr rax, 0x3c
and eax, 0xfffffffa
cmp eax, 0x755cdeea
jne 0x1400f5660
jmp 0x1400f5710
lock inc dword [r14]
mov rcx, r14
call rdi
jmp 0x1400f55d0
mov esi, dword [0x141dc84b0]
imul esi, dword [0x141dc84b4]
add esi, 0x676d6120
and esi, 0x96808981
mov rcx, rbx
call r15
cmp esi, 0xd18b30cf
je 0x1400f5710
mov rsi, qword [rsp + 0x30]
mov eax, dword [str.5x4]
or eax, dword [0x141dc84bc]
xor eax, 0x20002382
or eax, 0x9aa5885c
imul eax, eax, 0x59114d8d
cmp eax, 0x1496c384
jb 0x1400f5690
test bpl, bpl
je 0x1400f5470
mov eax, dword [0x141dc84c8]
xor edx, edx
div dword [0x141dc84cc]
mov eax, dword [0x141dc84d0]
or eax, dword [0x141dc84d4]
or eax, 0xd5008f85
mov ecx, 0x87ebe0d5
imul rax, rcx
shr rax, 0x3f
or eax, 0x223a0ffe
cmp eax, 0x1ef826a0
jb 0x1400f56ca
cmp dword [rsp + 0x2c], 1
mov dword [rsp + 0x2c], 1
mov rcx, qword [rsp + 0x38]
jne 0x1400f5475
jmp 0x1400f5720
mov rcx, rbx
call r15
jmp 0x1400f5660
mov eax, dword [0x141dc84c0]
or eax, dword [0x141dc84c4]
add eax, 0x24f0fdff
or eax, 0xb87a501f
cmp eax, 0x7e6eeab
jb 0x1400f5720
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor eax, eax
test al, al
je 0x1400f5760
ud2
mov eax, dword [0x141dc8498]
add eax, dword [0x141dc849c]
or eax, 0xfa6bffbb
imul rax, rax, 0x5a0beccf
shr rax, 0x3e
ud2