Function at 0x4e7a60
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0xe0]
cmp r12, qword [r14 + 0x10]
jbe 0x4e8426
sub rsp, 0x160
mov qword [rsp + 0x158], rbp
lea rbp, [rsp + 0x158]
mov qword [rsp + 0x168], rax
mov qword [rsp + 0x170], rbx
mov qword [rsp + 0x178], rcx
mov rdx, rbx
mov rsi, rax
mov rdi, rcx
jmp 0x4e7acd
mov rdx, qword [rsp + 0x170]
mov rbx, rsi
mov rax, rdi
mov rcx, r8
mov rsi, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
mov r9, qword [0x0069fdf8]
mov r10, qword [str._n_____BEGIN]
mov r11, qword [0x0069fe00]
cmp r9, 1
jb 0x4e8415
dec r11
neg r11
sar r11, 0x3f
and r11d, 1
add r10, r11
dec r9
cmp rbx, r9
jge 0x4e7b0a
xor r8d, r8d
jmp 0x4e7b54
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x100], rax
mov rbx, r10
mov rcx, r9
call fcn.00402d20
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x170]
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
mov r8d, eax
mov rax, qword [rsp + 0x100]
test r8b, r8b
je 0x4e7b8e
mov r8, qword [0x0069fdf8]
lea r9, [r8 - 1]
cmp rbx, r9
jb 0x4e840a
sub rcx, r8
lea r10, [rcx + 1]
mov r11, r10
neg r10
sar r10, 0x3f
and r10, r9
sub rbx, r8
lea r8, [rax + r10]
lea r9, [rbx + 1]
jmp 0x4e7bba
mov rdi, qword [str._n_____BEGIN]
mov rsi, qword [0x0069fdf8]
mov r8, qword [0x0069fe00]
call fcn.00474f20
test r9b, r9b
je 0x4e8166
mov r11, r8
mov r9, rsi
mov r8, rdi
mov rax, r8
mov rbx, r9
mov rcx, r11
call fcn.004e7800
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0x150], rdi
mov qword [rsp + 0xd8], rsi
mov qword [rsp + 0xd0], r8
mov rdx, qword [0x0069fdd8]
mov r9, qword [0x0069fdd0]
cmp rbx, rdx
jl 0x4e7c76
mov r10, rbx
sub rbx, rdx
cmp r10, rbx
jb 0x4e83ff
mov r11, r10
sub r10, rbx
mov r12, rbx
sub rbx, rcx
sar rbx, 0x3f
and rbx, r12
lea r12, [rbx + rax]
cmp rdx, r10
je 0x4e7c2a
xor edx, edx
jmp 0x4e7c80
mov qword [rsp + 0xc8], r11
mov qword [rsp + 0x58], rcx
mov rax, r12
mov rbx, r9
mov rcx, r10
call fcn.00402d20
mov rcx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0x150]
mov r8, qword [rsp + 0xd0]
mov r11, qword [rsp + 0xc8]
mov edx, eax
mov rax, qword [rsp + 0xe8]
jmp 0x4e7c80
mov r11, rbx
xor edx, edx
nop dword [rax + rax]
test dl, dl
je 0x4e7aac
mov rbx, qword [0x0069fdd8]
sub r11, rbx
cmp rcx, r11
jb 0x4e83f4
mov qword [rsp + 0x50], r11
call fcn.0040e2e0
mov qword [rsp + 0x148], rax
lea rax, [0x005649c0]
call fcn.0040d7a0
mov qword [rsp + 0x140], rax
cmp dword [0x006fd2c0], 0
jne 0x4e7cd8
mov rdx, qword [rsp + 0x148]
mov qword [rax + 0x10], rdx
jmp 0x4e7ce9
lea rdi, [rax + 0x10]
mov rdx, qword [rsp + 0x148]
call fcn.00463100
xor eax, eax
mov rbx, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x50]
call fcn.0044d3a0
mov rdi, qword [rsp + 0x140]
mov qword [rdi + 8], rbx
cmp dword [0x006fd2c0], 0
jne 0x4e7d17
mov qword [rdi], rax
jmp 0x4e7d1c
call fcn.00462fe0
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0x150]
jmp 0x4e81b0
mov rdx, qword [rsp + 0x140]
mov r9, qword [rdx + 0x10]
test r9, r9
je 0x4e7d4f
mov r9, qword [r9]
jmp 0x4e7d52
xor r9d, r9d
test r9, r9
jne 0x4e7dc5
mov rcx, qword [0x0069fdb8]
mov r9, qword [str._n_____END]
mov r10, qword [0x0069fdc0]
cmp rcx, 1
jb 0x4e83e8
dec r10
neg r10
sar r10, 0x3f
and r10d, 1
lea rbx, [r10 + r9]
dec rcx
mov r9, qword [rsp + 0x60]
cmp r9, rcx
jge 0x4e7d99
xor eax, eax
jmp 0x4e7db3
mov rax, qword [rsp + 0xf8]
call fcn.00402d20
mov rdx, qword [rsp + 0x140]
mov r9, qword [rsp + 0x60]
test al, al
je 0x4e7dca
mov r10, qword [0x0069fdb8]
dec r10
xor eax, eax
jmp 0x4e7e0c
mov r9, qword [rsp + 0x60]
mov rdi, qword [str._n_____END]
mov rsi, qword [0x0069fdb8]
mov r8, qword [0x0069fdc0]
mov rax, qword [rsp + 0xf8]
mov rbx, r9
mov rcx, qword [rsp + 0x70]
call fcn.00474740
mov rdx, qword [0x0069fdb8]
lea r10, [rdx + rax]
mov rdx, qword [rsp + 0x140]
mov r9, qword [rsp + 0x60]
test rax, rax
jge 0x4e7e26
mov r8, qword [rsp + 0x70]
mov rsi, r9
mov rdi, qword [rsp + 0xf8]
jmp 0x4e7aac
cmp r10, r9
ja 0x4e83dd
mov rcx, r9
sub rcx, r10
mov r11, qword [rsp + 0x70]
mov r12, r11
sub r11, r10
mov r13, r11
neg r11
sar r11, 0x3f
and r11, r10
mov r10, qword [rsp + 0xf8]
add r11, r10
mov r15, qword [0x0069fdd8]
mov rbx, rdx
mov rdx, qword [rsp + 0x50]
add r15, rdx
cmp rcx, r15
jge 0x4e7e7d
mov r8, r12
mov rsi, r9
mov rdi, r10
jmp 0x4e7aac
nop dword [rax]
jb 0x4e83d5
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xb0], r15
mov rsi, r13
sub r13, r15
mov qword [rsp + 0x88], r13
sub rcx, r15
mov qword [rsp + 0x80], rcx
mov rdi, r13
neg r13
sar r13, 0x3f
and r13, r15
add r13, r11
mov qword [rsp + 0x108], r13
cmp rdx, r15
jle 0x4e7ed0
xor edx, edx
jmp 0x4e7f47
mov qword [rsp + 0xd8], rsi
mov qword [rsp + 0x120], r11
mov rax, r11
mov rbx, qword [rsp + 0xe8]
mov rcx, rdx
call fcn.00402d20
mov rcx, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x140]
mov rsi, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0x88]
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0xf8]
mov r11, qword [rsp + 0x120]
mov r12, qword [rsp + 0x70]
mov r13, qword [rsp + 0x108]
mov r15, qword [rsp + 0xb0]
mov edx, eax
mov rax, qword [rsp + 0xb8]
test dl, dl
je 0x4e8010
mov rdx, qword [0x0069fdd8]
mov r8, r13
mov r13, qword [0x0069fdd0]
cmp rdx, r15
jg 0x4e8006
mov qword [rsp + 0xf0], r13
sub r15, rdx
mov r13, qword [rsp + 0xb0]
nop dword [rax]
cmp r15, r13
ja 0x4e83ca
mov qword [rsp + 0xd8], r15
sub r13, r15
sub r15, rsi
sar r15, 0x3f
mov rsi, r9
mov r9, qword [rsp + 0xd8]
and r9, r15
add r9, r11
cmp rdx, r13
je 0x4e7fb5
xor edx, edx
jmp 0x4e800b
mov rax, r9
mov rbx, qword [rsp + 0xf0]
mov rcx, r13
call fcn.00402d20
mov rcx, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x140]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x88]
mov r8, qword [rsp + 0x108]
mov r10, qword [rsp + 0xf8]
mov r12, qword [rsp + 0x70]
mov edx, eax
mov rax, qword [rsp + 0xb8]
jmp 0x4e800b
mov rsi, r9
xor edx, edx
xor edx, 1
jmp 0x4e801b
mov rsi, r9
mov r8, r13
mov edx, 1
test dl, dl
je 0x4e802a
mov r8, r12
mov rdi, r10
jmp 0x4e7aac
mov rax, r8
mov rbx, rcx
mov rcx, rdi
call fcn.004e7800
test rbx, rbx
je 0x4e8054
mov r8, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0xf8]
jmp 0x4e7aac
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0x70]
cmp rcx, rdx
ja 0x4e83c5
mov rax, qword [rsp + 0xf8]
mov rbx, rcx
mov rcx, rdx
call fcn.004e7960
mov qword [rsp + 0x128], rax
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0xc0], rcx
mov rdx, qword [0x006a6fb8]
cmp dword [rdx + 0x140], 0xffffffff
jne 0x4e80c2
lea rdx, [rbx + rbx*2]
mov rsi, rdx
shl rdx, 1
sar rdx, 0x3f
shr rdx, 0x3d
lea rdx, [rdx + rsi*2]
sar rdx, 3
nop
jmp 0x4e80ca
shr rbx, 2
lea rdx, [rbx + rbx*2]
mov qword [rsp + 0x38], rdx
lea rax, [0x00553f60]
mov rbx, rdx
mov rcx, rbx
nop dword [rax]
call fcn.004490e0
mov rdi, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x140]
mov qword [rdx + 0x20], rdi
mov qword [rdx + 0x28], rdi
cmp dword [0x006fd2c0], 0
jne 0x4e8109
mov qword [rdx + 0x18], rax
jmp 0x4e811b
lea r10, [rdx + 0x18]
mov rcx, rdi
mov rdi, r10
call fcn.00462fe0
mov rdi, rcx
mov rax, qword [0x006a6fb8]
mov rbx, qword [rdx + 0x18]
mov rcx, rdi
mov rsi, qword [rsp + 0x128]
mov r8, qword [rsp + 0xa0]
mov r9, qword [rsp + 0xc0]
call fcn.004e6da0
test rbx, rbx
je 0x4e82fa
mov r8, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0xf8]
jmp 0x4e7aac
xor eax, eax
mov rbx, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x170]
mov rdi, qword [rsp + 0x178]
mov rbp, qword [rsp + 0x158]
add rsp, 0x160
ret
mov rdi, qword [rsp + 0x140]
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x110]
test rax, rax
je 0x4e838b
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0xf8], rdx
mov rbx, rax
mov rax, rdx
call fcn.004e7800
mov qword [rsp + 0x110], rdi
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x98], r8
mov rdx, qword [0x0069fd90]
mov r9, qword [0x0069fd98]
mov r10, qword [0x0069fda0]
mov rdi, rdx
mov rsi, r9
mov r8, r10
call fcn.00474f20
test r9b, r9b
je 0x4e7d39
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0xe0], rdi
call fcn.004745a0
mov qword [rsp + 0x118], rax
mov qword [rsp + 0xa8], rbx
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x40]
call fcn.004745a0
mov rcx, rbx
mov rbx, rax
xor eax, eax
call fcn.0044d3a0
mov qword [rsp + 0x138], rax
mov qword [rsp + 0xd8], rbx
mov rdx, qword [rsp + 0x140]
mov rsi, qword [rdx + 0x10]
mov qword [rsp + 0x130], rsi
mov rcx, qword [rsp + 0xa8]
xor eax, eax
mov rbx, qword [rsp + 0x118]
nop dword [rax + rax]
call fcn.0044d3a0
mov rcx, rax
mov rdi, rbx
lea rax, [0x00559ae0]
mov rbx, qword [rsp + 0x130]
call fcn.00412240
mov rdx, qword [rsp + 0xd8]
mov qword [rax + 8], rdx
cmp dword [0x006fd2c0], 0
jne 0x4e82e5
mov rdx, qword [rsp + 0x138]
mov qword [rax], rdx
nop
jmp 0x4e8190
mov rdi, rax
mov rdx, qword [rsp + 0x138]
call fcn.00463100
jmp 0x4e8190
mov rsi, qword [rsp + 0x140]
mov rdx, qword [rsi + 0x28]
cmp rax, rdx
ja 0x4e83ba
mov qword [rsi + 0x20], rax
mov rdx, qword [0x0069fdb8]
mov rdi, qword [rsp + 0xb8]
lea r8, [rdx + rdi]
lea rax, [rdi + rdx]
lea rax, [rax - 1]
mov rcx, qword [rsp + 0x60]
cmp rcx, rax
jb 0x4e83b5
sub rcx, r8
mov rdx, qword [rsp + 0x70]
sub rdx, r8
inc rdx
mov rsi, rdx
neg rdx
sar rdx, 0x3f
and rax, rdx
mov rdx, qword [rsp + 0xf8]
add rax, rdx
lea rbx, [rcx + 1]
mov rcx, rsi
call fcn.004e7800
mov rax, qword [rsp + 0x140]
mov rbx, rdi
mov rcx, rsi
mov rdi, r8
mov rbp, qword [rsp + 0x158]
add rsp, 0x160
ret
xor eax, eax
mov rbx, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x170]
mov rdi, qword [rsp + 0x178]
mov rbp, qword [rsp + 0x158]
add rsp, 0x160
ret
call fcn.00463540
mov rcx, rax
nop dword [rax]
call fcn.00463500
call fcn.00463500
mov rax, r15
mov rcx, r13
call fcn.00463540
mov rax, r15
call fcn.00463540
mov rax, r10
mov rcx, r9
call fcn.00463540
mov eax, 1
xor ecx, ecx
call fcn.00463540
mov rdx, rcx
mov rcx, r11
call fcn.00463500
mov rax, rbx
mov rcx, r10
call fcn.00463540
mov rax, r9
mov rcx, rbx
call fcn.00463540
mov eax, 1
xor ecx, ecx
nop dword [rax]
call fcn.00463540
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.00460e20
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.004e7a60