Function at 0x180021960
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
imul eax, edx, 0x183
mov r9, r8
mov r10d, edx
mov rsi, rcx
mov r14d, edx
mov dword [rsp + 0xa8], eax
cmp edx, eax
ja 0x180021d1a
mov r13, qword [rsp + 0xa8]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov rdi, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0xa8]
mov r15d, dword [rsp + 0x98]
mov ebp, dword [rsp + 0x98]
mov r12d, dword [rsp + 0x98]
nop word [rax + rax]
cmp r14d, 0x46b0
ja 0x180021ad6
je 0x180021aa7
mov eax, r14d
sub eax, 0xd0
je 0x180021a68
sub eax, 0x57
je 0x180021a49
sub eax, 0x2299
je 0x180021a33
cmp eax, 0xef4
jne 0x180021d05
mov rax, qword [rsi]
sub rax, qword [r9]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x28]
add rax, qword [rsp + 0x30]
mov qword [rsp + 0x20], rax
jmp 0x180021d05
cmp qword [rsi + 0x18], 0x10
mov rdi, rsi
jb 0x180021d05
mov rdi, qword [rsi]
jmp 0x180021d05
mov rax, qword [rsi + 0x10]
sub rax, qword [r9 + 0x10]
mov qword [rsp + 0x28], rax
mov rax, qword [rsi + 8]
sub rax, qword [r9 + 8]
mov qword [rsp + 0x30], rax
jmp 0x180021d05
mov rcx, qword [rsi + 0x10]
mov rax, rdx
add rcx, 2
xor r8d, r8d
mul rcx
mov rcx, r9
shr rdx, 1
shl rdx, 2
call fcn.18005f3a0
mov r9, qword [rsp + 0xa0]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov r10d, dword [rsp + 0x98]
jmp 0x180021d05
cmp qword [r9 + 0x18], 0x10
mov rbx, r9
jb 0x180021ab4
mov rbx, qword [r9]
mov rax, rdx
mul qword [rsi + 0x10]
shr rdx, 1
lea rcx, [rdx + rdx*2]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov qword [rsp + 0x38], rcx
jmp 0x180021d05
cmp r14d, 0x6441
je 0x180021cfd
cmp r14d, 0x69a0
je 0x180021c2c
cmp r14d, 0x8c90
je 0x180021b39
cmp r14d, 0x95ce
jne 0x180021d05
mov rcx, qword [rsp + 0x20]
xorps xmm1, xmm1
mov rax, rcx
xorps xmm0, xmm0
sub rax, qword [rsp + 0x40]
cvtsi2sd xmm0, rcx
cvtsi2sd xmm1, rax
mulsd xmm1, qword [0x18007f310]
divsd xmm1, xmm0
movq rax, xmm1
jmp 0x180021d22
cmp r13, qword [rsi + 0x10]
jae 0x180021d05
mov r8d, 0x102
nop dword [rax]
mov eax, r8d
sub eax, 0x102
je 0x180021bf7
sub eax, 1
je 0x180021bf2
sub eax, 1
je 0x180021bd9
sub eax, 1
je 0x180021b85
cmp eax, 1
jne 0x180021c0d
mov byte [rbx], 0x3d
inc rbx
jmp 0x180021c0d
mov ecx, r15d
mov eax, ebp
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
mov rax, qword [0x180092a50]
movzx ecx, byte [rcx + rax]
lea rax, [r13 + 1]
mov byte [rbx], cl
cmp rax, qword [rsi + 0x10]
jae 0x180021bce
mov ecx, ebp
mov eax, r12d
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x180092a50]
movzx edx, byte [rcx + rax]
mov byte [rbx + 1], dl
add rbx, 2
jmp 0x180021c0d
mov dl, 0x3d
mov byte [rbx + 1], dl
add rbx, 2
jmp 0x180021c0d
mov rax, qword [0x180092a50]
mov ecx, r15d
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov byte [rbx], cl
inc rbx
jmp 0x180021c0d
xor r12d, r12d
jmp 0x180021c0d
movzx r15d, byte [rdi]
lea rax, [r13 + 1]
cmp rax, qword [rsi + 0x10]
jae 0x180021c0b
movzx ebp, byte [rdi + 1]
jmp 0x180021c0d
xor ebp, ebp
inc r8d
cmp r8d, 0x107
jb 0x180021b50
movabs rdx, 0xaaaaaaaaaaaaaaab
jmp 0x180021d05
mov rcx, qword [rsp + 0x38]
xor r13d, r13d
test rcx, rcx
je 0x180021d05
mov rax, rdx
dec rcx
mul rcx
shr rdx, 1
inc rdx
lea r13, [rdx + rdx*2]
mov r8d, PathMakeUniqueName
cmp r8d, 0x2a
je 0x180021c9b
cmp r8d, 0x8b2
je 0x180021c74
cmp r8d, 0x113a
jne 0x180021cd3
add rdi, 3
jmp 0x180021cd3
movzx ecx, byte [rdi + 1]
movzx eax, byte [rdi + 2]
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x180092a50]
movzx ecx, byte [rcx + rax]
mov byte [rbx], cl
movzx ecx, byte [rdi + 2]
and ecx, 0x3f
jmp 0x180021cc1
mov rax, qword [0x180092a50]
movzx ecx, byte [rdi]
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov byte [rbx], cl
movzx eax, byte [rdi]
movzx ecx, byte [rdi + 1]
and eax, 3
shl eax, 4
shr ecx, 4
add ecx, eax
mov rax, qword [0x180092a50]
movzx ecx, byte [rcx + rax]
mov byte [rbx + 1], cl
add rbx, 2
add r8d, 0x888
cmp r8d, 0x1998
jbe 0x180021c56
sub rdx, 1
jne 0x180021c50
movabs rdx, 0xaaaaaaaaaaaaaaab
jmp 0x180021d05
cmp qword [rsp + 0x20], 0
je 0x180021d40
imul eax, r10d, 0x2b
add r14d, eax
cmp r14d, dword [rsp + 0xa8]
jbe 0x1800219e0
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
xorps xmm0, xmm0
movq rax, xmm0
jmp 0x180021d22