Function at 0x4d3d20
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x1b8]
cmp r12, qword [r14 + 0x10]
jbe 0x4d5c46
push rbp
mov rbp, rsp
sub rsp, 0x230
mov qword [rsp + 0x248], rbx
mov qword [rsp + 0x250], rcx
mov rdx, qword [rax + 0x30]
mov r8, qword [rax + 0x38]
cmp qword [rax + 0x378], 1
nop dword [rax]
jne 0x4d3e08
test sil, sil
je 0x4d3d79
mov rdi, rax
mov rax, r8
mov r8, rdx
jmp 0x4d3e11
shl rdi, 5
add rdi, qword [0x005d8fe0]
mov r9, qword [rdi]
mov r10, qword [rdi + 0x10]
sub rdx, r10
lea rdx, [r9 + rdx]
lea rdx, [rdx - 1]
test r9, r9
je 0x4d5c40
mov r10, qword [rdi + 8]
mov r11, qword [rdi + 0x18]
mov rdi, rax
mov rax, rdx
cmp r9, 0xffffffffffffffff
jne 0x4d3dba
neg rax
xor edx, edx
jmp 0x4d3dbf
cqo
idiv r9
sub r8, r11
lea rdx, [r10 + r8]
lea rdx, [rdx - 1]
test r10, r10
je 0x4d5c39
mov r8, rax
mov rax, rdx
cmp r10, 0xffffffffffffffff
jne 0x4d3de6
neg rax
xor edx, edx
jmp 0x4d3deb
cqo
idiv r10
test r8, r8
je 0x4d3df5
test rax, rax
jne 0x4d3e11
xor eax, eax
xor ebx, ebx
mov rcx, rax
mov rdi, rbx
add rsp, 0x230
pop rbp
ret
mov rdi, rax
mov rax, r8
mov r8, rdx
mov qword [rsp + 0x228], rdi
mov qword [rsp + 0x250], rcx
mov qword [rsp + 0x248], rbx
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x130], r8
mov rdx, qword [rdi + 0x60]
dec rdx
cmp rdx, 0xe
ja 0x4d4422
mov byte [rsp + 0x260], sil
lea r9, [0x00523c40]
jmp qword [r9 + rdx*8]
xor edx, edx
xor r9d, r9d
xor r10d, r10d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
xor edx, edx
mov qword [rsp + 0x1d8], rdx
xor edx, edx
mov qword [rsp + 0x150], rdx
xor edx, edx
mov qword [rsp + 0x1e8], rdx
xor edx, edx
test sil, sil
jne 0x4d4527
mov qword [rsp + 0x1c0], r15
mov qword [rsp + 0x1f0], r13
mov qword [rsp + 0x1d0], r12
mov qword [rsp + 0x1c8], r11
mov qword [rsp + 0x1e0], r10
mov qword [rsp + 0x1f8], r9
lea rsi, [rdx + 7]
sar rsi, 0x3f
shr rsi, 0x3d
lea rsi, [rdx + rsi]
lea rsi, [rsi + 7]
mov qword [rsp + 0x1b8], rsi
imul rdx, r8
lea rdi, [rdx + 7]
sar rdi, 0x3f
shr rdi, 0x3d
lea rcx, [rdi + rdx]
lea rcx, [rcx + 7]
sar rcx, 3
inc rcx
mov qword [rsp + 0x138], rcx
lea rax, [0x004eb520]
mov rbx, rcx
nop dword [rax]
call fcn.00451b20
mov qword [rsp + 0x220], rax
mov rbx, qword [rsp + 0x138]
mov rcx, rbx
lea rax, [0x004eb520]
nop
call fcn.00451b20
mov rdx, qword [rsp + 0x1b8]
sar rdx, 3
mov qword [rsp + 0x168], rdx
xor ecx, ecx
mov rbx, qword [rsp + 0x220]
xor esi, esi
jmp 0x4d455f
mov rax, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x1e8]
xor ecx, ecx
xor edi, edi
add rsp, 0x230
pop rbp
ret
mov rcx, qword [rsp + 0x58]
inc rcx
mov rdx, qword [rsp + 0x168]
mov rbx, r11
mov rax, qword [rsp + 0x208]
mov r8, qword [rsp + 0x158]
cmp r8, rcx
jle 0x4d4b47
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x208], rbx
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x140], rsi
mov rax, qword [rsp + 0x248]
mov rcx, rbx
mov rdi, qword [rsp + 0x138]
mov rsi, rdi
mov rbx, qword [rsp + 0x250]
call fcn.00496a60
test rbx, rbx
jne 0x4d4a8d
mov r8, qword [rsp + 0x138]
lea rsi, [r8 - 1]
mov rcx, rsi
neg rsi
sar rsi, 0x3f
and esi, 1
mov rdx, qword [rsp + 0x208]
movzx r10d, byte [rdx]
lea rax, [rdx + rsi]
mov qword [rsp + 0x210], rax
mov r11, qword [rsp + 0x218]
lea rdi, [r11 + rsi]
cmp r10b, 1
ja 0x4d4619
nop dword [rax]
test r10b, r10b
je 0x4d4690
mov r10, qword [rsp + 0x168]
mov rbx, r10
jmp 0x4d5c2f
cmp r10b, 2
jne 0x4d4626
xor ebx, ebx
jmp 0x4d5c0a
cmp r10b, 3
jne 0x4d4640
mov r10, qword [rsp + 0x168]
xor ebx, ebx
jmp 0x4d5bb2
cmp r10b, 4
jne 0x4d4a72
mov qword [rsp + 0x1b8], rcx
mov rbx, rcx
mov rsi, rcx
mov r8, rcx
mov r9, qword [rsp + 0x168]
call fcn.004d27c0
mov rax, qword [rsp + 0x210]
mov rcx, qword [rsp + 0x1b8]
mov rdx, qword [rsp + 0x208]
mov r8, qword [rsp + 0x138]
mov r11, qword [rsp + 0x218]
mov r10, qword [rsp + 0x228]
mov r12, qword [r10 + 0x60]
dec r12
nop
cmp r12, 0xe
ja 0x4d4a5d
lea rbx, [0x00523cc0]
jmp qword [rbx + r12*8]
mov r9, qword [rsp + 0x1e0]
mov rsi, qword [rsp + 0x140]
jmp 0x4d4544
xor eax, eax
xor ebx, ebx
lea rcx, [0x00522d60]
lea rdi, [0x00522620]
add rsp, 0x230
pop rbp
ret
mov qword [rsp + 0x200], rcx
mov qword [rsp + 0x160], rbx
nop dword [rax]
cmp qword [0x005e0d50], rbx
je 0x4d4aad
xor eax, eax
jmp 0x4d4ad5
mov rdx, qword [0x005e0d58]
mov rax, rbx
mov rbx, rcx
mov rcx, rdx
nop dword [rax]
call fcn.00405f20
mov rcx, qword [rsp + 0x200]
mov rbx, qword [rsp + 0x160]
test al, al
jne 0x4d4b19
nop dword [rax]
cmp qword [0x005e0d60], rbx
je 0x4d4aed
xor eax, eax
jmp 0x4d4b15
mov rdx, qword [0x005e0d68]
mov rax, rbx
mov rbx, rcx
mov rcx, rdx
nop dword [rax]
call fcn.00405f20
mov rcx, qword [rsp + 0x200]
mov rbx, qword [rsp + 0x160]
test al, al
je 0x4d4b34
xor eax, eax
xor ebx, ebx
lea rcx, [0x00522d60]
lea rdi, [0x005225f0]
add rsp, 0x230
pop rbp
ret
xor eax, eax
mov rdi, rcx
mov rcx, rbx
xor ebx, ebx
add rsp, 0x230
pop rbp
ret
mov rax, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x1e8]
xor ecx, ecx
xor edi, edi
add rsp, 0x230
pop rbp
ret
movzx r12d, byte [rbx + rax]
movzx r13d, byte [rbx + rdi]
shr r13b, 1
add r12d, r13d
mov byte [rax + rbx], r12b
inc rbx
cmp rbx, r10
jl 0x4d5b9b
mov rbx, r10
jmp 0x4d5bec
movzx r12d, byte [r10 + rax]
mov r13, r10
sub r13, rbx
movzx r13d, byte [r13 + rax]
movzx r15d, byte [r10 + rdi]
add r13, r15
mov r15, r13
shr r13, 0x3f
add r13, r15
sar r13, 1
add r12d, r13d
mov byte [rax + r10], r12b
inc r10
cmp r10, rcx
jl 0x4d5bbc
jmp 0x4d4690
movzx r10d, byte [rbx + rdi]
movzx r12d, byte [rbx + rax]
add r10d, r12d
mov byte [rax + rbx], r10b
inc rbx
cmp rbx, rcx
jl 0x4d5bf6
jmp 0x4d4690
movzx r12d, byte [r10 + rax]
mov r13, r10
sub r13, rbx
movzx r13d, byte [r13 + rax]
add r12d, r13d
mov byte [rax + r10], r12b
inc r10
cmp r10, rcx
jl 0x4d5c14
jmp 0x4d4690
call fcn.0043b2e0
nop
call fcn.0043b2e0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov byte [rsp + 0x28], sil
nop
call fcn.0046b0a0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
movzx esi, byte [rsp + 0x28]
nop
jmp fcn.004d3d20