Function at 0x511820
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x60]
cmp r12, qword [r14 + 0x10]
jbe 0x511d7c
sub rsp, 0xe0
mov qword [rsp + 0xd8], rbp
lea rbp, [rsp + 0xd8]
mov qword [rsp + 0x100], rdi
mov qword [rsp + 0xf8], rcx
mov qword [rsp + 0x128], r11
mov qword [rsp + 0x120], r10
mov qword [rsp + 0xf0], rbx
mov qword [rsp + 0x118], r9
mov qword [rsp + 0xe8], rax
mov rax, rdi
mov rbx, rsi
mov rcx, r8
call fcn.004f69e0
test rax, rax
je 0x511a6f
mov rdx, qword [rax + 0x18]
mov rbx, qword [rax + 0x20]
mov rcx, qword [rax + 0x28]
mov rax, rdx
call fcn.00510640
test rcx, rcx
jne 0x511a52
lea rdx, [0x00667f40]
nop dword [rax]
cmp rax, rdx
jne 0x511d6c
mov rdx, qword [rbx]
mov rsi, qword [rdx + 0x10]
mov rdx, qword [rdx + 8]
lea rdi, [rsi - 1]
test rdi, rdi
jl 0x5118ff
mov rdx, qword [rdx + rsi*8 - 8]
bsr rdx, rdx
mov rsi, 0xffffffffffffffff
cmove rdx, rsi
shl rdi, 6
lea rdx, [rdx + rdi]
lea rdx, [rdx + 1]
jmp 0x511901
xor edx, edx
mov qword [rsp + 0x40], rdx
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x128]
nop
call fcn.004f69e0
mov rdx, qword [rsp + 0x40]
mov rsi, rdx
sar rdx, 0x3f
shr rdx, 0x3d
add rdx, rsi
nop dword [rax + rax]
test rax, rax
je 0x511a13
mov qword [rsp + 0x78], rdx
mov rdx, qword [rax + 0x18]
mov rbx, qword [rax + 0x20]
mov rcx, qword [rax + 0x28]
mov rax, rdx
nop dword [rax]
call fcn.0050ffc0
test rbx, rbx
jne 0x5119f6
mov rdx, qword [rsp + 0x78]
sar rdx, 3
nop word [rax + rax]
test rdx, rdx
je 0x511d67
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x50], rbx
mov rax, qword [rsp + 0xf0]
mov rsi, rdx
cqo
idiv rsi
lea rdx, [rax + 1]
mov qword [rsp + 0x60], rdx
lea rax, [0x0065e980]
xor ebx, ebx
mov rcx, rdx
call fcn.00449100
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xf8]
mov r9, qword [rsp + 0xf0]
xor ecx, ecx
jmp 0x511ab7
xor eax, eax
mov rdi, rbx
mov rsi, rcx
xor ebx, ebx
mov rcx, rbx
mov rbp, qword [rsp + 0xd8]
add rsp, 0xe0
ret
lea rax, [0x0066b800]
call fcn.0040d680
mov qword [rax + 8], 0x12
lea rcx, [0x0068cdc3]
mov qword [rax], rcx
xor ebx, ebx
mov rcx, rbx
lea rdi, [0x006d6740]
mov rsi, rax
xor eax, eax
mov rbp, qword [rsp + 0xd8]
add rsp, 0xe0
ret
xor eax, eax
xor ebx, ebx
mov rsi, rdi
mov rdi, rcx
mov rcx, rbx
mov rbp, qword [rsp + 0xd8]
add rsp, 0xe0
ret
lea rax, [0x0066b800]
call fcn.0040d680
mov qword [rax + 8], 0x10
lea rcx, [0x0068bbdc]
mov qword [rax], rcx
xor ebx, ebx
mov rcx, rbx
lea rdi, [0x006d6740]
mov rsi, rax
xor eax, eax
mov rbp, qword [rsp + 0xd8]
add rsp, 0xe0
ret
mov rdi, r8
mov rcx, r12
mov r8, r11
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0x70], r8
mov qword [rsp + 0x58], rcx
cmp r9, rdx
jl 0x511b8a
cmp r8, rdx
jb 0x511d5c
mov r10, r8
sub r8, rdx
sub r9, rdx
mov r11, r8
neg r8
sar r8, 0x3f
and r8, rdx
add r8, rdi
lea r12, [rcx + 1]
cmp rsi, r12
jae 0x511b55
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x78], r11
mov qword [rsp + 0xa8], r8
mov rbx, rax
mov rdi, rsi
mov rsi, r12
lea rax, [0x0065e980]
nop
call fcn.004491e0
lea r12, [rbx + 1]
mov rdx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x98]
mov r8, qword [rsp + 0xa8]
mov r9, qword [rsp + 0x68]
mov r10, qword [rsp + 0x70]
mov r11, qword [rsp + 0x78]
mov rsi, rcx
mov rcx, qword [rsp + 0x58]
lea r13, [rcx + rcx*2]
mov qword [rax + r13*8 + 8], rdx
mov qword [rax + r13*8 + 0x10], r10
lea r10, [rax + r13*8]
cmp dword [0x00805720], 0
jne 0x511b79
mov qword [rax + r13*8], rdi
jmp 0x511aae
mov rcx, rdi
mov rdi, r10
nop
call fcn.00463000
jmp 0x511aae
test r9, r9
jle 0x511bfb
lea rdx, [rcx + 1]
cmp rsi, rdx
jae 0x511bcd
mov qword [rsp + 0x68], r9
mov rbx, rax
mov rdi, rsi
mov rsi, rdx
lea rax, [0x0065e980]
call fcn.004491e0
lea rdx, [rbx + 1]
mov rcx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x98]
mov r8, qword [rsp + 0x70]
mov r9, qword [rsp + 0x68]
lea rsi, [rcx + rcx*2]
mov qword [rax + rsi*8 + 8], r9
mov qword [rax + rsi*8 + 0x10], r8
lea r8, [rax + rsi*8]
cmp dword [0x00805720], 0
jne 0x511bee
mov qword [rax + rsi*8], rdi
jmp 0x511bfe
mov rcx, rdi
mov rdi, r8
call fcn.00463000
jmp 0x511bfe
mov rdx, rcx
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x90], rax
nop
xor ebx, ebx
xor ecx, ecx
xor eax, eax
call fcn.0044d180
mov qword [rsp + 0xb0], 0
lea rdx, [rsp + 0xb8]
movups xmmword [rdx], xmm15
lea rdx, [rsp + 0xc8]
movups xmmword [rdx], xmm15
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], rcx
mov rdx, qword [rsp + 0x58]
test rdx, rdx
jle 0x511c69
mov rax, qword [rsp + 0x90]
xor ecx, ecx
jmp 0x511cdb
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xc8]
cmp rax, rcx
ja 0x511cc7
sub r8, rax
sub rcx, rax
mov r9, r8
neg r8
sar r8, 0x3f
and rax, r8
add rax, rdx
mov rbx, rcx
mov rcx, r9
mov rdi, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x88]
mov rbp, qword [rsp + 0xd8]
add rsp, 0xe0
ret
call fcn.00463460
mov r9, qword [rsp + 0xa0]
lea rax, [r9 + 0x18]
mov rcx, rdx
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0xa0], rax
mov rdi, qword [rax]
mov rsi, qword [rax + 8]
mov r8, qword [rax + 0x10]
mov rdx, qword [0x007aeb00]
mov rbx, qword [0x007aeb08]
mov rax, rdx
mov rcx, qword [rsp + 0x80]
call fcn.004f0e20
test rdi, rdi
jne 0x511d45
mov rdi, rcx
mov rcx, rbx
mov rbx, rax
lea rax, [rsp + 0xb0]
call fcn.004be700
mov rdx, qword [rsp + 0x78]
inc rdx
mov rsi, qword [rsp + 0x58]
cmp rsi, rdx
jg 0x511ccc
nop
jmp 0x511c69
xor eax, eax
xor ebx, ebx
mov rcx, rbx
mov rbp, qword [rsp + 0xd8]
add rsp, 0xe0
ret
mov rcx, rdx
mov rdx, r8
call fcn.00463420
call fcn.00433780
mov rbx, rdx
lea rcx, [0x00664540]
call fcn.0040aa00
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x48], r11
call fcn.00460c80
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
nop dword [rax + rax]
jmp fcn.00511820