Function at 0x180029a00
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xc0
mov rax, qword [0x1800a0238]
xor rax, rsp
mov qword [rbp + 0xf], rax
lea ebx, [rdx + 0x240]
mov qword [rbp - 0x61], r8
mov r9, r8
mov dword [rbp - 0x71], ebx
mov r8, qword [rbp + 0x7f]
cmp edx, ebx
movzx ebx, byte [rbp - 0x6d]
mov r15d, edx
mov qword [rbp - 0x69], r8
mov r12, rcx
ja 0x18002a1a6
mov rdi, qword [rbp - 0x41]
lea r10, [0x180000000]
mov rsi, qword [rbp - 0x41]
lea r11, [0x1800a43f0]
mov r14d, dword [rbp - 0x59]
mov r13d, dword [rbp - 0x59]
mov eax, dword [rbp - 0x71]
mov byte [rbp - 0x6d], bl
xor edx, edx
cmp r15d, 0x1982
ja 0x180029c55
je 0x180029c45
lea eax, [r15 - 0x19]
cmp eax, 0x9c
ja case.0x180029cc1.12378
movzx eax, byte [r10 + rax + 0x2a20c]
mov ecx, dword [r10 + rax*4 + 0x2a1d0]
add rcx, r10
jmp rcx
mov dword [rbp - 7], 0x650068
jmp case.0x180029cc1.12378
mov eax, 0x6c
mov word [rbp - 1], ax
jmp case.0x180029cc1.12378
mov eax, 0x2e
mov dword [rbp + 1], 0x320033
mov word [rbp + 5], ax
mov dword [rbp + 7], 0x6c0064
jmp case.0x180029cc1.12378
mov dword [rbp + 0xb], 0x6c
jmp case.0x180029cc1.12378
mov r8d, 6
lea rdx, str.Comma
lea rcx, [rbp - 0x21]
call fcn.1800643c0
mov r8d, 3
lea rdx, [0x180082bac]
lea rcx, [rbp - 0x21]
call fcn.180064210
mov r8d, 2
lea rdx, [0x180082bb0]
lea rcx, [rbp - 0x19]
call fcn.180061240
lea r11, [0x1800a43f0]
lea r10, [0x180000000]
mov r9, qword [rbp - 0x61]
mov r8, qword [rbp - 0x69]
mov eax, dword [rbp - 0x71]
add r15d, 0xc
cmp r15d, eax
ja 0x18002a1a6
jmp 0x180029a78
mov eax, 0x73
mov word [rbp - 9], ax
jmp case.0x180029cc1.12378
lea rdx, [0x180082bb4]
lea rcx, [rbp - 0x13]
call qword [sym.imp.KERNEL32.dll_lstrcpyA]
lea rdx, [0x180082bb8]
lea rcx, [rbp - 0x12]
call qword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x180029b2d
mov rcx, qword [r8]
lea rdx, [rbp - 0x55]
call qword [rbp - 0x29]
mov qword [rbp - 0x31], rax
test rax, rax
je 0x18002a19d
cmp dword [rbp - 0x55], 0
je 0x18002a19d
mov r8, qword [rax]
lea rcx, [0x1800a0098]
mov r9d, 0x1166
xor edx, edx
call fcn.1800209e0
jmp 0x180029b2d
mov r8d, 4
lea rdx, [0x180082ce8]
lea rcx, [rbp - 0x16]
jmp 0x180029b28
mov eax, 0x57
mov word [rbp - 0x10], ax
jmp case.0x180029cc1.12378
mov rcx, qword [rbp - 0x31]
call qword [sym.imp.KERNEL32.dll_LocalFree]
xor r8d, r8d
xor edx, edx
mov ecx, 0x7d43
call fcn.1800467f0
jmp 0x180029b2d
mov r8d, 3
lea rdx, [0x180082d3c]
lea rcx, [rbp - 0x18]
jmp 0x180029b28
mov eax, 0x6c
mov word [rbp - 3], ax
jmp case.0x180029cc1.12378
lea r8, [rbp - 0x21]
mov ecx, 0x51b7
lea rdx, [rbp - 9]
call fcn.180047c40
mov qword [rbp - 0x29], rax
jmp 0x180029b2d
cmp qword [r12], 0xffffffffffffffff
setne bl
mov byte [rbp - 0x6d], bl
jmp 0x180029b46
cmp r15d, 0x303b
ja 0x180029c88
je 0x180029c72
cmp r15d, 0x198e
je 0x18002a1a6
jmp 0x180029b46
mov dword [0x1800a43f0], 0x44434241
mov byte [0x1800a43f4], 0
jmp 0x180029b46
cmp r15d, 0x7349
ja 0x180029b46
je 0x18002a133
lea eax, [r15 - 0x3047]
cmp eax, 0xd8
ja case.0x180029cc1.12378
movzx eax, byte [r10 + rax + 0x2a2fc]
mov ecx, dword [r10 + rax*4 + 0x2a2ac]
add rcx, r10
jmp rcx
mov rcx, qword [r12 + 0x10]
movabs rax, 0xaaaaaaaaaaaaaaab
add rcx, 2
mov qword [0x1800a4438], r11
mul rcx
xor r8d, r8d
mov rcx, r9
shr rdx, 1
shl rdx, 2
call fcn.1800570c0
jmp 0x180029b2d
mov word [0x1800a442f], 0x2f
jmp case.0x180029cc1.12378
mov dword [0x1800a440c], 0x66656463
mov dword [0x1800a4410], 0x6a696867
jmp case.0x180029cc1.12378
mov r8d, 4
mov byte [0x1800a43fb], 0
lea rdx, [0x180082abb]
lea rcx, [0x1800a43fb]
call fcn.1800643c0
mov byte [0x1800a43ff], 0
jmp 0x180029b2d
mov r8d, 3
mov byte [0x1800a4414], 0
lea rdx, [0x180082af1]
lea rcx, [0x1800a4414]
call fcn.1800643c0
jmp 0x180029b2d
mov r8d, 1
mov byte [0x1800a4405], 0
lea rdx, [0x180082b5b]
mov rcx, r11
call fcn.180064210
mov dword [0x1800a4406], 0x5a595857
jmp 0x180029b2d
mov r8d, 1
lea rdx, [0x180082b99]
lea rcx, [0x1800a442e]
call fcn.1800643c0
mov byte [0x1800a442f], 0
jmp 0x180029b2d
mov rcx, qword [rbp - 0x41]
mov qword [rbp - 0x39], rdx
test rcx, rcx
je case.0x180029cc1.12378
dec rcx
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
mov r9, rdx
shr r9, 1
inc r9
lea rax, [r9 + r9*2]
mov qword [rbp - 0x39], rax
nop dword [rax]
nop word [rax + rax]
mov r8d, 0x6cb0
mov eax, r8d
sub eax, 0x6cb0
je 0x180029e61
sub eax, 0x3d
je 0x180029e3e
sub eax, 0x3d
je 0x180029e25
cmp eax, 0x3d
jne 0x180029e92
add rsi, 3
jmp 0x180029e92
movzx ecx, byte [rsi + 2]
mov rax, qword [0x1800a4438]
and ecx, 0x3f
movzx ecx, byte [rcx + rax]
mov byte [rdi], cl
inc rdi
jmp 0x180029e92
movzx ecx, byte [rsi + 1]
movzx eax, byte [rsi + 2]
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x1800a4438]
movzx ecx, byte [rcx + rax]
mov byte [rdi], cl
inc rdi
jmp 0x180029e92
movzx eax, byte [rsi]
mov rdx, qword [0x1800a4438]
shr rax, 2
movzx eax, byte [rax + rdx]
mov byte [rdi], al
movzx ecx, byte [rsi]
movzx eax, byte [rsi + 1]
and ecx, 3
shl ecx, 4
shr eax, 4
add ecx, eax
movzx ecx, byte [rcx + rdx]
mov byte [rdi + 1], cl
add rdi, 2
add r8d, 0x3d
cmp r8d, 0x6d67
jbe 0x180029e06
sub r9, 1
jne 0x180029e00
jmp 0x180029b3b
mov r8d, 4
mov byte [0x1800a442a], 0
lea rdx, [0x180082c17]
mov rcx, r11
call fcn.180064210
jmp 0x180029b2d
mov r10, qword [rbp - 0x39]
cmp r10, qword [r12 + 0x10]
jae 0x18002a191
mov ebx, dword [rbp - 0x51]
mov r8d, 0x360f
nop dword [rax + rax]
mov eax, r8d
sub eax, 0x360f
je 0x180029f8d
sub eax, 0x5a
je 0x180029f75
sub eax, 0x5a
je 0x180029f53
cmp eax, 0x5a
jne 0x180029fa8
lea rax, [r10 + 1]
cmp rax, qword [r12 + 0x10]
jae 0x180029f44
mov ecx, r14d
mov eax, r13d
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x1800a4438]
movzx edx, byte [rcx + rax]
mov byte [rdi], dl
mov byte [rdi + 1], 0x3d
add rdi, 2
xor edx, edx
jmp 0x180029fa8
mov dl, 0x3d
mov byte [rdi], dl
mov byte [rdi + 1], dl
add rdi, 2
xor edx, edx
jmp 0x180029fa8
mov ecx, ebx
mov eax, r14d
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
mov rax, qword [0x1800a4438]
movzx ecx, byte [rcx + rax]
mov byte [rdi], cl
inc rdi
jmp 0x180029fa8
mov rax, qword [0x1800a4438]
mov ecx, ebx
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov byte [rdi], cl
inc rdi
jmp 0x180029fa8
movzx ebx, byte [rsi]
lea rax, [r10 + 1]
cmp rax, qword [r12 + 0x10]
jae 0x180029fa2
movzx r14d, byte [rsi + 1]
jmp 0x180029fa5
mov r14d, edx
mov r13d, edx
add r8d, 0x5a
cmp r8d, 0x371d
jbe 0x180029ef0
mov dword [rbp - 0x51], ebx
lea r10, [0x180000000]
movzx ebx, byte [rbp - 0x6d]
jmp 0x180029b3f
mov r8d, 4
mov byte [0x1800a4426], 0
lea rdx, [0x180082c57]
lea rcx, [0x1800a4426]
call fcn.1800643c0
jmp 0x180029b2d
mov r8d, 2
lea rdx, [0x180082c96]
mov rcx, r11
call fcn.180064210
mov r8d, 4
lea rdx, [0x180082cc6]
lea rcx, [0x1800a4401]
call fcn.1800643c0
jmp 0x180029b2d
mov r8d, 3
lea rdx, str.tuvalu
mov rcx, r11
call fcn.180064210
jmp 0x180029b2d
cmp qword [r12 + 0x18], 0x10
mov rsi, r12
jb 0x18002a04d
mov rsi, qword [r12]
cmp qword [r9 + 0x18], 0x10
mov rdi, r9
jb 0x18002a05a
mov rdi, qword [r9]
movabs rax, 0xaaaaaaaaaaaaaaab
mul qword [r12 + 0x10]
shr rdx, 1
lea rax, [rdx + rdx*2]
mov qword [rbp - 0x41], rax
jmp case.0x180029cc1.12378
mov r8d, 2
mov byte [0x1800a440a], 0
lea rdx, [0x180082d10]
mov rcx, r11
call fcn.180064210
jmp 0x180029b2d
mov r8d, 4
mov byte [0x1800a4419], 0
lea rdx, [0x180082d60]
mov rcx, r11
call fcn.180064210
jmp 0x180029b2d
mov r8d, 2
lea rdx, [0x180082d89]
mov rcx, r11
call fcn.180064210
mov dword [0x1800a4422], 0x31307a79
jmp 0x180029b2d
mov r8d, 3
mov dword [0x1800a43f4], 0x48474645
lea rdx, [0x180082def]
mov byte [0x1800a43f8], 0
lea rcx, [0x1800a43f8]
call fcn.1800643c0
jmp 0x180029b2d
mov r8d, 2
mov byte [0x1800a4417], 0
lea rdx, [0x180082e48]
lea rcx, [0x1800a4417]
call fcn.1800643c0
jmp 0x180029b2d
lea rax, [rbp - 0x59]
mov dword [rbp - 0x49], 0xfa
mov r9d, 0x3001
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x49]
mov rdx, r12
xor ecx, ecx
call fcn.1800176d0
mov eax, dword [rbp - 0x59]
cmp eax, 1
jne 0x18002a171
mov rdx, r12
mov ecx, 0x624e
call fcn.180012740
jmp 0x180029b2d
cmp eax, 2
jne 0x180029b2d
mov r9, r12
xor r8d, r8d
mov edx, 0x4e08
xor ecx, ecx
call fcn.18000e4c0
jmp 0x180029b2d
lea r10, [0x180000000]
jmp case.0x180029cc1.12378
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LocalFree]
movzx eax, bl
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.18005fbe0
mov rbx, qword [rsp + 0x108]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret