Function at 0x140010f60
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, 0x28
mov rsi, rdx
mov rdi, rcx
mov r15, rdx
shl r15, 0x3c
dec r15
lea rbx, [rcx + 0x10]
lea r14, [rcx + 0x120]
nop dword [rax + rax]
mov eax, dword [0x141dc0f10]
imul eax, dword [0x141dc0f14]
add eax, 0x551266d4
imul rax, rax, 0x4ed7c695
shr rax, 0x3d
add eax, 0xa6e8599d
cmp eax, 0xaee8b1f7
ja 0x140010f90
nop dword [rax]
mov eax, dword [0x141dc0f18]
and eax, dword [0x141dc0f1c]
or eax, 0xb219d803
add eax, 0xa04f8e6f
cmp eax, 0x8de79a53
ja 0x140010fc0
mov r8, qword [rdi + 0x110]
xor ebp, ebp
mov r13d, 0x85c054e5
nop dword [rax]
mov eax, dword [0x141dc0f20]
or eax, dword [0x141dc0f24]
add eax, 0x2bdb3a14
or eax, 0x2e8c4264
and eax, 0xee9fe6e6
cmp eax, 0xbc54fe94
je 0x140010ff0
cmp r8, 0x3f
jae 0x140011050
lea rax, [r8 + 2]
mov qword [rdi + 0x110], rax
mov ecx, dword [0x141dc0f28]
sub ecx, dword [0x141dc0f2c]
add ecx, 0xeb78c2f0
cmp ecx, 0x62d4f682
jbe 0x140011023
mov rcx, qword [rbx + r8*4]
mov r8, rax
jmp 0x1400113b0
test bpl, bpl
jne 0x140011050
cmp r8, 0x3f
jne 0x140011193
mov eax, dword [0x141dc0f30]
and eax, dword [0x141dc0f34]
add eax, 0xd811b02e
imul rax, r13
shr rax, 0x3f
cmp eax, 0x1cd8defa
je 0x14001105f
mov r12d, dword [rdi + 0x10c]
mov ecx, 0xc41f1a75
mov eax, dword [0x141dc0f38]
imul eax, dword [0x141dc0f3c]
imul eax, eax, 0x1324957b
imul rax, rcx
shr rax, 0x3e
cmp eax, 0xd5168762
je 0x14001108b
mov rcx, qword [rdi + 0x158]
test rcx, rcx
jle 0x1400111f9
cmp qword [rdi + 0x160], 0
js 0x1400111f9
mov eax, dword [0x141dc0f40]
xor edx, edx
div dword [0x141dc0f44]
nop dword [rax]
mov eax, dword [0x141dc0f48]
xor edx, edx
div dword [0x141dc0f4c]
and eax, 0x1110b056
add eax, 0x5aa6db46
cmp eax, 0x5ba11b33
ja 0x1400110e0
add rcx, 0xffffffffffffff00
mov eax, dword [0x141dc0f50]
mov edx, dword [0x141dc0f54]
add eax, edx
add eax, 0xffc279fe
xor eax, 0xda8787cd
mov edx, 0xfd814303
imul rax, rdx
shr rax, 0x3c
cmp eax, 0x5179ce4
jbe 0x140011140
mov qword [rdi + 0x158], rcx
nop dword [rax]
mov eax, dword [0x141dc0f58]
xor edx, edx
div dword [0x141dc0f5c]
or eax, 0xedf9d77f
and eax, 0xeff9d77f
mov qword [rdi + 0x158], rcx
cmp eax, 0x34ac2983
je 0x140011140
mov eax, dword [0x141dc0f60]
imul eax, dword [0x141dc0f64]
or eax, 0xafa7b3ce
xor eax, 0x70cf3040
imul eax, eax, 0x1a930027
cmp eax, 0x56bb7913
jne 0x140011345
jmp 0x1400113df
mov rax, qword [rdi + 0x158]
test rax, rax
jle 0x140011257
cmp qword [rdi + 0x160], 0
js 0x140011257
mov ecx, dword [0x141dc0f80]
xor ecx, dword [0x141dc0f84]
add ecx, 0xaf12109
imul rcx, rcx, 0x69d57e61
shr rcx, 0x36
xor ecx, 0xfb800b39
cmp ecx, 0xc769b5b9
jb 0x1400111b1
add rax, 0xffffffffffffff00
mov qword [rdi + 0x158], rax
mov rcx, r14
mov rdx, rbx
call fcn.140070b90
jmp 0x1400112c0
mov eax, dword [0x141dc0f70]
and eax, dword [0x141dc0f74]
add eax, 0x2fd246e7
cmp eax, 0xaf6ed63
jae 0x140011220
mov rcx, r14
mov rdx, rbx
call fcn.140011410
nop dword [rax]
mov eax, dword [0x141dc0f78]
mov ecx, dword [0x141dc0f7c]
lea r13d, [rax + rcx]
add r13d, 0xd616e670
or r13d, 0xcbb27a14
mov rcx, r14
mov rdx, rbx
call fcn.140011410
cmp r13d, 0x4f3905c7
jb 0x140011220
jmp 0x140011383
mov eax, dword [0x141dc0f88]
xor eax, dword [0x141dc0f8c]
imul eax, eax, 0x29bab1af
add eax, 0x3d67ce29
xor eax, 0x3f96bf02
cmp eax, 0xb3bf3f52
jae 0x140011290
mov rcx, r14
mov rdx, rbx
call fcn.140011410
nop word cs:[rax + rax]
mov r12d, dword [0x141dc0f90]
or r12d, dword [0x141dc0f94]
xor r12d, 0x1802001
or r12d, 0xbe771dfe
mov rcx, r14
mov rdx, rbx
call fcn.140011410
cmp r12d, 0x517d4a16
jb 0x140011290
mov eax, dword [0x141dc0f98]
or eax, dword [0x141dc0f9c]
add eax, 0xfd2801b3
imul rax, rax, 0x35f5c8dd
shr rax, 0x3d
or eax, 0x93fdb920
cmp eax, 0xf6165dc
jae 0x140011300
mov qword [rdi + 0x110], 2
nop word cs:[rax + rax]
mov eax, dword [0x141dc0fa0]
xor eax, dword [0x141dc0fa4]
or eax, 0xc078b7ea
imul rcx, rax, 0x2d974585
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1c
and eax, 0xfffffffa
mov qword [rdi + 0x110], 2
cmp eax, 0x12d07c40
je 0x140011300
mov rcx, qword [rbx]
mov r8d, 2
jmp 0x1400113b0
mov r13d, dword [0x141dc0f68]
imul r13d, dword [0x141dc0f6c]
xor r13d, 0xb173d1d5
mov eax, 0xdce18acf
imul r13, rax
shr r13, 0x3c
or r13d, 0x27e0d9b4
mov rcx, r14
mov rdx, rbx
call fcn.140070b90
cmp r13d, 0x5b4bae6e
je 0x1400113df
mov qword [rdi + 0x110], 1
mov ecx, dword [rdi + 0x10]
shl rcx, 0x20
or rcx, r12
mov r8d, 1
mov r13d, 0x85c054e5
nop word cs:[rax + rax]
mov r9d, dword [0x141dc0fa8]
xor r9d, dword [0x141dc0fac]
mov rax, rcx
mul rsi
imul r9d, r9d, 0x2e46af10
cmp r9d, 0xd0db64d9
je 0x1400113b0
cmp r15, rax
jb 0x140010ff0
jmp 0x1400113ef
mov rcx, r14
mov rdx, rbx
call fcn.140070b90
jmp 0x140011345
mov rax, rdx
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret