Function at 0x180026790
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
lea ecx, [rdx + 0x228]
mov r14, r9
mov dword [rsp + 0x88], ecx
mov r12, r8
movzx ebx, byte [rsp + 0x88]
mov r13d, edx
cmp edx, ecx
jae 0x180026872
mov rcx, qword [rsp + 0x48]
lea r9, [0x18005bd10]
mov rsi, qword [rsp + 0x48]
movabs r11, 0xaaaaaaaaaaaaaaab
mov edx, dword [rsp + 0x88]
mov r10d, dword [rsp + 0x88]
mov r15d, dword [rsp + 0x88]
mov eax, dword [rsp + 0x88]
mov qword [rsp + 0x48], rsi
mov r8, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x48]
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], edx
mov dword [rsp + 0x34], r10d
cmp r13d, 0x121
ja 0x180026a05
je 0x180026caf
cmp r13d, 0xab
ja 0x180026983
je 0x180026957
cmp r13d, 4
je 0x180026893
cmp r13d, 0x19
je 0x180026caf
cmp r13d, 0x32
jne 0x18002693c
movzx eax, bl
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov eax, dword [r12]
cmp eax, 1
je 0x180026c7d
cmp eax, 0x19
jne 0x1800268c3
mov r8, r14
lea ecx, [rax + 0x26]
mov rdx, r12
call fcn.180051680
lea rax, [0x180063b40]
mov qword [r14 + 0x98], rax
jmp 0x180026918
mov esi, 0xdd
nop dword [rax + rax]
mov eax, esi
sub eax, 0xdd
je 0x1800268e9
sub eax, 1
je 0x1800268e5
cmp eax, 1
je 0x180026872
jmp 0x180026909
xor bl, bl
jmp 0x180026909
xor r9d, r9d
mov rdx, r14
mov rcx, r12
lea r8d, [r9 + 0xa]
call fcn.1800261d0
lea rax, [0x180063af0]
mov qword [r14 + 0x98], rax
inc esi
cmp esi, 0xe0
jb 0x1800268d0
mov rsi, qword [rsp + 0x48]
mov bl, 1
mov rcx, qword [rsp + 0x38]
movabs r11, 0xaaaaaaaaaaaaaaab
mov r8, qword [rsp + 0x40]
lea r9, [0x18005bd10]
mov eax, dword [rsp + 0x88]
add r13d, 0x2e
cmp r13d, eax
jae 0x180026872
mov edx, dword [rsp + 0x30]
mov r10d, dword [rsp + 0x34]
jmp 0x180026832
cmp dword [r12], 1
je 0x180026c7d
mov rax, qword [r14 + 0x58]
mov rcx, qword [rax + 0x10]
mov rsi, qword [rcx + 8]
mov qword [rsp + 0x48], rsi
test rsi, rsi
je 0x180026c84
mov rcx, qword [rsp + 0x38]
jmp 0x180026935
mov eax, r13d
sub eax, 0xd9
je 0x1800269a2
cmp eax, 0x2e
mov eax, dword [rsp + 0x88]
jne 0x18002693c
mov qword [r14 + 0x98], r9
jmp 0x18002693c
mov eax, dword [r12]
cmp eax, 0xa
jne 0x1800269cd
lea r8, [rsi + 8]
mov r9d, SHSetFolderPathW
mov rdx, r12
mov rcx, r14
call fcn.180059e00
mov eax, 2
mov dword [rsi + 0x10], eax
jmp 0x18002691a
cmp eax, 8
jne 0x180026c84
lea r8, [rsi + 8]
mov qword [rsp + 0x28], 0
mov r9, r14
mov dword [rsp + 0x20], 0x55
mov rdx, r12
xor ecx, ecx
call fcn.18000d130
mov eax, 1
mov dword [rsi + 0x10], eax
jmp 0x18002691a
mov eax, r13d
sub eax, 0x12b
je 0x180026c5b
sub eax, 0xa
je 0x180026c54
sub eax, 0x24
je 0x180026c03
sub eax, 0xa
je 0x180026872
cmp eax, 0x24
jne 0x180026935
xor r9d, r9d
test r8, r8
je 0x180026b11
lea rcx, [r8 - 1]
mov rax, r11
mul rcx
mov r8, rdx
shr r8, 1
inc r8
lea r9, [r8 + r8*2]
nop word [rax + rax]
mov eax, 0xce
cmp eax, 0xce
je 0x180026ad1
cmp eax, 0x26a0
jne 0x180026ae9
movzx edx, byte [rbp]
movzx ecx, byte [rbp + 1]
and edx, 3
shl edx, 4
shr ecx, 4
add edx, ecx
mov rcx, qword [0x180098130]
movzx edx, byte [rdx + rcx]
mov byte [rdi], dl
movzx edx, byte [rbp + 1]
movzx ecx, byte [rbp + 2]
and edx, 0xf
shr ecx, 6
lea edx, [rcx + rdx*4]
mov rcx, qword [0x180098130]
movzx edx, byte [rdx + rcx]
mov byte [rdi + 1], dl
movzx edx, byte [rbp + 2]
mov rcx, qword [0x180098130]
and edx, 0x3f
movzx edx, byte [rdx + rcx]
mov byte [rdi + 2], dl
add rdi, 3
add rbp, 3
jmp 0x180026ae9
movzx edx, byte [rbp]
mov rcx, qword [0x180098130]
shr rdx, 2
movzx edx, byte [rdx + rcx]
mov byte [rdi], dl
inc rdi
add eax, 0x25d2
cmp eax, 0x4ba4
jbe 0x180026a65
sub r8, 1
jne 0x180026a60
mov edx, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
cmp r9, qword [r14 + 0x10]
jae 0x18002692e
mov r8d, reloc.SHELL32.dll_ILFree
mov eax, r8d
sub eax, 0x9b
je 0x180026bd7
sub eax, 1
je 0x180026b89
sub eax, 1
je 0x180026b4d
cmp eax, 1
jne 0x180026bdf
mov byte [rdi], 0x3d
inc rdi
jmp 0x180026bdf
lea rax, [r9 + 1]
cmp rax, qword [r14 + 0x10]
jae 0x180026b7c
mov ecx, r15d
mov eax, r10d
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x180098130]
movzx edx, byte [rcx + rax]
mov byte [rdi], dl
inc rdi
mov edx, dword [rsp + 0x30]
jmp 0x180026bdf
mov dl, 0x3d
mov byte [rdi], dl
inc rdi
mov edx, dword [rsp + 0x30]
jmp 0x180026bdf
lea rax, [r9 + 1]
cmp rax, qword [r14 + 0x10]
jae 0x180026b9a
movzx r15d, byte [rbp + 1]
jmp 0x180026b9d
xor r15d, r15d
mov rax, qword [0x180098130]
xor r10d, r10d
mov ecx, edx
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov eax, r15d
mov byte [rdi], cl
mov ecx, edx
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
mov rax, qword [0x180098130]
movzx ecx, byte [rcx + rax]
mov byte [rdi + 1], cl
add rdi, 2
jmp 0x180026bdf
movzx edx, byte [rbp]
mov dword [rsp + 0x30], edx
inc r8d
cmp r8d, 0x9f
jb 0x180026b21
mov rcx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
mov dword [rsp + 0x34], r10d
jmp 0x18002692e
mov rdx, rcx
xor r8d, r8d
mov rcx, r12
call fcn.180063610
cmp qword [r14 + 0x18], 0x10
mov rbp, r14
jb 0x180026c1e
mov rbp, qword [r14]
cmp qword [r12 + 0x18], 0x10
mov rdi, r12
jb 0x180026c2d
mov rdi, qword [r12]
mov rcx, qword [rsp + 0x38]
movabs r11, 0xaaaaaaaaaaaaaaab
mov rax, r11
mul qword [r14 + 0x10]
shr rdx, 1
lea r8, [rdx + rdx*2]
mov qword [rsp + 0x40], r8
jmp 0x18002692e
mov bl, 1
jmp 0x180026935
mov rcx, qword [r14 + 0x10]
mov rax, r11
add rcx, 2
mul rcx
mov rcx, rdx
shr rcx, 1
shl rcx, 2
mov qword [rsp + 0x38], rcx
jmp 0x180026935
mov al, 1
jmp 0x180026875
mov qword [rsp + 0x28], 0
mov r9, r14
xor r8d, r8d
mov qword [rsp + 0x20], 0
mov edx, 0x115
xor ecx, ecx
call fcn.18005d6b0
xor al, al
jmp 0x180026875
xor r9d, r9d
mov r8, r14
xor edx, edx
mov ecx, 0xf0
call fcn.1800497b0
jmp 0x180026875