Function at 0x140082cb0
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov rdi, rcx
mov r13, qword [rcx + 0x28]
mov rbx, qword [rcx + 0x158]
and ebx, 0x3f
mov r12, r13
mov ecx, ebx
shr r12, cl
test r12, r12
je 0x140082ebe
mov rax, r12
shr rax, 0x3d
jne 0x140082ebe
lea r14, [r12*4]
movzx eax, byte [0x14017a148]
xor ecx, ecx
mov rdx, r14
call fcn.1400dbb10
test rax, rax
je 0x140082ebe
mov rsi, rax
cmp r12, 8
jae 0x140082d1e
xor eax, eax
jmp 0x140082d70
mov rax, r12
and rax, 0xfffffffffffffff8
movdqa xmm0, xmmword [0x14010c880]
xor ecx, ecx
movdqa xmm1, xmmword [0x14010c890]
movdqa xmm2, xmmword [str._b_b_b_b]
nop
movdqa xmm3, xmm0
paddd xmm3, xmm1
movdqu xmmword [rsi + rcx*4], xmm0
movdqu xmmword [rsi + rcx*4 + 0x10], xmm3
add rcx, 8
paddd xmm0, xmm2
cmp rax, rcx
jne 0x140082d40
cmp r12, rax
je 0x140082d7f
nop word cs:[rax + rax]
mov dword [rsi + rax*4], eax
lea rcx, [rax + 1]
mov rax, rcx
cmp r12, rcx
jne 0x140082d70
movabs r11, 0x1fffffffffffffff
mov rbp, qword [rdi + 0x20]
mov rdx, qword [rdi + 0x160]
mov r8, r12
mov r9d, r12d
dec r9d
lea rax, [r8 - 0x80000000]
nop word cs:[rax + rax]
sub r8, 1
jb 0x140082e9b
cmp rax, 0xffffffff80000001
jb 0x140082ebe
mov r10, r8
mov ecx, ebx
shl r10, cl
add r10, rdx
cmp r10, r13
jae 0x140082ebe
mov rcx, qword [rbp + r10*8]
shr rcx, 0x2a
cmp ecx, 0x3fffff
jae 0x140082db0
cmp r9d, r8d
je 0x140082e89
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x30], rdi
mov r10d, r9d
mov r15, r10
mov ecx, ebx
shl r15, cl
mov eax, r8d
mov r11, rax
shl r11, cl
mov r14d, 1
nop dword [rax + rax]
cmp r15, r13
jae 0x140082ebe
cmp r11, r13
jae 0x140082ebe
mov rcx, qword [rbp + r15*8]
mov rdi, qword [rbp + r11*8]
mov qword [rbp + r15*8], rdi
mov qword [rbp + r11*8], rcx
mov rdi, r14
mov ecx, ebx
shr rdi, cl
inc r11
inc r15
inc r14
test rdi, rdi
je 0x140082e20
cmp r12, r10
jbe 0x140082ebe
cmp rax, r12
jae 0x140082ebe
mov ecx, dword [rsi + r10*4]
mov r11d, dword [rsi + rax*4]
mov dword [rsi + r10*4], r11d
mov dword [rsi + rax*4], ecx
mov rdi, qword [rsp + 0x30]
mov r14, qword [rsp + 0x28]
movabs r11, 0x1fffffffffffffff
mov dword [rdi + 0x170], r9d
test r9d, r9d
jne 0x140082d9a
jmp 0x140082ebe
test r12, r12
je 0x140082ec0
cmp r12, r11
ja 0x140082ebe
movzx eax, byte [0x14017a148]
xor ecx, ecx
mov rdx, r14
call fcn.1400dbb10
mov r15, rax
test rax, rax
jne 0x140082ec9
ud2
mov r15d, 4
xor r14d, r14d
mov rcx, r15
mov rdx, rsi
mov r8, r14
call sub.msvcrt.dll_memcpy
xor eax, eax
jmp 0x140082eeb
mov dword [rsi + rax*4], ecx
inc rax
cmp rax, r12
je 0x140082f13
cmp rax, r12
je 0x140082ebe
mov edx, dword [r15 + rax*4]
cmp edx, eax
je 0x140082ee3
nop dword [rax + rax]
mov ecx, edx
mov edx, edx
cmp r12, rdx
jbe 0x140082ebe
mov edx, dword [r15 + rdx*4]
cmp edx, eax
jne 0x140082f00
jmp 0x140082ee0
mov rax, qword [rdi + 0x150]
test rax, rax
je 0x140082f7e
xor edx, edx
movabs r8, 0x7ffffffffff
nop dword [rax + rax]
mov r9, rdx
inc rdx
mov ecx, ebx
shl r9, cl
mov rcx, rax
nop
cmp r9, r13
jae 0x140082ebe
mov r10, qword [rbp + r9*8]
mov r11, r10
shr r11, 0x2b
cmp r11, r12
jae 0x140082ebe
mov r11d, dword [rsi + r11*4]
shl r11, 0x2b
and r10, r8
or r10, r11
mov qword [rbp + r9*8], r10
inc r9
dec rcx
jne 0x140082f40
cmp rdx, r12
jne 0x140082f30
mov rax, qword [rdi + 0x40]
test rax, rax
je 0x140082faf
mov rcx, qword [rdi + 0x38]
xor edx, edx
nop dword [rax]
mov r8d, dword [rcx + rdx*4]
cmp r12, r8
jbe 0x140082ebe
mov r8d, dword [rsi + r8*4]
mov dword [rcx + rdx*4], r8d
inc rdx
cmp rax, rdx
jne 0x140082f90
jmp 0x140082fb4
test r12, r12
je 0x140082fd6
mov rcx, qword [0x14017a0c0]
xor edx, edx
mov r8, r15
call sub.KERNEL32.dll_HeapFree
mov rcx, qword [0x14017a0c0]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
nop
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret