Function at 0x14000d9cf
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x378
mov r13, rdx
mov r12, rcx
movzx eax, byte [rdx + 0x3b8]
test eax, eax
je 0x14000da3a
cmp eax, 3
jne 0x14000f4f2
lea rsi, [r13 + 0x3b0]
movzx eax, byte [r13 + 0x3b0]
lea rdx, [r13 + 0x88]
test eax, eax
je 0x14000da94
mov qword [rsp + 0x130], rdx
cmp eax, 3
je 0x14000e70d
lea rcx, str._async_fn__resumed_after_completion
lea r8, [0x140160f20]
jmp 0x14000f500
mov qword [rsp + 0x128], r8
lea rsi, [r13 + 0x88]
mov r8d, 0x88
mov rcx, rsi
mov rdx, r13
call sub.VCRUNTIME140.dll_memcpy
mov rdx, rsi
lea rsi, [0x1401b341f]
mov qword [r13 + 0x110], rsi
mov qword [r13 + 0x118], 5
lea rax, [r13 + 0x3b0]
mov qword [rsp + 0xe8], rax
mov byte [r13 + 0x3b0], 0
mov eax, 5
jmp 0x14000dab2
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0x128], r8
mov rsi, qword [r13 + 0x110]
mov rax, qword [r13 + 0x118]
mov qword [rsp + 0xc8], rax
lea rbx, [r13 + 0x120]
mov r8d, 0x88
mov rcx, rbx
mov qword [rsp + 0x130], rdx
call sub.VCRUNTIME140.dll_memcpy
movups xmm0, xmmword [0x140160e90]
lea rdx, [rsp + 0x190]
movaps xmmword [rdx + 0x10], xmm0
movups xmm0, xmmword [0x140160e80]
movaps xmmword [rdx], xmm0
mov rcx, rbx
call fcn.14005c92b
test rax, rax
je 0x14000de30
mov rcx, qword [rax + 8]
mov rdx, qword [rax + 0x10]
call fcn.14006c2cc
lea r14, [r13 + 0x1a8]
test rax, rax
je 0x14000de37
mov rdi, rax
mov rbp, rdx
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xe0], r12
mov qword [rsp + 0xc0], r13
lea r8, [0x14021ad78]
mov r9d, 3
mov rcx, rax
call fcn.14007c617
movabs rbx, 0x8000000000000002
test al, al
je 0x14000de46
movups xmm0, xmmword [0x1401b3400]
movups xmmword [rsp + 0xff], xmm0
movups xmm0, xmmword [0x1401b33f1]
movaps xmmword [rsp + 0xf0], xmm0
mov r15d, 1
xor eax, eax
xor ecx, ecx
xor edx, edx
xor r14d, r14d
xor r9d, r9d
xor r10d, r10d
lea r14, [r13 + 0x1a8]
mov qword [r14], 2
xor r14d, r14d
jmp 0x14000e45c
mov qword [rsp + 0x68], r14
lea r8, [rdi + rbp]
xor eax, eax
lea r14, [0x1401b34e8]
cmp rbp, rax
je 0x14000e435
mov r15, rax
movzx ecx, byte [rdi + rax]
inc rax
cmp byte [rcx + r14], 0
jne 0x14000de58
cmp cl, 0x2f
jne 0x14000e435
test r15, r15
je 0x14000e435
lea r13, [rdi + r15]
inc r13
xor r9d, r9d
mov r12, rax
cmp r13, r8
je 0x14000dee4
mov rcx, r13
mov rbx, r12
inc r13
movzx edx, byte [rcx]
inc r12
cmp edx, 0x2b
je 0x14000deb9
cmp edx, 0x3b
jne 0x14000debe
cmp rbx, rax
jbe 0x14000debe
jmp 0x14000df6d
cmp rbx, rax
ja 0x14000deca
cmp byte [rdx + r14], 0
jne 0x14000de91
jmp 0x14000e435
lea r12, [rbx + 1]
inc rcx
mov r9d, 1
mov r13, rcx
mov qword [rsp + 0x120], rbx
jmp 0x14000de91
lea rbx, [rsp + 0x190]
mov rcx, rbx
mov rdx, rdi
mov r8, rbp
mov rdi, r9
call fcn.14007c63c
mov r10, rdi
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x167], rax
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x157], xmm0
mov r11, qword [rsp + 0x120]
mov ecx, r11d
shr ecx, 8
mov rax, r11
shr rax, 0x10
movups xmm0, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0xf0], xmm0
mov rdx, qword [rsp + 0x15f]
mov qword [rsp + 0xff], rdx
mov rdx, qword [rsp + 0x167]
mov qword [rsp + 0x107], rdx
mov dl, 1
movabs rbx, 0x8000000000000002
jmp 0x14000db9a
lea rcx, [rsp + 0x190]
movabs rax, 0x8000000000000002
mov qword [rcx], rax
lea rdx, [rbx + 2]
mov rax, r12
mov r11, qword [rsp + 0x190]
cmp rax, rbp
jae 0x14000f1ac
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x50], r12
cmp r13, r8
je 0x14000e420
movzx eax, byte [r13]
inc r13
mov rcx, qword [rsp + 0x50]
lea r12, [rcx + 1]
cmp rax, 0x20
je 0x14000e08e
cmp byte [rax + r14], 0
jne 0x14000df9f
mov qword [rsp + 0x58], r12
cmp al, 0x3d
jne 0x14000e420
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0x60]
jbe 0x14000e420
xor eax, eax
mov r12, qword [rsp + 0x58]
test al, al
mov qword [rsp + 0x40], r12
je 0x14000e034
cmp r13, r8
je 0x14000e420
mov cl, byte [r13]
inc r13
mov r10, qword [rsp + 0x40]
lea r12, [r10 + 1]
cmp cl, 0x22
jne 0x14000e021
cmp r10, qword [rsp + 0x58]
ja 0x14000e06b
cmp cl, 0x20
jb 0x14000e420
cmp cl, 0x7f
jne 0x14000dff3
jmp 0x14000e420
cmp r13, r8
je 0x14000e0ab
movzx ecx, byte [r13]
inc r13
inc r12
cmp rcx, 0x22
je 0x14000e053
cmp byte [rcx + r14], 0
jne 0x14000dff3
jmp 0x14000e0b5
mov al, 1
mov rcx, qword [rsp + 0x40]
cmp rcx, qword [rsp + 0x58]
mov qword [rsp + 0x58], r12
je 0x14000dff3
jmp 0x14000e420
cmp r13, r8
je 0x14000e0d2
movzx eax, byte [r13]
inc r13
inc r12
cmp eax, 0x20
je 0x14000e06b
cmp eax, 0x3b
jne 0x14000e420
mov r10, r12
jmp 0x14000e0d8
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0x60]
jne 0x14000e420
mov rax, qword [rsp + 0x60]
inc rax
jmp 0x14000df91
mov r13, r8
mov qword [rsp + 0x40], rbp
jmp 0x14000e0d5
cmp cl, 0x3b
jne 0x14000e420
mov r10, r12
mov rax, qword [rsp + 0x40]
cmp rax, qword [rsp + 0x58]
ja 0x14000e0d8
jmp 0x14000e420
mov r13, r8
mov r10, rbp
mov qword [rsp + 0xd8], r8
mov qword [rsp + 0x118], r11
mov rax, r11
btc rax, 0x3f
cmp rax, 3
mov ecx, 1
cmovae rax, rcx
cmp rax, 2
mov qword [rsp + 0xa8], r9
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0x110], r10
jne 0x14000e272
cmp rdx, qword [rsp + 0x60]
jne 0x14000e1fe
lea rax, [0x1401b3428]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x50]
mov r8, rdi
mov r9, rbp
call fcn.14007c5ba
mov r8, rdx
lea rcx, str.charsetutf_8
mov rdx, rax
call fcn.14007c6d9
test al, al
je 0x14000e1fe
lea rax, [0x1401b3458]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x40]
mov r8, rdi
mov r9, rbp
call fcn.14007c5ba
mov r8, rdx
lea rcx, [0x1401b3470]
mov rdx, rax
call fcn.14007c6d9
test al, al
je 0x14000e1fe
mov rdx, qword [rsp + 0x198]
mov rcx, qword [rsp + 0x118]
call fcn.14007c6bc
movabs rax, 0x8000000000000000
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x198], rbx
mov r11, rax
mov qword [rsp + 0xd0], rbx
mov r9, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x110]
jmp 0x14000df91
mov ecx, 0x20
call fcn.14007c68e
mov rcx, rax
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x60]
mov qword [rcx], rax
mov rax, qword [rsp + 0x50]
mov qword [rcx + 8], rax
mov rax, qword [rsp + 0x58]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x40]
mov qword [rcx + 0x18], rax
mov rdx, qword [rsp + 0x198]
mov rcx, qword [rsp + 0x118]
call fcn.14007c6bc
mov ecx, 1
mov qword [rsp + 0x190], rcx
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x198], rax
mov eax, 1
jmp 0x14000e358
test rax, rax
jne 0x14000e372
mov rcx, qword [rsp + 0x198]
mov qword [rsp + 0x48], rcx
mov eax, 2
add rax, rcx
mov qword [rsp + 0x188], rax
lea rax, [rcx + 9]
mov qword [rsp + 0x180], rax
lea rax, [rcx + 0xa]
mov qword [rsp + 0x178], rax
lea rax, [rcx + 0xf]
mov qword [rsp + 0x170], rax
mov ecx, 0x40
call fcn.14007c68e
mov rcx, rax
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x188]
mov qword [rcx], rax
mov rax, qword [rsp + 0x180]
mov qword [rcx + 8], rax
mov rax, qword [rsp + 0x178]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x170]
mov qword [rcx + 0x18], rax
mov rax, qword [rsp + 0x60]
mov qword [rcx + 0x20], rax
mov rax, qword [rsp + 0x50]
mov qword [rcx + 0x28], rax
mov rax, qword [rsp + 0x58]
mov qword [rcx + 0x30], rax
mov rax, qword [rsp + 0x40]
mov qword [rcx + 0x38], rax
mov rcx, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x48]
call fcn.14007c6bc
mov ecx, 2
mov qword [rsp + 0x190], rcx
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x198], rax
mov eax, 2
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x1a0], rcx
mov qword [rsp + 0x1a8], rbx
jmp 0x14000e3fb
mov rax, qword [rsp + 0x118]
cmp qword [rsp + 0x48], rax
jne 0x14000e3b0
lea rcx, [rsp + 0x190]
mov rdx, qword [rsp + 0x48]
call fcn.14007c4f9
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x48], rax
mov rcx, qword [rsp + 0x48]
mov rax, rcx
shl rax, 5
mov rdx, qword [rsp + 0xd0]
mov r8, qword [rsp + 0x60]
mov qword [rdx + rax], r8
mov r8, qword [rsp + 0x50]
mov qword [rdx + rax + 8], r8
mov r8, qword [rsp + 0x58]
mov qword [rdx + rax + 0x10], r8
mov r8, qword [rsp + 0x40]
mov qword [rdx + rax + 0x18], r8
inc rcx
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x1a0], rcx
mov r9, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x110]
jmp 0x14000df89
mov rcx, qword [rsp + 0x190]
mov rdx, qword [rsp + 0x198]
call fcn.14007c6bc
mov rax, qword [rsp + 0x68]
mov qword [rax], 2
mov rcx, qword [rsp + 0x190]
movabs rax, 0x8000000000000003
mov qword [rsp + 0x60], rcx
cmp rcx, rax
je 0x14000e435
movzx eax, byte [rsp + 0x198]
movzx ecx, byte [rsp + 0x199]
mov edx, dword [rsp + 0x19a]
movzx r13d, word [rsp + 0x19e]
shl r13, 0x20
or r13, rdx
mov r14, qword [rsp + 0x1a8]
shl ecx, 8
or rcx, rax
shl r13, 0x10
or r13, rcx
mov rcx, qword [rsp + 0x60]
btc rcx, 0x3f
cmp rcx, 3
mov eax, 1
cmovb rax, rcx
cmp rax, 2
mov qword [rsp + 0xa8], r9
je 0x14000f2cf
cmp rax, 1
jne 0x14000f2f7
mov rcx, rbp
call fcn.14007c4b4
mov qword [rsp + 0xb0], rax
mov rcx, rdx
mov qword [rsp + 0x40], rdx
mov rdx, rdi
mov r8, rbp
call sub.VCRUNTIME140.dll_memcpy
test r14, r14
je 0x14000f327
cmp rbp, r14
jbe 0x14000f321
mov rax, qword [rsp + 0x40]
cmp byte [rax + r14], 0xbf
jg 0x14000f327
lea rax, [0x1401b3488]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x40]
mov rdx, rbp
xor r8d, r8d
mov r9, r14
call fcn.140158900
jne 0x14000f280
mov rcx, qword [rsp + 0x40]
mov rdx, r14
call fcn.14007c6de
mov rax, qword [rsp + 0x48]
shl rax, 5
mov qword [rsp + 0x58], rax
xor edi, edi
mov rax, r13
mov r12, qword [rsp + 0x40]