Function at 0x18001cbe0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x80
mov r13d, dword [rsp + 0xe0]
mov r14, r8
mov r8, qword [rsp + 0x58]
mov rdi, rdx
mov rdx, qword [rsp + 0x58]
mov r10, rcx
mov r15, qword [rsp + 0x58]
mov ebx, r13d
movzx r12d, word [rsp + 0xe0]
imul ebp, r13d, 0x98c
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x50], r8
cmp r13d, ebp
ja 0x18001ce52
mov rax, qword [rsp + 0x58]
movzx esi, byte [rsp + 0xe0]
mov qword [rsp + 0x48], rax
nop dword [rax]
cmp ebx, 0xc22b
ja 0x18001ccd3
je 0x18001ccc7
mov eax, ebx
sub eax, 0x1b
je 0x18001ccba
sub eax, 0xec
je 0x18001ccac
sub eax, 9
je 0x18001ce1f
sub eax, 4
je 0x18001cca3
mov r11, qword [rsp + 0x48]
cmp eax, 0x17
jne 0x18001cd97
movzx eax, byte [r9]
movzx esi, byte [rax + r14 + 0x4c]
jmp 0x18001cd97
mov r15, qword [r14 + 8]
jmp 0x18001cd92
mov r8, qword [r14 + 8]
mov qword [rsp + 0x50], r8
jmp 0x18001cd92
xor r11d, r11d
mov qword [rsp + 0x48], r11
jmp 0x18001cd97
movzx eax, byte [r14 + 2]
sub byte [rdi], al
jmp 0x18001cd92
cmp ebx, 0xcbc4
je 0x18001cd85
cmp ebx, 0xdcbf
je 0x18001cd40
cmp ebx, 0x1834f
je 0x18001cd26
cmp ebx, 0x19674
je 0x18001cd1c
cmp ebx, 0x24473
jne 0x18001cd92
movzx eax, r12w
add r8, rax
movzx eax, byte [r9]
shr al, 2
movzx r12d, al
mov qword [rsp + 0x50], r8
jmp 0x18001cd92
movzx eax, byte [r14 + 5]
add rdx, rax
jmp 0x18001cd8d
movzx eax, byte [r14 + 5]
mov rdx, qword [rsp + 0x60]
shr al, 2
movzx r12d, al
movzx eax, byte [rdi]
imul r12d, eax
jmp 0x18001cd92
cmp sil, 0xff
je 0x18001cd92
movzx eax, byte [rdi]
lea rcx, [rsp + 0x40]
mov byte [rsp + 0x40], al
mov r9d, 6
lea rax, [rsp + 0x30]
mov byte [rsp + 0x30], sil
xor r8d, r8d
mov qword [rsp + 0x20], rax
xor edx, edx
call fcn.180042c60
mov rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x50]
mov r9, qword [rsp + 0xd8]
jmp 0x18001cd92
movzx edx, byte [r14 + 5]
add rdx, r15
mov qword [rsp + 0x60], rdx
mov r11, qword [rsp + 0x48]
imul eax, r13d, 0xbc
add ebx, eax
cmp ebx, ebp
jbe 0x18001cc60
mov r10, qword [rsp + 0xc0]
mov rbx, qword [rsp + 0x50]
lea ecx, [r13 + 0x746]
mov dword [rsp + 0x38], ecx
cmp r13d, ecx
jae case.0x18001ce1d.293
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x70]
mov ebp, dword [rsp + 0xe0]
mov qword [rsp + 0x58], rbx
nop
cmp r13d, 0x135
ja 0x18001cefe
je 0x18001cedb
lea eax, [r13 - 0x2b]
cmp eax, 0xfa
ja case.default.0x18001ce1d
lea r10, [0x180000000]
movzx eax, byte [r10 + rax + 0x1d1d0]
mov ecx, dword [r10 + rax*4 + 0x1d1b4]
add rcx, r10
jmp rcx
xor r9d, r9d
mov byte [rsp + 0xe0], ILFindLastID
lea r8, [rsp + 0xe0]
mov dword [rsp + 0x20], 0x5b
mov rdx, r14
xor ecx, ecx
call fcn.18003aa90
mov byte [rsp + 0x50], al
mov rax, qword [rsp + 0x50]
jmp 0x18001d196
mov r11, qword [rsp + 0x58]
mov qword [rsp + 0x48], r11
jmp 0x18001cdb0
mov rbx, r11
mov qword [rsp + 0x58], rbx
jmp case.0x18001ce1d.44
movzx eax, r12w
movzx r12d, byte [r9]
add r8, rax
mov qword [rsp + 0x50], r8
jmp case.0x18001ce1d.44
mov rcx, qword [r14 + 0x10]
movabs rax, 0xaaaaaaaaaaaaaaab
add rcx, 2
mul rcx
mov rax, rdx
shr rax, 1
shl rax, 2
mov qword [rsp + 0x78], rax
jmp case.0x18001ce1d.44
mov byte [r15], 0
inc r15
cmp r15, rdx
jne case.0x18001ce1d.276
jmp case.0x18001ce1d.44
mov rdx, qword [rsp + 0x78]
xor r8d, r8d
mov rcx, r9
call fcn.1800265a0
mov r11, qword [rsp + 0x48]
jmp case.0x18001ce1d.44
cmp qword [r14 + 0x18], 0x10
mov rsi, r14
jb 0x18001cee8
mov rsi, qword [r14]
cmp qword [r9 + 0x18], 0x10
mov rdi, r9
jb case.default.0x18001ce1d
mov rdi, qword [r9]
jmp case.default.0x18001ce1d
cmp r13d, 0x23f
ja 0x18001d130
je 0x18001cf71
mov eax, r13d
sub eax, 0x18c
je 0x18001cf5e
sub eax, 0x2e
je 0x18001cf3f
cmp eax, 0x57
jne case.default.0x18001ce1d
movzx eax, byte [rsp + 0x30]
movzx ecx, r12b
shl al, cl
and byte [r10], 3
not al
mov byte [rsp + 0x30], al
jmp case.0x18001ce1d.44
movabs rax, 0xaaaaaaaaaaaaaaab
mul qword [r14 + 0x10]
shr rdx, 1
lea rax, [rdx + rdx*2]
mov qword [rsp + 0x70], rax
jmp case.default.0x18001ce1d
and r12w, 3
mov byte [rsp + 0x30], 3
add r12w, r12w
jmp case.default.0x18001ce1d
mov rax, qword [rsp + 0x70]
xor r9d, r9d
test rax, rax
je 0x18001d050
lea rcx, [rax - 1]
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 1
inc rdx
lea r9, [rdx + rdx*2]
nop dword [rax]
mov r8d, 0x9a
mov eax, r8d
sub eax, 0x9a
je 0x18001cffa
sub eax, 1
je 0x18001cfd7
cmp eax, 1
jne 0x18001d032
movzx ecx, byte [rsi + 2]
mov rax, qword [section..data]
and ecx, 0x3f
movzx ecx, byte [rcx + rax]
mov byte [rdi], cl
inc rdi
add rsi, 3
jmp 0x18001d032
movzx ecx, byte [rsi + 1]
movzx eax, byte [rsi + 2]
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [section..data]
movzx ecx, byte [rcx + rax]
mov byte [rdi], cl
inc rdi
jmp 0x18001d032
mov rax, qword [section..data]
movzx ecx, byte [rsi]
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov byte [rdi], cl
movzx ecx, byte [rsi]
movzx eax, byte [rsi + 1]
and ecx, 3
shl ecx, 4
shr eax, 4
add ecx, eax
mov rax, qword [section..data]
movzx ecx, byte [rcx + rax]
mov byte [rdi + 1], cl
add rdi, 2
inc r8d
cmp r8d, 0x9d
jb 0x18001cfa6
sub rdx, 1
jne 0x18001cfa0
mov ecx, dword [rsp + 0x38]
cmp r9, qword [r14 + 0x10]
jae case.default.0x18001ce1d
mov ebx, dword [rsp + 0x6c]
mov r8d, 0x84
mov r13d, dword [rsp + 0x68]
nop dword [rax]
mov eax, r8d
sub eax, 0x82
je 0x18001d0d8
sub eax, 1
je 0x18001d0a4
cmp eax, 1
jne 0x18001d108
movzx r13d, byte [rsi]
lea rax, [r9 + 1]
cmp rax, qword [r14 + 0x10]
jae 0x18001d09e
movzx ebp, byte [rsi + 1]
xor ebx, ebx
jmp 0x18001d108
xor ebp, ebp
xor ebx, ebx
jmp 0x18001d108
mov rax, qword [section..data]
mov ecx, r13d
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov eax, ebp
mov byte [rdi], cl
mov ecx, r13d
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
mov rax, qword [section..data]
movzx ecx, byte [rcx + rax]
mov byte [rdi + 1], cl
jmp 0x18001d104
lea rax, [r9 + 1]
cmp rax, qword [r14 + 0x10]
jae 0x18001d0fc
mov ecx, ebp
mov eax, ebx
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [section..data]
movzx edx, byte [rcx + rax]
jmp 0x18001d0fe
mov dl, 0x3d
mov byte [rdi], dl
mov byte [rdi + 1], 0x3d
add rdi, 2
dec r8d
cmp r8d, 0x81
ja 0x18001d070
mov dword [rsp + 0x68], r13d
mov r13d, dword [rsp + 0xe0]
mov dword [rsp + 0x6c], ebx
mov rbx, qword [rsp + 0x58]
jmp case.0x18001ce1d.44
cmp r13d, 0x296
je 0x18001d156
cmp r13d, 0x31b
jne case.default.0x18001ce1d
movzx eax, byte [rsp + 0x30]
and byte [r8], al
movzx eax, byte [r8]
or al, byte [r10]
mov byte [r8], al
jmp case.default.0x18001ce1d
movzx ecx, r12b
shl byte [r10], cl
mov ecx, dword [rsp + 0x38]
mov rdx, qword [rsp + 0x60]
add r13d, 0x85
mov r8, qword [rsp + 0x50]
mov r9, qword [rsp + 0xd8]
mov r10, qword [rsp + 0xc0]
mov dword [rsp + 0xe0], r13d
cmp r13d, ecx
jb 0x18001cde0
mov rax, rbx
mov rbx, qword [rsp + 0xc8]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret