Function at 0x1400278c0
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xa8
movups xmmword [rsp + 0x80], xmm6
movups xmmword [rsp + 0x90], xmm8
mov rdi, qword [rcx]
mov r15, qword [rcx + 8]
mov qword [rdx], 0
lea r14, [rsp + 0x40]
lea rcx, [rdx + 0x10]
mov r12, rdx
mov qword [rdx + 8], 0
mov qword [rdx + 0x10], 0
mov qword [rdx + 0x18], 0
mov rdx, r14
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x48], r15
call fcn.14000ca10
mov r8d, 1
mov edx, 1
xor ecx, ecx
call fcn.14000a480
mov rdx, r14
mov rcx, r12
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], rax
call fcn.140010d20
lea rax, [0x1400b47b0]
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], rax
test rdi, rdi
jle 0x140027b18
movdqu xmm6, xmmword [0x1400b4690]
xor edx, edx
xor r13d, r13d
movzx ebx, byte [r15 + r13 + 8]
lea eax, [rbx - 0x20]
cmp al, 0x3d
ja case.0x1400279ae.1
lea rcx, [0x1400b3fac]
movzx eax, al
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
test rdx, rdx
je 0x1400279c9
jle 0x14002835c
mov rax, qword [rsp + 0x68]
cmp bl, byte [rax + 8]
jne 0x140027e08
mov edx, 1
lea rcx, [rsp + 0x60]
call fcn.140009f20
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov byte [rdx + rax + 8], bl
add rax, 1
jo 0x1400285e8
mov rdx, qword [rsp + 0x68]
mov qword [rsp + 0x60], rax
mov byte [rdx + rax + 8], 0
mov rax, r13
xor edx, edx
add rax, 1
js 0x14002823d
cmp rax, r13
jb 0x14002823d
mov r13, rax
test rdx, rdx
jne 0x140028169
cmp rdi, r13
jle 0x14002818e
test r13, r13
js 0x140028153
mov rdx, qword [rsp + 0x60]
jmp 0x140027990
lea rsi, [rsp + 0x50]
test rdx, rdx
jne 0x140027cb8
movsx edx, bl
mov rcx, r14
call fcn.14000e470
mov rdx, r14
mov rcx, rsi
call fcn.14000c2b0
mov edx, 0x25
mov rcx, r12
call fcn.140012be0
mov rdx, qword [rsp + 0x50]
cmp rdx, 0xff
jg 0x140028250
movzx edx, dl
mov rcx, r12
xor ebx, ebx
call fcn.140012be0
mov rsi, qword [rsp + 0x50]
test rsi, rsi
jg 0x140027ac0
jmp 0x140027e7e
cmp rbp, rsi
jge 0x140027e7e
mov rdx, qword [rsp + 0x50]
test rbp, rbp
js 0x140027eb8
cmp rbp, rdx
jge 0x140027eb8
mov rax, qword [rsp + 0x58]
mov rcx, r12
movzx edx, byte [rax + rbx + 8]
call fcn.140012be0
add rbx, 1
mov rbp, rbx
jo 0x140027ea8
cmp qword [rsp + 0x50], rsi
je 0x140027aa0
mov rcx, r14
movups xmmword [rsp + 0x40], xmm6
call fcn.1400043d0
mov rcx, qword [0x1400d7510]
call fcn.1400a4c00
cmp byte [rax], 0
je 0x140027aa0
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140027b18
test byte [rcx + 7], 0x40
je 0x140027df8
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140027b2c
test byte [rcx + 7], 0x40
je 0x140027de8
test r15, r15
je 0x140027b3c
test byte [r15 + 7], 0x40
je 0x140027db8
movups xmm6, xmmword [rsp + 0x80]
movups xmm8, xmmword [rsp + 0x90]
add rsp, 0xa8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
test rdx, rdx
jne 0x140027d38
mov rax, r13
xor ebx, ebx
add rax, 1
js 0x1400285de
cmp rax, r13
jb 0x1400285de
mov rbp, rax
test rbx, rbx
jne 0x140028169
cmp rax, rdi
jge 0x140027ba8
test rax, rax
js 0x140028211
cmp byte [r15 + rax + 8], 0x27
je 0x140027ed0
lea rax, [0x1400b47b0]
lea rsi, [rsp + 0x70]
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], rax
jmp 0x140027c1a
test rbp, rbp
js 0x140027fb0
movzx r13d, byte [r15 + rbp + 8]
cmp r13b, 0x27
je 0x140027fe1
mov edx, 1
mov rcx, rsi
call fcn.140009f20
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov byte [rdx + rax + 8], r13b
add rax, 1
jo 0x140028590
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x70], rax
mov byte [rdx + rax + 8], 0
add rbp, 1
cmp rbp, rdi
jl 0x140027bc8
mov edx, 8
mov ecx, 0x40
mov r13, rbp
call fcn.14000a2f0
lea rdx, str.TimeFormatParseError
lea r9, str.times.nim
mov rcx, rax
lea rax, [0x1400af540]
lea r8, str.initTimeFormat
mov qword [rcx], rax
lea rax, [0x1400b4640]
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x20], rax
mov qword [rcx + 0x18], 0x3a
mov qword [rcx + 8], 0
mov qword [rsp + 0x20], 0x6a1
call fcn.14000b530
mov rcx, qword [0x1400d7510]
call fcn.1400a4c00
mov rsi, rax
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x140027ca3
test byte [rcx + 7], 0x40
je 0x140027fa0
cmp byte [rsi], 0
je 0x140027a23
jmp 0x140027b04
movdqu xmm2, xmmword [rsp + 0x60]
mov rdx, r14
mov rcx, rsi
lea rbp, [rsp + 0x60]
movups xmmword [rsp + 0x40], xmm2
call fcn.14000c2b0
mov rcx, rbp
call fcn.140008b60
movdqu xmm3, xmmword [rsp + 0x50]
mov rcx, r14
movups xmmword [rsp + 0x40], xmm3
call fcn.1400271c0
mov rcx, qword [0x1400d7510]
mov ebx, eax
call fcn.1400a4c00
cmp byte [rax], 0
jne 0x140027b04
movzx edx, bl
mov rcx, r12
call fcn.140012be0
movdqu xmm5, xmmword [0x1400b46a0]
mov rdx, r14
mov rcx, rbp
movups xmmword [rsp + 0x40], xmm5
call fcn.14000c2b0
movzx ebx, byte [r15 + r13 + 8]
jmp 0x140027a4e
movdqu xmm0, xmmword [rsp + 0x60]
lea rsi, [rsp + 0x50]
mov rdx, r14
mov rcx, rsi
lea rsi, [rsp + 0x60]
movups xmmword [rsp + 0x40], xmm0
call fcn.14000c2b0
mov rcx, rsi
call fcn.140008b60
movdqu xmm1, xmmword [rsp + 0x50]
mov rcx, r14
movups xmmword [rsp + 0x40], xmm1
call fcn.1400271c0
mov rcx, qword [0x1400d7510]
mov ebx, eax
call fcn.1400a4c00
cmp byte [rax], 0
jne 0x140027b04
movzx edx, bl
mov rcx, r12
call fcn.140012be0
movdqu xmm4, xmmword [0x1400b46a0]
mov rdx, r14
mov rcx, rsi
movups xmmword [rsp + 0x40], xmm4
call fcn.14000c2b0
jmp 0x140027b6a
movups xmm6, xmmword [rsp + 0x80]
mov rcx, r15
movups xmm8, xmmword [rsp + 0x90]
add rsp, 0xa8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.140008a10
call fcn.140008a10
jmp 0x140027b2c
call fcn.140008a10
jmp 0x140027b18
movdqu xmm4, xmmword [rsp + 0x60]
lea rsi, [rsp + 0x50]
mov rdx, r14
mov rcx, rsi
lea rsi, [rsp + 0x60]
movups xmmword [rsp + 0x40], xmm4
call fcn.14000c2b0
mov rcx, rsi
call fcn.140008b60
movdqu xmm5, xmmword [rsp + 0x50]
mov rcx, r14
movups xmmword [rsp + 0x40], xmm5
call fcn.1400271c0
mov rcx, qword [0x1400d7510]
mov ebx, eax
call fcn.1400a4c00
cmp byte [rax], 0
jne 0x140027b04
movzx edx, bl
mov rcx, r12
call fcn.140012be0
movsx edx, byte [r15 + r13 + 8]
mov rcx, r14
call fcn.14000e470
mov rdx, r14
mov rcx, rsi
call fcn.14000c2b0
mov rax, r13
xor edx, edx
add rax, 1
js 0x1400285d4
cmp rax, r13
jb 0x1400285d4
mov r13, rax
test rdx, rdx
je 0x140027a23
nop word [rax + rax]
call fcn.140008cf0
jmp 0x140027b04
sub rdx, 1
mov rcx, rbp
call fcn.14000b7e0
jmp 0x140027b04
movdqu xmm0, xmmword [0x1400b4e80]
lea rsi, [rsp + 0x50]
mov rdx, r14
mov rcx, rsi
movups xmmword [rsp + 0x40], xmm0
call fcn.14000c2b0
mov edx, 0x25
mov rcx, r12
call fcn.140012be0
mov rdx, qword [rsp + 0x50]
cmp rdx, 0xff
jg 0x140028457
movzx edx, dl
mov rcx, r12
call fcn.140012be0
mov rsi, qword [rsp + 0x50]
test rsi, rsi
jle 0x14002822e
movdqu xmm8, xmmword [0x1400b4690]
jmp 0x140027f50
cmp rbp, rsi
jge 0x14002822e
mov rax, qword [rsp + 0x50]
test rbp, rbp
js 0x140028178
cmp rbp, rax
jge 0x140028178
mov rax, qword [rsp + 0x58]
mov rcx, r12
movzx edx, byte [rax + rbx + 8]
call fcn.140012be0
add rbx, 1
mov rbp, rbx
jo 0x140028169
cmp qword [rsp + 0x50], rsi
je 0x140027f30
mov rcx, r14
movups xmmword [rsp + 0x40], xmm8
call fcn.1400043d0
mov rcx, qword [0x1400d7510]
call fcn.1400a4c00
cmp byte [rax], 0
je 0x140027f30
jmp 0x140027b04
call fcn.140008a10
jmp 0x140027ca3
movabs rcx, 0x8000000000000000
lea rdx, [rdi - 1]
movabs r13, 0x8000000000000000
call fcn.14000b7e0
mov rcx, qword [0x1400d7510]
call fcn.1400a4c00
mov rsi, rax
jmp 0x140027c8f
movdqu xmm1, xmmword [rsp + 0x70]
lea rsi, [rsp + 0x50]
mov rdx, r14
lea r13, [rbp + 1]
mov rcx, rsi
movups xmmword [rsp + 0x40], xmm1
call fcn.14000c2b0
lea rcx, [rsp + 0x70]
call fcn.140008b60
mov edx, 0x25
mov rcx, r12
call fcn.140012be0
mov rcx, qword [0x1400d7510]
mov rbp, qword [rsp + 0x50]
call fcn.1400a4c00
mov rsi, rax
cmp rbp, 0xff
jle 0x140028371
mov edx, 8
mov ecx, 0x40
call fcn.14000a2f0
mov rcx, r14
mov rbx, rax
lea rax, [0x1400af540]
mov qword [rbx], rax
lea rax, str.TimeFormatParseError
mov qword [rbx + 0x10], rax
mov rax, qword [rsp + 0x50]
lea rdx, [rax + 0x1a]
call fcn.14000a150
mov rax, qword [rsp + 0x40]
mov r10, qword [rsp + 0x48]
movabs rcx, 0x6e6f6c206f742073
movabs r8, 0x6c2074616d726f46
movabs r9, 0x69206c6172657469
lea rdx, [rax + r10 + 8]
mov rbp, rax
mov qword [rdx + 0x10], rcx
add rbp, 0x1a
mov ecx, 0x3a67
mov qword [rdx], r8
mov qword [rdx + 8], r9
mov word [rdx + 0x18], cx
mov byte [rdx + 0x1a], 0
jo 0x14002859a
mov r9, qword [rsp + 0x50]
test r9, r9
jle 0x140028118
mov r8, r9
add r8, 1
jo 0x140028628
test r8, r8
js 0x14002840d
mov rcx, qword [rsp + 0x58]
lea rax, [rbp + r10 + 8]
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x30], r10
lea rdx, [rcx + 8]
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x30]
add r9, rbp
jo 0x140028628
mov rbp, r9
mov qword [rbx + 0x18], rbp
lea r9, str.times.nim
mov rcx, rbx
lea r8, str.initTimeFormat
mov qword [rbx + 0x20], r10
lea rdx, str.TimeFormatParseError
mov qword [rbx + 8], 0
mov qword [rsp + 0x20], 0x6f1
call fcn.14000b530
jmp 0x140027c8f
mov rcx, r13
lea rdx, [rdi - 1]
call fcn.14000b7e0
mov rcx, qword [rsp + 0x68]
jmp 0x140027b09
call fcn.140008cf0
mov rcx, qword [rsp + 0x68]
jmp 0x140027b09
mov rcx, rbp
lea rdx, [rax - 1]
call fcn.14000b7e0
mov rcx, qword [rsp + 0x68]
jmp 0x140027b09
cmp qword [rsp + 0x60], 0
je 0x140027b04
movdqu xmm3, xmmword [rsp + 0x60]
mov rdx, r14
lea rcx, [rsp + 0x50]
lea r13, [rsp + 0x60]
movups xmmword [rsp + 0x40], xmm3
call fcn.14000c2b0
mov rcx, r13
call fcn.140008b60
movdqu xmm3, xmmword [rsp + 0x50]
mov rcx, r14
movups xmmword [rsp + 0x40], xmm3
call fcn.1400271c0
mov rcx, qword [0x1400d7510]
mov ebx, eax
call fcn.1400a4c00
cmp byte [rax], 0
jne 0x140027b04
movzx edx, bl
mov rcx, r12
call fcn.140012be0
movdqu xmm2, xmmword [0x1400b46a0]
mov rdx, r14
mov rcx, r13
movups xmmword [rsp + 0x40], xmm2
call fcn.14000c2b0
jmp 0x140027b04
movabs rcx, 0x8000000000000000
lea rdx, [rdi - 1]
call fcn.14000b7e0
mov rcx, qword [rsp + 0x68]
jmp 0x140027b09
mov rax, r13
xor edx, edx
add rax, 2
jns 0x140027a0e
mov edx, 1
jmp 0x140027a17
mov edx, 8
mov ecx, 0x40
movabs rbx, 0x69206c6172657469
call fcn.14000a2f0
mov rcx, r14
mov r12, rax
lea rax, [0x1400af540]
mov qword [r12], rax
lea rax, str.TimeFormatParseError
mov qword [r12 + 0x10], rax
mov rax, qword [rsp + 0x50]
lea rdx, [rax + 0x1a]
call fcn.14000a150
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
movabs rcx, 0x6c2074616d726f46
mov edx, 0x3a67
lea rax, [rsi + rdi + 8]
mov qword [rax + 8], rbx
movabs rbx, 0x6e6f6c206f742073
mov qword [rax + 0x10], rbx
mov rbx, rsi
add rbx, 0x1a
mov qword [rax], rcx
mov word [rax + 0x18], dx
mov byte [rax + 0x1a], 0
jo 0x140028583
mov rsi, qword [rsp + 0x50]
test rsi, rsi
jle 0x14002831e
mov r8, rsi
add r8, 1
jo 0x14002863c
test r8, r8
js 0x140028437
mov rcx, qword [rsp + 0x58]
lea rax, [rbx + rdi + 8]
lea rdx, [rcx + 8]
mov rcx, rax
call sub.msvcrt.dll_memcpy
add rsi, rbx
jo 0x14002863c
mov rbx, rsi
mov qword [r12 + 0x18], rbx
lea r9, str.times.nim
mov rcx, r12
lea r8, str.initTimeFormat
mov qword [r12 + 0x20], rdi
lea rdx, str.TimeFormatParseError
mov qword [r12 + 8], 0
mov qword [rsp + 0x20], 0x6f1
call fcn.14000b530
jmp 0x140027b04
xor ecx, ecx
sub rdx, 1
call fcn.14000b7e0
mov rcx, qword [rsp + 0x68]
jmp 0x140027b09
movzx edx, bpl
mov rcx, r12
call fcn.140012be0
mov rbp, qword [rsp + 0x50]
test rbp, rbp
jle 0x140027c8f
mov qword [rsp + 0x30], rdi
jmp 0x1400283b2
cmp rdi, rbp
jge 0x1400285bb
mov rax, qword [rsp + 0x50]
test rdi, rdi
js 0x14002856a
cmp rdi, rax
jge 0x14002856a
mov rax, qword [rsp + 0x58]
mov rdi, rbx
mov rcx, r12
movzx edx, byte [rax + rbx + 8]
call fcn.140012be0
add rdi, 1
mov rbx, rdi
jo 0x1400285c5
cmp qword [rsp + 0x50], rbp
je 0x140028392
movdqu xmm2, xmmword [0x1400b4690]
mov rcx, r14
movups xmmword [rsp + 0x40], xmm2
call fcn.1400043d0
cmp byte [rsi], 0
je 0x140028392
mov rcx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x30]
test rcx, rcx
jne 0x140027c99
jmp 0x140027b04
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov qword [rsp + 0x30], r10
movabs rcx, 0x8000000000000000
call fcn.1400093f0
mov r10, qword [rsp + 0x30]
jmp 0x140028118
movabs r8, 0x7fffffffffffffff
xor edx, edx
movabs rcx, 0x8000000000000000
call fcn.1400093f0
jmp 0x14002831e
mov edx, 8
mov ecx, 0x40
movabs rbx, 0x69206c6172657469
call fcn.14000a2f0
mov rcx, r14
mov r12, rax
lea rax, [0x1400af540]
mov qword [r12], rax
lea rax, str.TimeFormatParseError
mov qword [r12 + 0x10], rax
mov rax, qword [rsp + 0x50]
lea rdx, [rax + 0x1a]
call fcn.14000a150
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
movabs rcx, 0x6c2074616d726f46
mov r8d, 0x3a67
lea rax, [rsi + rdi + 8]
mov qword [rax + 8], rbx
movabs rbx, 0x6e6f6c206f742073
mov qword [rax + 0x10], rbx
mov rbx, rsi
add rbx, 0x1a
mov qword [rax], rcx
mov word [rax + 0x18], r8w
mov byte [rax + 0x1a], 0
jo 0x140028611
mov rsi, qword [rsp + 0x50]
test rsi, rsi
jle 0x140028527
mov r8, rsi
add r8, 1
jo 0x14002861e
test r8, r8
js 0x1400285f2
mov rcx, qword [rsp + 0x58]
lea rax, [rbx + rdi + 8]
lea rdx, [rcx + 8]
mov rcx, rax
call sub.msvcrt.dll_memcpy
add rsi, rbx
jo 0x14002861e
mov rbx, rsi
mov qword [r12 + 0x18], rbx
mov rcx, r12
lea r9, str.times.nim
lea r8, str.initTimeFormat
mov qword [r12 + 0x20], rdi
lea rdx, str.TimeFormatParseError
mov qword [r12 + 8], 0
mov qword [rsp + 0x20], 0x6f1
call fcn.14000b530
mov rcx, qword [rsp + 0x68]
jmp 0x140027b09
mov r8, rdi
lea rdx, [rax - 1]
mov rdi, qword [rsp + 0x30]
mov rcx, r8
call fcn.14000b7e0
jmp 0x140027c8f
call fcn.140008cf0
mov rbx, rsi
jmp 0x1400282dc
call fcn.140008cf0
jmp 0x140027c16
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x30], rax
call fcn.140008cf0
mov rax, qword [rsp + 0x30]
mov r10, qword [rsp + 0x38]
mov rbp, rax
jmp 0x1400280c2
mov rdi, qword [rsp + 0x30]
jmp 0x140027c8f
mov rdi, qword [rsp + 0x30]
call fcn.140008cf0
jmp 0x140027c8f
mov edx, 1
jmp 0x140027e96
mov ebx, 1
jmp 0x140027b82
call fcn.140008cf0
jmp 0x1400279ff
mov ecx, 1
xor edx, edx
movabs r8, 0x7fffffffffffffff
shl rcx, 0x3f
call fcn.1400093f0
jmp 0x140028527
call fcn.140008cf0
mov rbx, rsi
jmp 0x1400284e5
call fcn.140008cf0
jmp 0x140028527
mov qword [rsp + 0x30], r10
call fcn.140008cf0
mov r10, qword [rsp + 0x30]
jmp 0x140028118
call fcn.140008cf0
jmp 0x14002831e