Function at 0x1400411d0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xc0]
sub rsp, 0x1c0
mov rax, qword [0x14038d940]
xor rax, rsp
mov qword [rbp + 0xb0], rax
mov r15d, r8d
mov rdi, rdx
mov qword [rsp + 0x48], rcx
mov qword [rbp - 0x30], rdx
xor r9d, r9d
mov dword [rsp + 0x58], r9d
movdqa xmm0, xmmword [0x14025adf0]
movdqa xmmword [rbp + 0x60], xmm0
movdqa xmm1, xmmword [0x14025ae10]
movdqa xmmword [rbp + 0x70], xmm1
movdqa xmm0, xmmword [0x14025ae20]
movdqa xmmword [rbp + 0x80], xmm0
movdqa xmm1, xmmword [str.wxyz0123456789_ABCDEFGHIJKLMNOPwxyz0123456789__QRSTUVWXYZabcdefghijklmnopqrstuv]
movdqa xmmword [rbp + 0x90], xmm1
mov byte [rbp + 0xa0], r9b
movdqa xmm0, xmmword [0x14025adf0]
movdqa xmmword [rbp + 0x10], xmm0
movdqa xmm1, xmmword [0x14025ae10]
movdqa xmmword [rbp + 0x20], xmm1
movdqa xmm0, xmmword [0x14025ae20]
movdqa xmmword [rbp + 0x30], xmm0
movdqa xmm1, xmmword [0x14025ae00]
movdqa xmmword [rbp + 0x40], xmm1
mov byte [rbp + 0x50], r9b
test r8b, 1
lea r13, [rbp + 0x10]
lea rax, [rbp + 0x60]
cmove r13, rax
mov r14d, r9d
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x50], rcx
add rcx, 2
movabs rax, 0x5555555555555556
imul rcx
mov rbx, rdx
shr rbx, 0x3f
add rbx, rdx
shl rbx, 2
mov qword [rdi], r9
mov qword [rdi + 8], r9
mov qword [rdi + 0x10], r9
lea r12d, [r9 - 1]
lea r8, [0x14025ad40]
test rbx, rbx
jg 0x1400412f3
mov qword [rdi], r9
mov qword [rdi + 8], r8
mov qword [rdi + 0x10], r9
jmp 0x14004134b
mov r8d, 1
mov rdx, rbx
lea rcx, [rbp - 0x78]
call fcn.140110b70
mov rdx, rax
mov rcx, qword [rdi]
mov rax, qword [rbp - 0x78]
mov qword [rdi], rax
mov qword [rdi + 8], rdx
mov qword [rdi + 0x10], rbx
test rcx, rcx
je 0x140041330
mov eax, r12d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x140041330
call fcn.1402275a0
mov rax, qword [rdi + 8]
test rax, rax
je 0x14004190c
mov byte [rbx + rax], 0
lea r8, [0x14025ad40]
xor r9d, r9d
mov dword [rsp + 0x58], 1
mov rsi, r9
mov rax, qword [rdi]
test rax, rax
je 0x140041369
mov eax, dword [rax]
cmp eax, 1
jle 0x1400414cd
mov rdx, qword [rdi + 0x10]
mov qword [rsp + 0x60], rdx
mov rcx, qword [rdi]
test rdx, rdx
jne 0x1400413a3
mov qword [rdi], r9
mov qword [rdi + 8], r8
mov qword [rdi + 0x10], r9
test rcx, rcx
je 0x1400414cd
mov eax, r12d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x1400414cd
jmp 0x1400414c8
test rcx, rcx
je 0x14004140d
lea rax, [rcx + 0x17]
and rax, 0xfffffffffffffff8
mov rdx, qword [rdi + 8]
sub rdx, rax
mov eax, dword [rcx]
cmp eax, 1
jg 0x140041408
test rdx, rdx
jg 0x140041408
mov dword [rsp + 0x28], 1
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, qword [rdi + 8]
mov rdx, qword [rdi]
lea rcx, [rbp - 0x60]
call fcn.140110f90
mov rcx, qword [rbp - 0x58]
test rcx, rcx
je 0x140041912
mov rax, qword [rbp - 0x60]
mov qword [rdi], rax
mov qword [rdi + 8], rcx
jmp 0x1400414cd
mov rdx, qword [rsp + 0x60]
lea rax, [rdi + 0x10]
lea rcx, [rsp + 0x60]
cmp rdx, qword [rax]
cmovge rcx, rax
mov rax, qword [rcx]
mov qword [rsp + 0x68], rax
mov r8d, 1
lea rcx, [rsp + 0x38]
call fcn.140110b70
mov rcx, rax
mov qword [rbp - 0x70], rax
mov rbx, qword [rsp + 0x38]
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x20], rax
mov rax, qword [rsp + 0x68]
mov qword [rbp - 0x18], rax
test rcx, rcx
je 0x140041918
test rax, rax
jle 0x140041475
mov r8, rax
mov rdx, qword [rdi + 8]
call fcn.14024bde0
mov rax, qword [rsp + 0x68]
mov rcx, qword [rbp - 0x70]
mov byte [rcx + rax], 0
test rbx, rbx
je 0x140041486
lock inc dword [rbx]
mov rbx, qword [rsp + 0x38]
mov rdx, qword [rdi]
mov qword [rdi], rbx
mov qword [rdi + 8], rcx
mov qword [rdi + 0x10], rax
test rdx, rdx
je 0x1400414b2
mov eax, r12d
lock xadd dword [rdx], eax
cmp eax, 1
jne 0x1400414ad
mov rcx, rdx
call fcn.1402275a0
mov rbx, qword [rsp + 0x38]
test rbx, rbx
je 0x1400414cd
mov eax, r12d
lock xadd dword [rbx], eax
cmp eax, 1
jne 0x1400414cd
mov rcx, qword [rsp + 0x38]
call fcn.1402275a0
mov rbx, qword [rdi + 8]
and r15d, 2
mov r9, qword [rsp + 0x50]
lea r11, [0x14025ad40]
test r9, r9
jle 0x1400415c1
mov r10, qword [rsp + 0x48]
nop
mov rdx, qword [r10 + 8]
mov rax, r11
test rdx, rdx
cmovne rax, rdx
movzx ecx, byte [rax + rsi]
inc rsi
shl ecx, 0x10
cmp rsi, r9
jne 0x140041515
mov r14d, 2
jmp 0x14004154b
mov rax, r11
test rdx, rdx
cmovne rax, rdx
movzx eax, byte [rax + rsi]
inc rsi
shl eax, 8
or ecx, eax
cmp rsi, r9
jne 0x140041538
mov r14d, 1
jmp 0x14004154b
mov rax, r11
test rdx, rdx
cmovne rax, rdx
movzx eax, byte [rax + rsi]
inc rsi
or ecx, eax
mov edx, ecx
shr edx, 6
and edx, 0x3f
mov r8d, ecx
and r8d, 0x3f
mov eax, ecx
shr rax, 0x12
movzx eax, byte [rax + r13]
mov byte [rbx], al
shr ecx, 0xc
and ecx, 0x3f
movzx ecx, byte [rcx + r13]
mov byte [rbx + 1], cl
add rbx, 2
cmp r14, 1
jle 0x140041592
test r15d, r15d
jne 0x1400415b8
mov byte [rbx], 0x3d
inc rbx
mov byte [rbx], 0x3d
inc rbx
jmp 0x1400415b8
movzx ecx, byte [rdx + r13]
mov byte [rbx], cl
inc rbx
test r14, r14
jle 0x1400415ae
test r15d, r15d
jne 0x1400415b8
mov byte [rbx], 0x3d
inc rbx
jmp 0x1400415b8
movzx ecx, byte [r8 + r13]
mov byte [rbx], cl
inc rbx
cmp rsi, r9
jl 0x1400414f0
test r15d, r15d
je 0x1400418d9
mov rax, qword [rdi]
test rax, rax
je 0x1400415dd
mov eax, dword [rax]
cmp eax, 1
jle 0x14004172b
mov rdx, qword [rdi + 0x10]
mov qword [rsp + 0x48], rdx
mov rcx, qword [rdi]
test rdx, rdx
jne 0x140041617
mov qword [rdi], rdx
mov qword [rdi + 8], r11
mov qword [rdi + 0x10], rdx
test rcx, rcx
je 0x14004172b
mov eax, r12d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14004172b
jmp 0x140041726
test rcx, rcx
je 0x140041681
lea rax, [rcx + 0x17]
and rax, 0xfffffffffffffff8
mov rdx, qword [rdi + 8]
sub rdx, rax
mov eax, dword [rcx]
cmp eax, 1
jg 0x14004167c
test rdx, rdx
jg 0x14004167c
mov dword [rsp + 0x28], 1
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, qword [rdi + 8]
mov rdx, qword [rdi]
lea rcx, [rbp - 0x50]
call fcn.140110f90
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x140041924
mov rax, qword [rbp - 0x50]
mov qword [rdi], rax
mov qword [rdi + 8], rcx
jmp 0x14004172b
mov rdx, qword [rsp + 0x48]
lea rax, [rdi + 0x10]
lea rcx, [rsp + 0x48]
cmp rdx, qword [rax]
cmovge rcx, rax
mov r14, qword [rcx]
mov r8d, 1
lea rcx, [rbp - 0x68]
call fcn.140110b70
mov r15, rax
mov rsi, qword [rbp - 0x68]
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x80], r14
test rax, rax
je 0x14004191e
test r14, r14
jle 0x1400416d5
mov r8, r14
mov rdx, qword [rdi + 8]
mov rcx, rax
call fcn.14024bde0
mov byte [r15 + r14], 0
test rsi, rsi
je 0x1400416e7
lock inc dword [rsi]
mov rsi, qword [rsp + 0x70]
mov rcx, qword [rdi]
mov qword [rdi], rsi
mov qword [rdi + 8], r15
mov qword [rdi + 0x10], r14
test rcx, rcx
je 0x140041710
mov eax, r12d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14004170b
call fcn.1402275a0
mov rsi, qword [rsp + 0x70]
test rsi, rsi
je 0x14004172b
mov eax, r12d
lock xadd dword [rsi], eax
cmp eax, 1
jne 0x14004172b
mov rcx, qword [rsp + 0x70]
call fcn.1402275a0
mov rcx, qword [rdi + 8]
sub rbx, rcx
cmp rbx, qword [rdi + 0x10]
jge 0x1400418d9
xor esi, esi
test rbx, rbx
cmovns rsi, rbx
mov rdx, qword [rdi]
test rdx, rdx
je 0x14004176f
mov r8, qword [rdx + 8]
lea rax, [rdx + 0x17]
and rax, 0xfffffffffffffff8
sub rcx, rax
sub r8, rcx
mov eax, dword [rdx]
cmp eax, 1
jg 0x14004176f
cmp rsi, r8
jle 0x1400418be
mov rdx, rsi
mov qword [rsp + 0x50], rdx
mov rcx, qword [rdi]
test rsi, rsi
jne 0x1400417ae
mov qword [rdi], rsi
lea rax, [0x14025ad40]
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rsi
test rcx, rcx
je 0x1400418be
lock xadd dword [rcx], r12d
cmp r12d, 1
jne 0x1400418be
jmp 0x1400418b9
test rcx, rcx
je 0x140041818
lea rax, [rcx + 0x17]
and rax, 0xfffffffffffffff8
mov rdx, qword [rdi + 8]
sub rdx, rax
mov eax, dword [rcx]
cmp eax, 1
jg 0x140041813
test rdx, rdx
jg 0x140041813
mov dword [rsp + 0x28], 0
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, qword [rdi + 8]
mov rdx, qword [rdi]
lea rcx, [rbp - 0x40]
call fcn.140110f90
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x140041924
mov rax, qword [rbp - 0x40]
mov qword [rdi], rax
mov qword [rdi + 8], rcx
jmp 0x1400418be
mov rdx, qword [rsp + 0x50]
lea rax, [rdi + 0x10]
lea rcx, [rsp + 0x50]
cmp rdx, qword [rax]
cmovge rcx, rax
mov r14, qword [rcx]
xor r8d, r8d
lea rcx, [rsp + 0x40]
call fcn.140110b70
mov r15, rax
mov rbx, qword [rsp + 0x40]
mov qword [rbp - 0x10], rbx
mov qword [rbp - 8], rax
mov qword [rbp], r14
test rax, rax
je 0x140041906
test r14, r14
jle 0x140041869
mov r8, r14
mov rdx, qword [rdi + 8]
mov rcx, rax
call fcn.14024bde0
mov byte [r15 + r14], 0
test rbx, rbx
je 0x14004187b
lock inc dword [rbx]
mov rbx, qword [rsp + 0x40]
mov rcx, qword [rdi]
mov qword [rdi], rbx
mov qword [rdi + 8], r15
mov qword [rdi + 0x10], r14
test rcx, rcx
je 0x1400418a4
mov eax, r12d
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14004189f
call fcn.1402275a0
mov rbx, qword [rsp + 0x40]
test rbx, rbx
je 0x1400418be
lock xadd dword [rbx], r12d
cmp r12d, 1
jne 0x1400418be
mov rcx, qword [rsp + 0x40]
call fcn.1402275a0
mov qword [rdi + 0x10], rsi
mov rax, qword [rdi]
test rax, rax
je 0x1400418d9
cmp qword [rax + 8], 0
je 0x1400418d9
mov rcx, qword [rdi + 8]
mov byte [rsi + rcx], 0
mov rax, rdi
mov rcx, qword [rbp + 0xb0]
xor rcx, rsp
call fcn.1402200b0
mov rbx, qword [rsp + 0x210]
add rsp, 0x1c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14010bc70
nop
call fcn.14010bc70
nop
call fcn.14010bc70
nop
call fcn.14010bc70
nop
call fcn.14010bc70
nop
call fcn.14010bc70
int3