Function at 0x6d4920
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
mov r11, qword [rcx]
mov esi, r9d
mov edi, r8d
movzx r10d, byte [r11 + 1]
shr esi, 0xb
add r11, 2
and esi, 1
mov rbx, rdx
mov rbp, rcx
lea r12, [0x00400000]
je 0x6d49aa
cmp r10d, 0xc0
jl 0x6d49aa
mov eax, r10d
and eax, 0x3f
movzx r8d, byte [rax + r12 + 0x388b80]
and r10d, dword [r12 + r8*4 + 0x388b68]
lea ecx, [r8 + r8*2]
add ecx, ecx
shl r10d, cl
test r8d, r8d
jle 0x6d49aa
nop dword [rax + rax]
movzx eax, byte [r11]
sub ecx, 6
dec r8d
and eax, 0x3f
inc r11
shl eax, cl
or r10d, eax
test r8d, r8d
jg 0x6d4990
dec r11
test r10d, r10d
jne 0x6d49be
mov edx, 1
mov dword [rbx], edx
jmp 0x6d4d15
lea r8d, [r10 - 0x30]
cmp r8d, 0x4a
ja 0x6d4d15
movsxd rax, r10d
movsx edx, word [r12 + rax*2 + 0x387db0]
test edx, edx
je 0x6d49e4
mov r10d, edx
jmp 0x6d4d15
cmp r8d, 0x48
ja case.0x6d4a05.6
movsxd rax, r8d
movzx eax, byte [r12 + rax + 0x2d4d50]
mov ecx, dword [r12 + rax*4 + 0x2d4d34]
add rcx, r12
jmp rcx
mov dword [rbx], 0x25
jmp 0x6d4d15
movzx eax, byte [r11 + 1]
cmp al, 0x3c
je 0x6d4b31
cmp al, 0x27
je 0x6d4b31
mov edx, 1
cmp al, 0x7b
jne 0x6d4a7e
movzx eax, byte [r11 + 2]
lea rcx, [r11 + 2]
test al, al
je 0x6d4a60
nop dword [rax]
cmp al, 0x7d
je 0x6d4a68
cmp al, 0x2d
je 0x6d4a56
movzx eax, al
test byte [rax + r12 + 0x388960], 4
je 0x6d4a68
mov al, byte [rcx + 1]
inc rcx
test al, al
jne 0x6d4a40
mov r8d, edx
inc r11
jmp 0x6d4a81
movzx eax, byte [rcx]
test al, al
je 0x6d4a60
cmp al, 0x7d
je 0x6d4a60
mov r10d, 0xffffffe4
jmp 0x6d4d15
xor r8d, r8d
cmp byte [r11 + 1], 0x2d
jne 0x6d4a8d
inc r11
jmp 0x6d4a8f
xor edx, edx
movzx eax, byte [r11 + 1]
lea rcx, [r11 + 1]
xor r10d, r10d
test byte [rax + r12 + 0x388960], 4
je 0x6d4add
nop word [rax + rax]
mov r11, rcx
lea ecx, [r10 + r10*4]
movzx eax, byte [r11]
lea r10d, [rax + rcx*2 - 0x30]
movzx eax, byte [r11 + 1]
lea rcx, [r11 + 1]
test byte [rax + r12 + 0x388960], 4
jne 0x6d4ab0
test r10d, r10d
js 0x6d4b89
test r8d, r8d
je 0x6d4af6
inc r11
cmp byte [r11], 0x7d
je 0x6d4af6
mov dword [rbx], reloc.WS2_32.dll_gethostname
jmp 0x6d4d15
test r10d, r10d
jne 0x6d4b06
mov dword [rbx], 0x3a
jmp 0x6d4d15
test edx, edx
je 0x6d4b21
cmp r10d, edi
jle 0x6d4b1a
mov dword [rbx], reloc.WS2_32.dll_ntohs
jmp 0x6d4d15
sub edi, r10d
lea r10d, [rdi + 1]
mov eax, 0xffffffe3
sub eax, r10d
mov r10d, eax
jmp 0x6d4d15
mov r10d, 0xffffffe5
jmp 0x6d4d15
cmp dword [rsp + 0x30], 0
jne 0x6d4ba2
movzx eax, byte [r11 + 1]
lea rcx, [r11 + 1]
mov r9, r11
test byte [rax + r12 + 0x388960], 4
mov r10d, r8d
je 0x6d4b84
nop dword [rax]
mov r11, rcx
lea ecx, [r10 + r10*4]
movzx eax, byte [r11]
lea r10d, [rax + rcx*2 - 0x30]
movzx eax, byte [r11 + 1]
lea rcx, [r11 + 1]
test byte [rax + r12 + 0x388960], 4
jne 0x6d4b60
test r10d, r10d
jns 0x6d4b94
mov dword [rbx], 0x3d
jmp 0x6d4d15
cmp r10d, 0xa
jl 0x6d4b21
cmp r10d, edi
jle 0x6d4b21
mov r11, r9
movzx r10d, byte [r11]
cmp r10d, 0x38
jl case.0x6d4a05.0
dec r11
xor r10d, r10d
jmp 0x6d4d15
sub r10d, 0x30
nop dword [rax + rax]
movzx eax, byte [r11 + 1]
lea rcx, [r11 + 1]
inc edx
cmp al, 0x30
jb 0x6d4be3
cmp al, 0x37
ja 0x6d4be3
cmp edx, 2
movzx eax, al
mov r11, rcx
lea r10d, [rax + r10*8 - 0x30]
jl 0x6d4bc0
test esi, esi
jne 0x6d4d15
cmp r10d, 0xff
jle 0x6d4d15
mov dword [rbx], reloc.WS2_32.dll_gethostbyaddr
jmp 0x6d4d15
cmp byte [r11 + 1], 0x7b
mov edi, gethostbyname
jne 0x6d4c98
movzx eax, byte [r11 + 2]
lea r8, [r11 + 2]
xor r9d, r9d
xor r10d, r10d
test byte [rax + r12 + 0x388960], 8
je 0x6d4c6e
nop dword [rax]
inc r8
movzx ecx, al
test r10d, r10d
jne 0x6d4c3f
cmp ecx, edi
je 0x6d4c5f
inc r9d
cmp ecx, 0x61
jl 0x6d4c4a
sub ecx, 0x20
cmp ecx, 0x41
mov eax, gethostname
cmovl eax, edi
shl r10d, 4
sub r10d, eax
add r10d, ecx
movzx eax, byte [r8]
test byte [rax + r12 + 0x388960], 8
jne 0x6d4c30
cmp byte [r8], 0x7d
jne 0x6d4c98
test r10d, r10d
js 0x6d4c8d
test esi, esi
mov eax, 2
mov ecx, 8
cmovne eax, ecx
cmp r9d, eax
jle 0x6d4c93
mov dword [rbx], 0x22
mov r11, r8
jmp 0x6d4d15
xor r10d, r10d
nop dword [rax + rax]
movzx eax, byte [r11 + 1]
lea rcx, [r11 + 1]
inc edx
test byte [rax + r12 + 0x388960], 8
je 0x6d4d15
mov r11, rcx
movzx ecx, byte [rcx]
cmp ecx, 0x61
jl 0x6d4cc4
sub ecx, 0x20
cmp ecx, 0x41
mov eax, gethostname
cmovl eax, edi
shl r10d, 4
sub r10d, eax
add r10d, ecx
cmp edx, 2
jl 0x6d4ca0
jmp 0x6d4d15
movzx r10d, byte [r11 + 1]
inc r11
test r10d, r10d
jne 0x6d4cf6
mov eax, 2
mov dword [rbx], eax
jmp 0x6d4d15
lea eax, [r10 - 0x61]
cmp eax, 0x19
ja 0x6d4d03
sub r10d, 0x20
xor r10d, 0x40
jmp 0x6d4d15
test r9b, 0x40
je 0x6d4d15
mov dword [rbx], 3
mov rbx, qword [rsp + 0x10]
mov rsi, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov qword [rbp], r11
mov rbp, qword [rsp + 0x18]
mov eax, r10d
pop r12
ret