Function at 0x1800904d0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x18], r8
push rdi
push r12
push r13
push r14
push r15
lea eax, [rdx + 0x3f]
mov r10d, edx
shr eax, 6
xor r15d, r15d
sub r10d, eax
xor ebx, ebx
inc r10d
mov r13, r9
mov r12, r8
mov r11d, edx
lea eax, [r10 + r10*2]
shr eax, 2
cmp eax, dword [r9]
ja 0x1800909bc
cmp edx, 3
jbe 0x180090597
movzx edx, byte [rbx + rcx]
lea rbp, [0x1800cb3e0]
nop word [rax + rax]
cmp dl, 0x20
jne 0x18009054b
inc ebx
dec r11d
mov eax, r11d
movzx edx, byte [rbx + rcx]
cmp r11d, 1
ja 0x180090530
test eax, eax
je 0x180090597
cmp dl, 0xd
je 0x180090555
cmp dl, 0xa
jne 0x180090583
inc ebx
dec r11d
cmp dl, 0xd
jne 0x180090571
test r11d, r11d
je 0x1800909b5
movzx edx, byte [rbx + rcx]
inc ebx
dec r11d
cmp dl, 0xa
jne 0x1800909b5
test r11d, r11d
je 0x180090597
movzx edx, byte [rbx + rcx]
cmp dl, 0x20
jne 0x1800905b2
add r11d, 0xffffffff
je 0x180090592
inc ebx
jmp 0x18009057f
test r11d, r11d
jne 0x180090583
test r12, r12
je 0x1800905a7
cmp dword [r13], r15d
jbe 0x1800905a7
mov byte [r15 + r12], 0
mov dword [r13], r15d
xor eax, eax
jmp 0x1800909c1
test r11d, r11d
je 0x180090597
movzx esi, byte [rbx + rcx]
lea r8d, [rbx + 1]
test sil, sil
je 0x180090597
lea edx, [r11 - 1]
test edx, edx
je 0x180090644
movzx r9d, byte [r8 + rcx]
cmp edx, 1
jbe 0x1800905ef
cmp r9b, 0x20
jne 0x1800905ef
inc r8d
dec edx
movzx r9d, byte [r8 + rcx]
cmp edx, 1
ja 0x1800905d6
test edx, edx
je 0x180090644
cmp r9b, 0xd
je 0x1800905fb
cmp r9b, 0xa
jne 0x180090630
inc r8d
dec edx
cmp r9b, 0xd
jne 0x180090618
test edx, edx
je 0x1800909b5
movzx r9d, byte [r8 + rcx]
inc r8d
dec edx
cmp r9b, 0xa
jne 0x1800909b5
test edx, edx
je 0x180090644
movzx r9d, byte [r8 + rcx]
nop dword [rax + rax]
cmp r9b, 0x20
jne 0x18009064e
add edx, 0xffffffff
je 0x180090640
inc r8d
jmp 0x180090626
test edx, edx
jne 0x180090630
mov eax, 0xffffff7c
jmp 0x1800909c1
test edx, edx
je 0x180090644
movzx r10d, byte [r8 + rcx]
inc r8d
sub edx, 1
je 0x180090644
movzx r9d, byte [r8 + rcx]
cmp edx, 1
jbe 0x180090689
nop dword [rax]
cmp r9b, 0x20
jne 0x180090689
inc r8d
dec edx
movzx r9d, byte [r8 + rcx]
cmp edx, 1
ja 0x180090670
test edx, edx
je 0x180090644
cmp r9b, 0xd
je 0x180090695
cmp r9b, 0xa
jne 0x1800906c5
inc r8d
dec edx
cmp r9b, 0xd
jne 0x1800906b2
test edx, edx
je 0x1800909b5
movzx r9d, byte [r8 + rcx]
inc r8d
dec edx
cmp r9b, 0xa
jne 0x1800909b5
test edx, edx
je 0x180090644
movzx r9d, byte [r8 + rcx]
cmp r9b, 0x20
jne 0x1800906e3
add edx, 0xffffffff
je 0x1800906d5
inc r8d
jmp 0x1800906c0
test edx, edx
jne 0x1800906c5
mov eax, 0xffffff7c
jmp 0x1800909c1
test edx, edx
je 0x180090644
movzx r14d, byte [r8 + rcx]
lea r11d, [rdx - 1]
lea ebx, [r8 + 1]
test r11d, r11d
je 0x180090644
movzx edx, byte [rbx + rcx]
cmp r11d, 1
jbe 0x18009072f
nop dword [rax + rax]
cmp dl, 0x20
jne 0x18009072f
inc ebx
dec r11d
mov eax, r11d
movzx edx, byte [rbx + rcx]
cmp r11d, 1
ja 0x180090710
test eax, eax
je 0x180090644
cmp dl, 0xd
je 0x180090739
cmp dl, 0xa
jne 0x180090770
inc ebx
dec r11d
cmp dl, 0xd
jne 0x180090755
test r11d, r11d
je 0x1800909b5
movzx edx, byte [rbx + rcx]
inc ebx
dec r11d
cmp dl, 0xa
jne 0x1800909b5
test r11d, r11d
je 0x180090644
movzx edx, byte [rbx + rcx]
nop dword [rax + rax]
cmp dl, 0x20
jne 0x180090783
add r11d, 0xffffffff
je 0x180090644
inc ebx
jmp 0x180090767
test r11d, r11d
je 0x180090644
movzx edi, byte [rbx + rcx]
inc ebx
dec r11d
cmp r14b, 0x3d
jne 0x1800907a4
cmp dil, r14b
jne 0x1800909b5
cmp sil, 0x2b
jb 0x1800909b5
cmp r10b, 0x2b
jb 0x1800909b5
cmp r14b, 0x2b
jb 0x1800909b5
cmp dil, 0x2b
jb 0x1800909b5
cmp sil, 0x7a
ja 0x1800909b5
cmp r10b, 0x7a
ja 0x1800909b5
cmp r14b, 0x7a
ja 0x1800909b5
cmp dil, 0x7a
ja 0x1800909b5
xor eax, eax
cmp r14b, 0x3d
setne al
xor edx, edx
inc eax
cmp dil, 0x3d
setne dl
add eax, r15d
add edx, eax
cmp edx, dword [r13]
ja 0x1800909bc
sub sil, 0x2b
sub r10b, 0x2b
movzx r8d, sil
mov r9d, 0x3f
sub r9b, sil
mov edx, r8d
shr r9b, 7
and edx, 0xf
dec r9b
or rdx, 0x40
movzx eax, r9b
and r8d, 0x3f
not al
movzx ebp, byte [rdx + rbp]
and bpl, al
lea rax, [0x1800cb3e0]
movzx eax, byte [r8 + rax]
and al, r9b
movzx r8d, r10b
or bpl, al
mov edx, r8d
and edx, 0xf
and r8d, 0x3f
or rdx, 0x40
mov r9d, 0x3f
sub r9b, r10b
lea r10, [0x1800cb3e0]
shr r9b, 7
dec r9b
movzx esi, byte [rdx + r10]
movzx eax, r9b
not al
and sil, al
movzx eax, byte [r8 + r10]
and al, r9b
or sil, al
cmp r14b, 0x3d
jne 0x1800908ad
xor r10b, r10b
jmp 0x1800908f3
lea eax, [r14 - 0x2b]
mov r9d, 0x3f
sub r9b, al
movzx r8d, al
mov edx, r8d
shr r9b, 7
dec r9b
and edx, 0xf
or rdx, 0x40
movzx eax, r9b
not al
and r8d, 0x3f
movzx r10d, byte [rdx + r10]
and r10b, al
lea rax, [0x1800cb3e0]
movzx eax, byte [r8 + rax]
and al, r9b
or r10b, al
cmp dil, 0x3d
jne 0x1800908fd
xor dl, dl
jmp 0x18009094c
lea eax, [rdi - 0x2b]
mov r9d, 0x3f
sub r9b, al
movzx r8d, al
mov edx, r8d
shr r9b, 7
and edx, 0xf
lea r12, [0x1800cb3e0]
or rdx, 0x40
dec r9b
movzx eax, r9b
and r8d, 0x3f
not al
movzx edx, byte [rdx + r12]
mov r12, qword [rsp + 0x40]
and dl, al
lea rax, [0x1800cb3e0]
movzx eax, byte [r8 + rax]
and al, r9b
or dl, al
cmp bpl, 0xff
je 0x1800909b5
cmp sil, 0xff
je 0x1800909b5
cmp r10b, 0xff
je 0x1800909b5
cmp dl, 0xff
je 0x1800909b5
shl bpl, 2
movzx r8d, r10b
shl r8b, 6
or r8b, dl
movzx edx, sil
shr dl, 4
or dl, bpl
mov byte [r15 + r12], dl
inc r15d
cmp r14b, 0x3d
je 0x18009099b
shr r10b, 2
shl sil, 4
or r10b, sil
mov byte [r15 + r12], r10b
inc r15d
cmp dil, 0x3d
je 0x180090597
mov byte [r15 + r12], r8b
inc r15d
cmp r11d, 3
jmp 0x18009051d
mov eax, 0xffffff66
jmp 0x1800909c1
mov eax, 0xffffff53
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x48]
pop r15
pop r14
pop r13
pop r12
pop rdi
ret