Function at 0x7ffbf15328f0
Capabilities:
Encode data using base64

Disassembly:
push rsi
push r13
push r14
sub rsp, 0x30
mov r10, qword [rcx]
mov qword [rsp + 0x58], rbp
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x28], r12
mov r12d, dword [rsp + 0x70]
mov r11, r8
movzx r8d, byte [r10 + 1]
mov edi, r12d
xor esi, esi
shr edi, 0xb
add r10, 2
mov ebp, r9d
and edi, 1
mov r14, rdx
mov r13, rcx
je 0x7ffbf1532a1e
cmp r8d, 0xc0
jb 0x7ffbf1532a1e
test r8b, 0x20
jne 0x7ffbf1532964
movzx eax, byte [r10]
and r8d, 0x1f
and eax, 0x3f
shl r8d, 6
or r8d, eax
inc r10
jmp 0x7ffbf1532a1e
test r8b, 0x10
jne 0x7ffbf1532997
movzx ecx, byte [r10]
movzx eax, byte [r10 + 1]
and r8d, 0xf
and eax, 0x3f
and ecx, 0x3f
shl ecx, 6
or ecx, eax
mov eax, r8d
shl eax, 0xc
mov r8d, ecx
or r8d, eax
add r10, 2
jmp 0x7ffbf1532a1e
movzx eax, byte [r10]
movzx ecx, byte [r10 + 1]
and eax, 0x3f
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [r10 + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
test r8b, 8
jne 0x7ffbf15329d4
and r8d, 7
mov eax, r8d
mov r8d, ecx
shl eax, 0x12
or r8d, eax
add r10, 3
jmp 0x7ffbf1532a1e
movzx eax, byte [r10 + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
test r8b, 4
jne 0x7ffbf15329fd
and r8d, 3
mov eax, r8d
mov r8d, ecx
shl eax, 0x18
or r8d, eax
add r10, 4
jmp 0x7ffbf1532a1e
movzx eax, byte [r10 + 4]
and r8d, 1
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov eax, r8d
shl eax, 0x1e
mov r8d, ecx
or r8d, eax
add r10, 5
dec r10
test r8d, r8d
jne 0x7ffbf1532a34
mov r9d, 1
mov dword [r11], r9d
jmp 0x7ffbf15330a1
lea ecx, [r8 - 0x30]
cmp ecx, 0x4a
ja 0x7ffbf15330a1
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x20], r15
lea r15, [0x7ffbf1530000]
movsx edx, word [r15 + rcx*2 + 0x7c520]
test edx, edx
je 0x7ffbf1532a70
jle 0x7ffbf1532a69
mov r8d, edx
jmp 0x7ffbf1533097
mov esi, edx
jmp 0x7ffbf1532c9a
cmp ecx, 0x48
ja case.0x7ffbf1532a8d.9
movzx eax, byte [r15 + rcx + 0x3100]
mov ecx, dword [r15 + rax*4 + 0x30d8]
add rcx, r15
jmp rcx
bt r12d, 0x19
jae case.0x7ffbf1532a8d.2
movzx eax, byte [r10 + 1]
test byte [rax + r15 + 0x7d540], 8
je 0x7ffbf1533097
movzx eax, byte [r10 + 2]
test byte [rax + r15 + 0x7d540], 8
je 0x7ffbf1533097
movzx eax, byte [r10 + 3]
test byte [rax + r15 + 0x7d540], 8
je 0x7ffbf1533097
movzx eax, byte [r10 + 4]
test byte [rax + r15 + 0x7d540], 8
je 0x7ffbf1533097
mov edx, 4
mov r8d, esi
lea r9d, [rdx + 0x2c]
nop word [rax + rax]
movzx ecx, byte [r10 + 1]
inc r10
cmp ecx, 0x61
jb 0x7ffbf1532b10
add ecx, 0xffffffe0
cmp ecx, 0x41
mov eax, 0x37
cmovb eax, r9d
shl r8d, 4
sub r8d, eax
add r8d, ecx
dec rdx
jne 0x7ffbf1532b00
test edi, edi
mov edx, 0xff
mov ebx, 0x10ffff
cmovne edx, ebx
cmp r8d, edx
jbe 0x7ffbf1532f9f
mov dword [r11], 0x4c
jmp 0x7ffbf1533097
bt r12d, 0x19
jb 0x7ffbf1533097
mov dword [r11], 0x25
jmp 0x7ffbf1533097
cmp dword [rsp + 0x78], esi
jne 0x7ffbf1533097
movzx eax, byte [r10 + 1]
cmp al, 0x3c
je 0x7ffbf1532ccd
cmp al, 0x27
je 0x7ffbf1532ccd
mov r9d, 1
cmp al, 0x7b
jne 0x7ffbf1532bd8
movzx eax, byte [r10 + 2]
lea rcx, [r10 + 2]
test al, al
je 0x7ffbf1532bbb
nop dword [rax]
cmp al, 0x7d
je 0x7ffbf1532bc3
cmp al, 0x2d
je 0x7ffbf1532bb0
cmp al, 0x30
jb 0x7ffbf1532bc3
cmp al, 0x39
ja 0x7ffbf1532bc3
movzx eax, byte [rcx + 1]
inc rcx
test al, al
jne 0x7ffbf1532ba0
mov ebx, r9d
inc r10
jmp 0x7ffbf1532bda
movzx eax, byte [rcx]
test al, al
je 0x7ffbf1532bbb
cmp al, 0x7d
je 0x7ffbf1532bbb
mov esi, 0x1c
jmp 0x7ffbf1533097
mov ebx, esi
cmp byte [r10 + 1], 0x2d
jne 0x7ffbf1532be6
inc r10
jmp 0x7ffbf1532be9
mov r9d, esi
movzx ecx, byte [r10 + 1]
lea rdx, [r10 + 1]
mov eax, esi
cmp cl, 0x30
jb 0x7ffbf1532c24
nop dword [rax]
cmp cl, 0x39
ja 0x7ffbf1532c24
cmp eax, 0xccccccb
jg 0x7ffbf1532c3d
lea ecx, [rax + rax*4]
movzx eax, byte [rdx]
mov r10, rdx
inc rdx
lea eax, [rax + rcx*2 - 0x30]
movzx ecx, byte [rdx]
cmp cl, 0x30
jae 0x7ffbf1532c00
test ebx, ebx
je 0x7ffbf1532c6e
inc r10
cmp byte [r10], 0x7d
je 0x7ffbf1532c6e
mov dword [r11], 0x39
jmp 0x7ffbf1533097
movzx eax, byte [r10 + 1]
lea rcx, [r10 + 1]
cmp al, 0x30
jb 0x7ffbf1532c62
nop word [rax + rax]
cmp al, 0x39
ja 0x7ffbf1532c62
movzx eax, byte [rcx + 1]
mov r10, rcx
inc rcx
cmp al, 0x30
jae 0x7ffbf1532c50
mov dword [r11], 0x3d
jmp 0x7ffbf1533097
test eax, eax
jne 0x7ffbf1532c7e
mov dword [r11], 0x3a
jmp 0x7ffbf1533097
test r9d, r9d
je 0x7ffbf1532c98
cmp eax, ebp
jle 0x7ffbf1532c93
mov dword [r11], 0xf
jmp 0x7ffbf1533097
sub ebp, eax
lea eax, [rbp + 1]
mov esi, eax
neg esi
cmp esi, 0xc
jne 0x7ffbf1533097
cmp byte [r10 + 1], 0x7b
jne 0x7ffbf1533097
lea rcx, [r10 + 2]
call fcn.7ffbf1532880
test eax, eax
jne 0x7ffbf1533097
mov dword [r11], 0x25
jmp 0x7ffbf1533097
mov esi, 0x1b
jmp 0x7ffbf1533097
cmp dword [rsp + 0x78], esi
jne 0x7ffbf1532d30
movzx ecx, byte [r10 + 1]
lea r9, [r10 + 1]
mov rbx, r10
lea eax, [r8 - 0x30]
cmp cl, 0x30
jb 0x7ffbf1532d1c
cmp cl, 0x39
ja 0x7ffbf1532d1c
cmp eax, 0xccccccb
jg 0x7ffbf1532d95
lea ecx, [rax + rax*4]
movzx eax, byte [r9]
mov r10, r9
inc r9
lea eax, [rax + rcx*2 - 0x30]
movzx ecx, byte [r9]
cmp cl, 0x30
jae 0x7ffbf1532cf2
cmp eax, 8
jl 0x7ffbf1532c98
cmp eax, ebp
jle 0x7ffbf1532c98
mov r10, rbx
movzx r8d, byte [r10]
cmp r8d, 0x38
jae 0x7ffbf1533097
add r8d, 0xffffffd0
nop word [rax + rax]
movzx eax, byte [r10 + 1]
lea rcx, [r10 + 1]
inc edx
cmp al, 0x30
jb 0x7ffbf1532d73
cmp al, 0x37
ja 0x7ffbf1532d73
movzx eax, al
mov r10, rcx
lea r8d, [rax + r8*8 - 0x30]
cmp edx, 2
jl 0x7ffbf1532d50
test edi, edi
jne 0x7ffbf1533097
mov edx, 0xff
cmp r8d, edx
jbe 0x7ffbf1533097
mov dword [r11], 0x33
jmp 0x7ffbf1533097
movzx eax, byte [r10 + 1]
lea rcx, [r10 + 1]
cmp al, 0x30
jb 0x7ffbf1532db4
cmp al, 0x39
ja 0x7ffbf1532db4
movzx eax, byte [rcx + 1]
mov r10, rcx
inc rcx
cmp al, 0x30
jae 0x7ffbf1532da2
mov dword [r11], 0x3d
jmp 0x7ffbf1533097
cmp byte [r10 + 1], 0x7b
je 0x7ffbf1532dd3
mov dword [r11], 0x51
jmp 0x7ffbf1533097
cmp byte [r10 + 2], 0x7d
lea rax, [r10 + 2]
jne 0x7ffbf1532dea
mov dword [r11], 0x56
jmp 0x7ffbf1533097
mov r10, rax
movzx eax, byte [rax]
mov r8d, esi
cmp al, 0x30
jb 0x7ffbf1532e2e
mov edx, 0xff
mov ebx, 0x10ffff
cmp al, 0x37
ja 0x7ffbf1532e2e
inc r10
movzx ecx, al
test r8d, r8d
jne 0x7ffbf1532e15
cmp ecx, 0x30
je 0x7ffbf1532e26
test edi, edi
mov eax, edx
lea r8d, [rcx + r8*8 - 0x30]
cmovne eax, ebx
cmp r8d, eax
ja 0x7ffbf1532e5a
movzx eax, byte [r10]
cmp al, 0x30
jae 0x7ffbf1532e01
cmp byte [r10], 0x7d
jne 0x7ffbf1532e7e
test edi, edi
je 0x7ffbf1533097
lea eax, [r8 - 0xd800]
cmp eax, 0x7ff
ja 0x7ffbf1533097
mov dword [r11], 0x49
jmp 0x7ffbf1533097
movzx eax, byte [r10]
cmp al, 0x30
jb 0x7ffbf1532e72
cmp al, 0x37
ja 0x7ffbf1532e72
movzx eax, byte [r10 + 1]
inc r10
cmp al, 0x30
jae 0x7ffbf1532e62
mov dword [r11], 0x22
jmp 0x7ffbf1533097
mov dword [r11], 0x50
jmp 0x7ffbf1533097
bt r12d, 0x19
jae 0x7ffbf1532f00
movzx eax, byte [r10 + 1]
test byte [rax + r15 + 0x7d540], 8
je 0x7ffbf1533097
movzx eax, byte [r10 + 2]
test byte [rax + r15 + 0x7d540], 8
je 0x7ffbf1533097
mov edx, 2
mov r8d, esi
lea r9d, [rdx + 0x2e]
nop word [rax + rax]
movzx ecx, byte [r10 + 1]
inc r10
cmp ecx, 0x61
jb 0x7ffbf1532ee0
add ecx, 0xffffffe0
cmp ecx, 0x41
mov eax, 0x37
cmovb eax, r9d
shl r8d, 4
sub r8d, eax
add r8d, ecx
dec rdx
jne 0x7ffbf1532ed0
jmp 0x7ffbf1533097
cmp byte [r10 + 1], 0x7b
jne 0x7ffbf1532fff
movzx ecx, byte [r10 + 2]
add r10, 2
cmp cl, 0x7d
jne 0x7ffbf1532f25
mov dword [r11], 0x56
jmp 0x7ffbf1533097
movzx eax, cl
mov r8d, esi
test byte [rax + r15 + 0x7d540], 8
je 0x7ffbf1532f99
mov edx, 0xff
mov ebx, 0x10ffff
mov r9d, 0x30
nop word [rax + rax]
inc r10
movzx ecx, cl
test r8d, r8d
jne 0x7ffbf1532f60
cmp ecx, r9d
je 0x7ffbf1532f8a
cmp ecx, 0x61
jb 0x7ffbf1532f68
add ecx, 0xffffffe0
cmp ecx, 0x41
mov eax, 0x37
cmovb eax, r9d
shl r8d, 4
sub r8d, eax
mov eax, edx
add r8d, ecx
test edi, edi
cmovne eax, ebx
cmp r8d, eax
ja 0x7ffbf1532fc5
movzx ecx, byte [r10]
test byte [rcx + r15 + 0x7d540], 8
jne 0x7ffbf1532f50
cmp byte [r10], 0x7d
jne 0x7ffbf1532ff3
test edi, edi
je 0x7ffbf1533097
lea eax, [r8 - 0xd800]
cmp eax, 0x7ff
ja 0x7ffbf1533097
mov dword [r11], 0x49
jmp 0x7ffbf1533097
movzx eax, byte [r10]
test byte [rax + r15 + 0x7d540], 8
je 0x7ffbf1532fe7
movzx eax, byte [r10 + 1]
inc r10
test byte [rax + r15 + 0x7d540], 8
jne 0x7ffbf1532fd4
mov dword [r11], 0x22
jmp 0x7ffbf1533097
mov dword [r11], 0x4f
jmp 0x7ffbf1533097
mov r8d, esi
mov r9d, 0x30
nop dword [rax + rax]
movzx eax, byte [r10 + 1]
lea rcx, [r10 + 1]
inc edx
test byte [rax + r15 + 0x7d540], 8
je 0x7ffbf1533097
mov r10, rcx
movzx ecx, byte [rcx]
cmp ecx, 0x61
jb 0x7ffbf1533034
add ecx, 0xffffffe0
cmp ecx, 0x41
mov eax, 0x37
cmovb eax, r9d
shl r8d, 4
sub r8d, eax
add r8d, ecx
cmp edx, 2
jl 0x7ffbf1533010
jmp 0x7ffbf1533097
movzx r8d, byte [r10 + 1]
inc r10
test r8d, r8d
jne 0x7ffbf1533068
mov edx, 2
mov dword [r11], edx
jmp 0x7ffbf1533097
cmp r8d, 0x7f
jbe 0x7ffbf1533077
mov dword [r11], 0x44
jmp 0x7ffbf1533097
lea eax, [r8 - 0x61]
cmp eax, 0x19
ja 0x7ffbf1533084
add r8d, 0xffffffe0
xor r8d, 0x40
jmp 0x7ffbf1533097
test r12b, 0x40
je 0x7ffbf1533097
mov dword [r11], 3
mov rbx, qword [rsp + 0x50]
mov r15, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x58]
bt r12d, 0x1d
mov r12, qword [rsp + 0x28]
jae 0x7ffbf15330c2
lea ecx, [rsi - 6]
cmp ecx, 5
ja 0x7ffbf15330c2
add esi, 0x17
mov qword [r13], r10
mov eax, esi
mov dword [r14], r8d
add rsp, 0x30
pop r14
pop r13
pop rsi
ret