Function at 0x1400a12e0
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov r15d, dword [rsp + 0x88]
lea r10d, [rdx + 2]
mov eax, 0xaaaaaaab
imul rax, r10
shr rax, 0x20
add eax, eax
and eax, 0xfffffffc
cmp r15d, 2
je 0x1400a1328
lea r14d, [rax + 0x3f]
shr r14d, 6
cmp r15d, 1
jne 0x1400a132b
lea r14d, [r14 + r14*2]
jmp 0x1400a132b
xor r14d, r14d
mov r10d, 0xffffff53
test r9, r9
je 0x1400a1bec
add r14d, eax
test r8, r8
je 0x1400a134b
cmp r14d, dword [r9]
ja 0x1400a1bec
xor esi, esi
cmp edx, 3
mov qword [rsp], r9
jb 0x1400a138d
mov qword [rsp + 0x18], r14
lea eax, [rdx - 3]
mov r10d, 0xaaaaaaab
imul r10, rax
shr r10, 0x21
lea eax, [r10 + r10*2]
add eax, 3
mov qword [rsp + 8], rax
mov dword [rsp + 0x14], 0
mov r14d, 1
xor esi, esi
jmp 0x1400a1450
xor r11d, r11d
test edx, edx
je 0x1400a1a66
mov r12, r14
xor ebx, ebx
mov eax, r11d
movzx r14d, byte [rcx + rax]
cmp edx, 2
jne 0x1400a13b2
inc r11d
movzx ebx, byte [rcx + r11]
mov eax, r14d
shr eax, 2
lea rcx, [0x140184190]
movzx eax, byte [rax + rcx]
mov edi, 1
mov bpl, 1
cmp r15d, 1
jne 0x1400a19a2
movsx r10d, al
cmp r10d, 0xa
je 0x1400a1afe
cmp r10d, 0x3d
je 0x1400a1b13
cmp r10d, 0x2b
jne 0x1400a19a2
mov edi, 3
xor r10d, r10d
xor r11d, r11d
jmp 0x1400a19a8
test r8, r8
je 0x1400a199b
lea r9d, [rsi + 1]
mov r10d, esi
mov byte [r8 + r10], 0x25
add esi, 2
mov byte [r8 + r9], gethostbyname
mov r10b, 0x41
mov r9d, esi
mov byte [r8 + r9], r10b
mov esi, eax
mov r9, qword [rsp]
nop word cs:[rax + rax]
add edx, 0xfffffffd
add r14, 3
cmp edx, 2
jbe 0x1400a1a59
movzx edi, byte [rcx + r14 - 1]
mov eax, edi
shr eax, 2
lea r9, [0x140184190]
movzx ebx, byte [rax + r9]
mov ebp, 1
mov r9b, 1
cmp r15d, 1
jne 0x1400a14a0
movsx eax, bl
cmp eax, 0xa
je 0x1400a153d
cmp eax, 0x3d
je 0x1400a1552
cmp eax, 0x2b
jne 0x1400a14a0
mov ebp, 3
xor eax, eax
xor r11d, r11d
jmp 0x1400a14a5
mov al, 1
mov r11b, 1
mov r10b, 1
mov r12d, r14d
lea r15d, [r14 + 1]
movzx r13d, byte [rcx + r12]
movzx r12d, byte [rcx + r15]
test r8, r8
je 0x1400a14cd
add ebp, esi
mov r15, qword [rsp]
cmp ebp, dword [r15]
ja 0x1400a19e7
test al, al
je 0x1400a14f0
lea ebp, [rsi + 1]
test r8, r8
mov r9, qword [rsp]
je 0x1400a1586
mov eax, esi
mov byte [r8 + rax], bl
jmp 0x1400a1586
test r8, r8
je 0x1400a1523
lea ebp, [rsi + 1]
mov eax, esi
mov byte [r8 + rax], 0x25
test r11b, r11b
je 0x1400a1528
test r10b, r10b
je 0x1400a1564
test r9b, r9b
jne 0x1400a1582
lea eax, [rsi + 2]
mov r9d, ebp
mov byte [r8 + r9], gethostbyname
add esi, 3
mov byte [r8 + rax], 0x41
jmp 0x1400a1580
add esi, 3
jmp 0x1400a1580
lea eax, [rsi + 2]
mov r9d, ebp
mov byte [r8 + r9], gethostbyname
add esi, 3
mov byte [r8 + rax], 0x42
jmp 0x1400a1580
mov ebp, 3
xor eax, eax
mov r11b, 1
mov r10b, 1
xor r9d, r9d
jmp 0x1400a14a8
mov ebp, 3
xor eax, eax
mov r11b, 1
xor r10d, r10d
jmp 0x1400a14a8
lea eax, [rsi + 2]
mov r9d, ebp
mov byte [r8 + r9], gethostbyname
add esi, 3
mov byte [r8 + rax], 0x44
nop word [rax + rax]
mov ebp, esi
mov r9, qword [rsp]
shl edi, 4
and edi, 0x30
mov eax, r13d
shr eax, 4
or eax, edi
mov esi, dword [r9]
lea r10, [0x140184190]
movzx ebx, byte [rax + r10]
mov r15d, 1
mov dil, 1
cmp dword [rsp + 0x88], 1
jne 0x1400a15e0
movsx eax, bl
cmp eax, 0xa
je 0x1400a1679
cmp eax, 0x3d
je 0x1400a168e
cmp eax, 0x2b
jne 0x1400a15e0
mov r15d, 3
xor eax, eax
xor r10d, r10d
jmp 0x1400a15e5
mov al, 1
mov r10b, 1
mov r11b, 1
test r8, r8
je 0x1400a15f9
add r15d, ebp
cmp r15d, esi
ja 0x1400a19f2
test al, al
je 0x1400a1620
lea esi, [rbp + 1]
test r8, r8
je 0x1400a16c2
mov eax, ebp
mov byte [r8 + rax], bl
jmp 0x1400a16c2
test r8, r8
je 0x1400a165b
lea esi, [rbp + 1]
mov eax, ebp
mov byte [r8 + rax], 0x25
test r10b, r10b
je 0x1400a1660
test r11b, r11b
je 0x1400a16a1
test dil, dil
jne 0x1400a16c2
lea eax, [rbp + 2]
mov r9d, esi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add ebp, 3
mov byte [r8 + rax], 0x41
jmp 0x1400a16c0
add ebp, 3
jmp 0x1400a16c0
lea eax, [rbp + 2]
mov r9d, esi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add ebp, 3
mov byte [r8 + rax], 0x42
jmp 0x1400a16c0
mov r15d, 3
xor eax, eax
mov r10b, 1
mov r11b, 1
xor edi, edi
jmp 0x1400a15e8
mov r15d, 3
xor eax, eax
mov r10b, 1
xor r11d, r11d
jmp 0x1400a15e8
lea eax, [rbp + 2]
mov r9d, esi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add ebp, 3
mov byte [r8 + rax], 0x44
nop dword [rax + rax]
mov esi, ebp
and r13d, 0xf
mov eax, r12d
shr eax, 6
lea eax, [rax + r13*4]
mov ebp, dword [r9]
lea r10, [0x140184190]
movzx ebx, byte [rax + r10]
mov r15d, 1
mov dil, 1
cmp dword [rsp + 0x88], 1
jne 0x1400a1720
movsx eax, bl
cmp eax, 0xa
je 0x1400a17be
cmp eax, 0x3d
je 0x1400a17d3
cmp eax, 0x2b
jne 0x1400a1720
mov r15d, 3
xor eax, eax
xor r10d, r10d
jmp 0x1400a1725
mov al, 1
mov r10b, 1
mov r11b, 1
test r8, r8
je 0x1400a1739
add r15d, esi
cmp r15d, ebp
ja 0x1400a19b7
test al, al
je 0x1400a1760
lea r13d, [rsi + 1]
test r8, r8
mov r15d, dword [rsp + 0x88]
je 0x1400a1803
mov eax, esi
mov byte [r8 + rax], bl
jmp 0x1400a1803
test r8, r8
mov r15d, dword [rsp + 0x88]
je 0x1400a17a0
lea r13d, [rsi + 1]
mov eax, esi
mov byte [r8 + rax], 0x25
test r10b, r10b
je 0x1400a17a5
test r11b, r11b
je 0x1400a17e6
test dil, dil
jne 0x1400a1803
lea eax, [rsi + 2]
mov r9d, r13d
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add esi, 3
mov byte [r8 + rax], 0x41
jmp 0x1400a1800
add esi, 3
jmp 0x1400a1800
lea eax, [rsi + 2]
mov r9d, r13d
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add esi, 3
mov byte [r8 + rax], 0x42
jmp 0x1400a1800
mov r15d, 3
xor eax, eax
mov r10b, 1
mov r11b, 1
xor edi, edi
jmp 0x1400a1728
mov r15d, 3
xor eax, eax
mov r10b, 1
xor r11d, r11d
jmp 0x1400a1728
lea eax, [rsi + 2]
mov r9d, r13d
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add esi, 3
mov byte [r8 + rax], 0x44
nop dword [rax]
mov r13d, esi
and r12d, 0x3f
mov esi, dword [r9]
lea rax, [0x140184190]
movzx ebx, byte [r12 + rax]
mov ebp, 1
mov dil, 1
cmp r15d, 1
jne 0x1400a1850
movsx eax, bl
cmp eax, 0xa
je 0x1400a18f0
cmp eax, 0x3d
je 0x1400a1904
cmp eax, 0x2b
jne 0x1400a1850
mov ebp, 3
xor eax, eax
xor r10d, r10d
jmp 0x1400a1855
mov al, 1
mov r10b, 1
mov r11b, 1
test r8, r8
je 0x1400a1868
add ebp, r13d
cmp ebp, esi
ja 0x1400a19fb
test al, al
je 0x1400a1890
lea esi, [r13 + 1]
test r8, r8
je 0x1400a1933
mov eax, r13d
mov byte [r8 + rax], bl
jmp 0x1400a1933
test r8, r8
je 0x1400a18cf
lea esi, [r13 + 1]
mov eax, r13d
mov byte [r8 + rax], 0x25
test r10b, r10b
je 0x1400a18d5
test r11b, r11b
je 0x1400a1916
test dil, dil
jne 0x1400a1933
lea eax, [r13 + 2]
mov r9d, esi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add r13d, 3
mov byte [r8 + rax], 0x41
jmp 0x1400a1930
add r13d, 3
jmp 0x1400a1930
lea eax, [r13 + 2]
mov r9d, esi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add r13d, 3
mov byte [r8 + rax], 0x42
jmp 0x1400a1930
mov ebp, 3
xor eax, eax
mov r10b, 1
mov r11b, 1
xor edi, edi
jmp 0x1400a1858
mov ebp, 3
xor eax, eax
mov r10b, 1
xor r11d, r11d
jmp 0x1400a1858
lea eax, [r13 + 2]
mov r9d, esi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add r13d, 3
mov byte [r8 + rax], 0x44
nop
mov esi, r13d
mov r11, qword [rsp + 8]
cmp r15d, 2
je 0x1400a1440
mov eax, dword [rsp + 0x14]
inc eax
mov dword [rsp + 0x14], eax
test al, 0xf
jne 0x1400a1440
cmp edx, 3
je 0x1400a1440
mov r10d, dword [r9]
cmp r15d, 1
jne 0x1400a197d
lea eax, [rsi + 3]
test r8, r8
je 0x1400a1407
cmp eax, r10d
jbe 0x1400a1407
jmp 0x1400a19b7
lea eax, [rsi + 1]
test r8, r8
je 0x1400a198a
cmp eax, r10d
ja 0x1400a19b7
mov r10b, 0xa
test r8, r8
jne 0x1400a1427
jmp 0x1400a142e
mov esi, eax
jmp 0x1400a1440
mov r10b, 1
mov r11b, 1
mov r15b, 1
test r8, r8
je 0x1400a19be
add edi, esi
cmp edi, dword [r9]
jbe 0x1400a19be
xor edx, edx
jmp 0x1400a1bce
test r10b, r10b
je 0x1400a1a05
lea edi, [rsi + 1]
test r8, r8
mov r15d, dword [rsp + 0x88]
je 0x1400a1b65
mov r9d, esi
mov byte [r8 + r9], al
mov r9, qword [rsp]
jmp 0x1400a1b65
xor edx, edx
mov r9, qword [rsp]
jmp 0x1400a1bce
xor edx, edx
mov esi, ebp
jmp 0x1400a1bce
xor edx, edx
mov esi, r13d
jmp 0x1400a1bce
test r8, r8
je 0x1400a1b26
lea edi, [rsi + 1]
mov eax, esi
mov byte [r8 + rax], 0x25
test r11b, r11b
je 0x1400a1b2b
test r15b, r15b
je 0x1400a1b44
test bpl, bpl
mov r15d, dword [rsp + 0x88]
jne 0x1400a1b65
lea eax, [rsi + 2]
mov r9d, edi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add esi, 3
mov byte [r8 + rax], 0x41
mov edi, esi
jmp 0x1400a1b65
mov r14, qword [rsp + 0x18]
test edx, edx
jne 0x1400a1398
cmp r15d, 2
jne 0x1400a1a85
mov r10d, 0xffffff66
cmp esi, r14d
jne 0x1400a1bec
test r8, r8
jne 0x1400a1af1
jmp 0x1400a1efd
mov eax, dword [r9]
cmp r15d, 1
jne 0x1400a1ac2
lea r14d, [rsi + 3]
test r8, r8
je 0x1400a1aa0
cmp r14d, eax
ja 0x1400a19b7
test r8, r8
je 0x1400a1efd
lea eax, [rsi + 1]
mov ecx, esi
mov byte [r8 + rcx], 0x25
add esi, 2
mov byte [r8 + rax], gethostbyname
mov byte [r8 + rsi], 0x41
jmp 0x1400a1af1
lea ecx, [rsi + 1]
test r8, r8
je 0x1400a1ad2
cmp ecx, eax
ja 0x1400a19b7
test r8, r8
je 0x1400a1cd0
mov eax, esi
mov byte [r8 + rax], 0xa
mov r10d, 0xffffff66
cmp ecx, r14d
jne 0x1400a1bec
mov dl, 1
xor r10d, r10d
mov esi, r14d
jmp 0x1400a1bd4
mov edi, 3
xor r10d, r10d
mov r11b, 1
mov r15b, 1
xor ebp, ebp
jmp 0x1400a19ab
mov edi, 3
xor r10d, r10d
mov r11b, 1
xor r15d, r15d
jmp 0x1400a19ab
add esi, 3
jmp 0x1400a1b5b
lea eax, [rsi + 2]
mov r9d, edi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add esi, 3
mov byte [r8 + rax], 0x42
jmp 0x1400a1b5b
lea eax, [rsi + 2]
mov r9d, edi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add esi, 3
mov byte [r8 + rax], 0x44
mov edi, esi
mov r15d, dword [rsp + 0x88]
shl r14b, 4
and r14b, 0x30
mov eax, ebx
shr eax, 4
or al, r14b
movzx eax, al
movzx eax, byte [rax + rcx]
mov esi, 1
mov bpl, 1
cmp r15d, 1
jne 0x1400a1bb5
movsx r10d, al
cmp r10d, 0xa
je 0x1400a1c77
cmp r10d, 0x3d
je 0x1400a1c8c
cmp r10d, 0x2b
jne 0x1400a1bb5
mov esi, 3
xor r10d, r10d
xor r11d, r11d
jmp 0x1400a1bbb
mov r10b, 1
mov r11b, 1
mov r14b, 1
test r8, r8
je 0x1400a1c00
add esi, edi
cmp esi, dword [r9]
jbe 0x1400a1c00
xor edx, edx
mov esi, edi
mov r10d, 0xffffff7c
cmp dword [r9], esi
jbe 0x1400a1be0
mov eax, esi
mov byte [r8 + rax], 0
mov dword [r9], esi
xor eax, eax
test dl, dl
je 0x1400a1bec
mov r10d, eax
mov eax, r10d
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
test r10b, r10b
je 0x1400a1c2a
lea esi, [rdi + 1]
test r8, r8
mov r14, r12
je 0x1400a1c9f
mov r9d, edi
mov byte [r8 + r9], al
mov r9, qword [rsp]
mov r10d, 0xffffff7c
jmp 0x1400a1d00
test r8, r8
je 0x1400a1ca7
lea esi, [rdi + 1]
mov eax, edi
mov byte [r8 + rax], 0x25
test r11b, r11b
mov r10d, 0xffffff7c
je 0x1400a1cb7
test r14b, r14b
je 0x1400a1ce4
test bpl, bpl
mov r14, r12
jne 0x1400a1d00
lea eax, [rdi + 2]
mov r9d, esi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add edi, 3
mov byte [r8 + rax], 0x41
mov esi, edi
jmp 0x1400a1d00
mov esi, 3
xor r10d, r10d
mov r11b, 1
mov r14b, 1
xor ebp, ebp
jmp 0x1400a1bbe
mov esi, 3
xor r10d, r10d
mov r11b, 1
xor r14d, r14d
jmp 0x1400a1bbe
mov r10d, 0xffffff7c
jmp 0x1400a1d00
add edi, 3
mov esi, edi
mov r14, r12
mov r10d, 0xffffff7c
jmp 0x1400a1d00
lea eax, [rdi + 2]
mov r9d, esi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add edi, 3
mov byte [r8 + rax], 0x42
jmp 0x1400a1cfb
mov r10d, 0xffffff66
cmp ecx, r14d
jne 0x1400a1bec
jmp 0x1400a1efd
lea eax, [rdi + 2]
mov r9d, esi
mov byte [r8 + r9], gethostbyname
mov r9, qword [rsp]
add edi, 3
mov byte [r8 + rax], 0x44
mov esi, edi
mov r14, r12
mov edi, dword [r9]
cmp edx, 2
jne 0x1400a1d4a
shl ebx, 2
and ebx, 0x3c
movzx eax, byte [rbx + rcx]
mov ecx, 1
mov dl, 1
cmp r15d, 1
jne 0x1400a1d91
movsx r10d, al
cmp r10d, 0xa
je 0x1400a1e29
cmp r10d, 0x3d
je 0x1400a1e3d
cmp r10d, 0x2b
jne 0x1400a1d91
mov ecx, 3
xor r10d, r10d
xor r11d, r11d
jmp 0x1400a1d97
cmp r15d, 1
jne 0x1400a1dc6
lea ecx, [rsi + 3]
test r8, r8
je 0x1400a1d60
cmp ecx, edi
ja 0x1400a1edb
test r8, r8
je 0x1400a1e4f
lea eax, [rsi + 1]
mov edx, esi
mov byte [r8 + rdx], 0x25
lea edx, [rsi + 2]
mov byte [r8 + rax], gethostbyname
mov byte [r8 + rdx], 0x44
add esi, 6
cmp esi, dword [r9]
jbe 0x1400a1eae
jmp 0x1400a1eee
mov r10b, 1
mov r11b, 1
mov bl, 1
test r8, r8
je 0x1400a1da8
add ecx, esi
cmp ecx, edi
ja 0x1400a19b7
test r10b, r10b
je 0x1400a1df3
lea ecx, [rsi + 1]
test r8, r8
je 0x1400a1dbb
mov edx, esi
mov byte [r8 + rdx], al
mov r10d, 0xffffff7c
jmp 0x1400a1e94
lea ecx, [rsi + 1]
test r8, r8
je 0x1400a1dd6
cmp ecx, edi
ja 0x1400a1edb
test r8, r8
je 0x1400a1e57
mov eax, esi
mov byte [r8 + rax], 0x3d
add esi, 2
cmp esi, dword [r9]
ja 0x1400a1eee
jmp 0x1400a1f13
test r8, r8
je 0x1400a1e5f
lea ecx, [rsi + 1]
mov eax, esi
mov byte [r8 + rax], 0x25
test r11b, r11b
mov r10d, 0xffffff7c
je 0x1400a1e6c
test bl, bl
je 0x1400a1e80
test dl, dl
jne 0x1400a1e94
lea eax, [rsi + 2]
mov ecx, ecx
mov byte [r8 + rcx], gethostbyname
add esi, 3
mov byte [r8 + rax], 0x41
jmp 0x1400a1e92
mov ecx, 3
xor r10d, r10d
mov r11b, 1
mov bl, 1
xor edx, edx
jmp 0x1400a1d99
mov ecx, 3
xor r10d, r10d
mov r11b, 1
xor ebx, ebx
jmp 0x1400a1d99
add esi, 6
jmp 0x1400a1ef7
add esi, 2
jmp 0x1400a1a66
add esi, 3
mov ecx, esi
mov r10d, 0xffffff7c
jmp 0x1400a1e94
lea eax, [rsi + 2]
mov ecx, ecx
mov byte [r8 + rcx], gethostbyname
add esi, 3
mov byte [r8 + rax], 0x42
jmp 0x1400a1e92
lea eax, [rsi + 2]
mov ecx, ecx
mov byte [r8 + rcx], gethostbyname
add esi, 3
mov byte [r8 + rax], 0x44
mov ecx, esi
mov eax, dword [r9]
cmp r15d, 1
jne 0x1400a1ee2
lea esi, [rcx + 3]
test r8, r8
je 0x1400a1ea9
cmp esi, eax
ja 0x1400a1eee
test r8, r8
je 0x1400a1ef7
lea eax, [rcx + 1]
lea edx, [rcx + 2]
lea r14d, [rsi + 3]
mov ecx, ecx
mov byte [r8 + rcx], 0x25
mov byte [r8 + rax], gethostbyname
mov byte [r8 + rdx], 0x44
test r8, r8
je 0x1400a1aa9
cmp r14d, dword [r9]
jbe 0x1400a1aa9
xor edx, edx
jmp 0x1400a1bd4
lea esi, [rcx + 1]
test r8, r8
je 0x1400a1f0a
cmp esi, eax
jbe 0x1400a1f0a
xor edx, edx
mov esi, ecx
jmp 0x1400a1bd4
add esi, 3
mov r14d, esi
mov dword [r9], r14d
mov eax, 0xffffff36
jmp 0x1400a1be9
test r8, r8
je 0x1400a1a66
mov eax, ecx
mov byte [r8 + rax], 0x3d
jmp 0x1400a1a66