Function at 0x18001a0d0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rcx
push r14
sub rsp, 0x80
mov eax, dword [0x1800658d4]
mov r14, r8
mov r10, rcx
test al, 1
jne 0x18001a0f7
or eax, 1
mov dword [0x1800658d4], eax
lea eax, [rdx + 0x11]
mov dword [rsp + 0x98], eax
cmp edx, eax
jae 0x18001a23d
mov qword [rsp + 0xa0], rbx
lea r8d, [rdx - 0xc4]
mov qword [rsp + 0x78], rbp
lea rdx, [0x180000000]
mov rbp, qword [0x1800658c8]
movabs r11, 0xaaaaaaaaaaaaaaab
mov qword [rsp + 0x70], rsi
mov r9d, 0x44
mov esi, dword [rsp + 0x98]
mov ecx, eax
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x60], r12
mov r12d, dword [rsp + 0x98]
mov dword [rsp + 0xa8], r8d
mov rbx, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0xa8]
mov qword [rsp + 0x58], r13
mov r13d, dword [rsp + 0x98]
mov qword [rsp + 0x50], r15
mov r15, qword [rsp + 0xa8]
nop dword [rax]
cmp r8d, 0x13
ja case.default.0x18001a1a1
mov ecx, dword [rdx + r8*4 + 0x1a6f4]
add rcx, rdx
jmp rcx
mov r8d, 1
lea rdx, [0x18005a22c]
lea rcx, [0x180065850]
call fcn.1800336c0
mov eax, 0x76
mov word [0x18006587f], ax
mov rbp, qword [0x1800658c8]
mov r8d, dword [rsp + 0xa8]
movabs r11, 0xaaaaaaaaaaaaaaab
mov r10, qword [rsp + 0x90]
mov r9d, 0x44
lea rdx, [0x180000000]
mov ecx, dword [rsp + 0x98]
inc r8d
mov dword [rsp + 0xa8], r8d
lea eax, [r8 + 0xc4]
cmp eax, ecx
jb 0x18001a190
mov r13, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rbx, qword [rsp + 0xa0]
mov r15, qword [rsp + 0x50]
add rsp, 0x80
pop r14
ret
mov rcx, qword [rsp + 0x30]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x18001a1c8
lea rcx, [0x180065850]
dec rcx
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x18001a271
movsd xmm0, qword [str.bcdefghij]
movzx eax, word [0x18005ac60]
movsd qword [rcx], xmm0
mov word [rcx + 8], ax
mov dword [0x180065874], 0x6d6c6b
jmp case.0x18001a1a1.14
mov rcx, qword [0x180065788]
xor edx, edx
lea r8d, [rdx + 0x33]
call fcn.1800092d0
mov rdx, qword [0x180065788]
mov ecx, 0x87
call fcn.180017800
jmp 0x18001a1c8
lea rdx, [0x18005ac64]
lea rcx, [0x180065850]
call qword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, dword [str.yz01]
mov dword [0x180065882], eax
movzx eax, byte [0x18005ac6c]
mov byte [0x180065886], al
jmp 0x18001a1c8
mov rdx, qword [rsp + 0x40]
xor r15d, r15d
test rdx, rdx
je 0x18001a1ef
lea rcx, [rdx - 1]
mov rax, r11
mul rcx
shr rdx, 1
inc rdx
lea r15, [rdx + rdx*2]
movzx eax, byte [rdi]
shr rax, 2
movzx eax, byte [rax + rbp]
mov byte [rbx], al
movzx eax, byte [rdi + 1]
movzx ecx, byte [rdi]
shr eax, 4
and ecx, 3
shl ecx, 4
add ecx, eax
movzx ecx, byte [rcx + rbp]
mov byte [rbx + 1], cl
movzx eax, byte [rdi + 2]
movzx ecx, byte [rdi + 1]
shr eax, 6
and ecx, 0xf
lea eax, [rax + rcx*4]
movzx eax, byte [rax + rbp]
mov byte [rbx + 2], al
movzx eax, byte [rdi + 2]
add rdi, 3
and eax, 0x3f
movzx eax, byte [rax + rbp]
mov byte [rbx + 3], al
add rbx, 4
sub rdx, 1
jne 0x18001a320
jmp 0x18001a1ef
mov dword [0x180065850], 0x434241
mov word [0x180065853], r9w
jmp case.0x18001a1a1.14
mov r8d, 0xa
lea rdx, [0x180065886]
mov ecx, 0xea
call fcn.1800308ac
jmp 0x18001a1c8
lea rdx, [0x18005ab4c]
lea rcx, [0x180065855]
call qword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [str.GHIJKL]
lea rdx, [0x18005ac7c]
mov dword [0x180065856], eax
lea rcx, [0x180065850]
movzx eax, word [0x18005ac74]
mov word [0x18006585a], ax
movzx eax, word [0x18005ac78]
mov word [0x18006585c], ax
movzx eax, byte [0x18005ac7a]
mov byte [0x18006585e], al
call qword [sym.imp.KERNEL32.dll_lstrcatA]
jmp 0x18001a1c8
cmp r15, qword [r14 + 0x10]
jae case.0x18001a1a1.14
mov edx, 0x99
mov eax, edx
sub eax, 0x99
je 0x18001a4b2
sub eax, 1
je 0x18001a473
sub eax, 1
je 0x18001a447
cmp eax, 1
jne 0x18001a4b6
mov byte [rbx], 0x3d
inc rbx
jmp 0x18001a4b6
lea rax, [r15 + 1]
cmp rax, qword [r14 + 0x10]
jae 0x18001a46a
mov eax, r12d
mov ecx, esi
shr eax, 6
and ecx, 0xf
lea eax, [rax + rcx*4]
movzx eax, byte [rax + rbp]
mov byte [rbx], al
inc rbx
jmp 0x18001a4b6
mov al, 0x3d
mov byte [rbx], al
inc rbx
jmp 0x18001a4b6
lea rax, [r15 + 1]
cmp rax, qword [r14 + 0x10]
jae 0x18001a483
movzx esi, byte [rdi + 1]
jmp 0x18001a485
xor esi, esi
mov ecx, r13d
mov eax, r13d
shr rax, 2
and ecx, 3
shl ecx, 4
xor r12d, r12d
movzx eax, byte [rax + rbp]
mov byte [rbx], al
mov eax, esi
shr eax, 4
add ecx, eax
movzx ecx, byte [rcx + rbp]
mov byte [rbx + 1], cl
add rbx, 2
jmp 0x18001a4b6
movzx r13d, byte [rdi]
inc edx
cmp edx, 0x9d
jb 0x18001a423
jmp 0x18001a1ef
mov rax, qword [0x1800657b8]
mov qword [rsp + 0x30], rax
test rax, rax
je 0x18001a217
mov qword [0x1800657b8], 0
jmp case.0x18001a1a1.14
mov eax, 0x50
lea rcx, [0x180065850]
mov word [0x18006585f], ax
dec rcx
movzx eax, word [0x18005ac80]
mov word [0x180065860], ax
movzx eax, byte [0x18005ac82]
mov byte [0x180065862], al
nop
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x18001a520
movzx eax, word [0x18005ac84]
mov word [rcx], ax
movzx eax, byte [0x18005ac86]
mov byte [rcx + 2], al
mov eax, dword [str.UVWX]
mov dword [0x180065864], eax
mov dword [0x180065868], 0x615a59
jmp case.0x18001a1a1.14
mov r8d, 0xa
lea rdx, [0x180065889]
lea ecx, [r8 + 0x2e]
call fcn.1800308ac
mov eax, dword [str.789]
lea rdx, [0x180059c0c]
mov dword [0x18006588b], eax
lea rcx, [0x180065850]
movzx eax, byte [0x18005ac94]
mov r8d, 1
mov byte [0x18006588f], al
call fcn.1800336c0
lea rbp, [0x180065850]
mov qword [0x1800658c8], rbp
jmp 0x18001a1cf
mov rcx, qword [r14 + 0x10]
mov rax, r11
add rcx, 2
mul rcx
mov r9, rdx
shr r9, 1
shl r9, 2
mov qword [rsp + 0x38], r9
jmp 0x18001a1e9
mov eax, dword [str.nopqr]
lea rdx, [0x18005a330]
mov dword [0x180065877], eax
lea rcx, [0x18006587c]
movzx eax, word [0x18005ac9c]
mov word [0x18006587b], ax
call qword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x18001a1c8
mov r8d, 1
lea rdx, [0x18005a3d8]
lea rcx, [0x180065850]
call fcn.1800336c0
jmp 0x18001a1c8
mov rcx, qword [r10 + 0x10]
mov r9, qword [rsp + 0x38]
cmp r9, rcx
ja 0x18001a64d
mov qword [r10 + 0x10], r9
mov rax, r10
cmp qword [r10 + 0x18], 0x10
jb 0x18001a646
mov rax, qword [r10]
mov byte [rax + r9], 0
jmp 0x18001a6c0
mov rdx, qword [r10 + 0x18]
mov rdi, r9
mov rax, rdx
sub rdi, rcx
sub rax, rcx
cmp rdi, rax
ja 0x18001a689
mov qword [r10 + 0x10], r9
mov rax, r10
cmp rdx, 0x10
jb 0x18001a672
mov rax, qword [r10]
lea rbx, [rax + rcx]
mov r8, rdi
mov rcx, rbx
xor edx, edx
call fcn.18002e420
mov byte [rbx + rdi], 0
jmp 0x18001a6a6
mov r9, rdi
mov byte [rsp + 0x20], 0
xor r8d, r8d
mov rdx, rdi
mov rcx, r10
call fcn.180021f40
mov rbp, qword [0x1800658c8]
mov r10, qword [rsp + 0x90]
movabs r11, 0xaaaaaaaaaaaaaaab
mov r8d, dword [rsp + 0xa8]
cmp qword [r14 + 0x18], 0x10
mov rdi, r14
jb 0x18001a6cd
mov rdi, qword [r14]
cmp qword [r10 + 0x18], 0x10
mov rbx, r10
jb 0x18001a6da
mov rbx, qword [r10]
mov rax, r11
mul qword [r14 + 0x10]
shr rdx, 1
lea rax, [rdx + rdx*2]
mov qword [rsp + 0x40], rax
jmp 0x18001a1e9