Function at 0x525cc0
Capabilities:
Encode data using base64

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x526286
sub rsp, 0x78
mov qword [rsp + 0x70], rbp
lea rbp, [rsp + 0x70]
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rax + 0x28]
mov rdx, qword [rsp + 0xc8]
mov qword [rsp], rdx
call rcx
mov rax, qword [rsp + 8]
mov rcx, qword [rsp + 0xb8]
cmp rcx, 0xffffffffffffffff
jne 0x526235
mov rcx, rax
mov rbx, qword [rsp + 0xb0]
lea rsi, [rbx + 7]
sar rsi, 0x3f
shr rsi, 0x3d
lea rsi, [rsi + rbx]
lea rsi, [rsi + 7]
sar rsi, 3
mov rdi, qword [rsp + 0xa0]
cmp rsi, rdi
jne 0x5261ed
mov r8, qword [rsp + 0x88]
cmp rcx, r8
jne 0x5261c5
lea r9, [rax + rcx]
lea r9, [r9 + 2]
cmp rsi, r9
jl 0x52619d
lea r9, [rsi - 1]
cmp r9, rdi
jae 0x526275
mov rdi, qword [rsp + 0x98]
movzx r10d, byte [rsi + rdi - 1]
cmp r10b, 0xbc
jne 0x526175
mov r10, rsi
sub rsi, rcx
lea rcx, [rsi - 1]
mov rdx, qword [rsp + 0xa8]
cmp rcx, rdx
ja 0x526270
cmp r9, rcx
jb 0x526265
mov r9, r10
sub r10, rsi
mov r11, rdx
sub rdx, rsi
inc rdx
mov r12, rdx
neg rdx
sar rdx, 0x3f
and rdx, rcx
add rdx, rdi
shl r9, 3
sub r9, rbx
nop
test r9, r9
jl 0x526260
cmp r9, 8
sbb ebx, ebx
mov r13, rcx
mov rcx, r9
mov r14d, 0xffffffff
shr r14b, cl
and ebx, r14d
movzx r9d, byte [rdi]
mov r14d, ebx
not ebx
test r9b, bl
jne 0x52614d
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x68], rdx
mov byte [rsp + 0x47], r14b
mov qword [rsp + 0x48], r10
mov qword [rsp + 0xb8], rax
mov qword [rsp], rdi
mov qword [rsp + 8], r13
mov qword [rsp + 0x10], r11
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x18], rax
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x30], r10
mov qword [rsp + 0x38], r12
call fcn.00526700
mov rcx, qword [rsp + 0x58]
test rcx, rcx
jbe 0x526257
mov rbx, qword [rsp + 0x98]
movzx esi, byte [rbx]
movzx edi, byte [rsp + 0x47]
and edi, esi
mov byte [rbx], dil
mov rsi, qword [rsp + 0xb8]
nop dword [rax + rax]
test rsi, rsi
je 0x5260d7
mov rdi, qword [rsp + 0x60]
mov r8, rdi
sub rdi, rsi
lea rax, [rdi - 2]
mov rdx, qword [rsp + 0xa8]
cmp rdx, rax
jb 0x52624f
xor esi, esi
jmp 0x525ed0
inc rsi
cmp rax, rsi
jle 0x525f07
movzx r9d, byte [rbx + rsi]
test r9b, r9b
je 0x525ecd
mov rax, qword [0x00799de0]
mov rcx, qword [0x00799de8]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
cmp rcx, rax
jbe 0x52624a
movzx esi, byte [rdi + rbx - 2]
cmp sil, 1
jne 0x5260af
lea rax, [rdi - 1]
cmp rcx, rax
jb 0x526245
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], rax
lea rax, [0x006027a0]
mov qword [rsp], rax
call fcn.0040e620
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rax + 0x38]
mov rdx, qword [rsp + 0xc8]
mov qword [rsp], rdx
mov qword [rsp + 0x10], 8
mov qword [rsp + 0x18], 8
call rcx
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rax + 0x38]
mov rdx, qword [rsp + 0xc8]
mov qword [rsp], rdx
mov rbx, qword [rsp + 0x80]
mov qword [rsp + 8], rbx
mov rbx, qword [rsp + 0x88]
mov qword [rsp + 0x10], rbx
mov rbx, qword [rsp + 0x90]
mov qword [rsp + 0x18], rbx
call rcx
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rax + 0x38]
mov rdx, qword [rsp + 0xc8]
mov qword [rsp], rdx
mov rbx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x58]
sub rbx, rsi
inc rbx
mov rdi, rbx
neg rbx
sar rbx, 0x3f
mov r8, qword [rsp + 0x50]
and r8, rbx
mov rbx, qword [rsp + 0x98]
add rbx, r8
mov qword [rsp + 8], rbx
mov rbx, qword [rsp + 0x60]
sub rbx, rsi
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
call rcx
mov rax, qword [rsp + 0xc0]
mov rax, qword [rax + 0x30]
mov rcx, qword [rsp + 0xc8]
mov qword [rsp], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 8], xmm0
mov qword [rsp + 0x18], 0
call rax
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x48]
cmp rax, rdx
je 0x52607b
mov rax, qword [0x00799de0]
mov rcx, qword [0x00799de8]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov qword [rsp], rcx
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rax
call fcn.00402a60
cmp byte [rsp + 0x18], 0
je 0x526053
xorps xmm0, xmm0
movups xmmword [rsp + 0xd0], xmm0
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, qword [0x00799de0]
mov rcx, qword [0x00799de8]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
nop
mov qword [rsp], rbx
mov qword [rsp + 8], rcx
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x10], rax
mov byte [rsp + 0x18], 1
call fcn.00402f80
mov rax, qword [rsp + 0x20]
nop dword [rax]
test rax, rax
jl 0x526125
mov rdi, qword [rsp + 0x60]
sub rdi, rax
lea rsi, [rdi - 2]
mov rcx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x98]
nop
jmp 0x525ea9
mov rax, qword [0x00799de0]
mov rcx, qword [0x00799de8]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, qword [0x00799de0]
mov rcx, qword [0x00799de8]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, qword [0x00799de0]
mov rcx, qword [0x00799de8]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, qword [0x00799de0]
mov rcx, qword [0x00799de8]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rax, qword [0x00799de0]
mov rcx, qword [0x00799de8]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
lea rax, [0x00610ea0]
mov qword [rsp], rax
call fcn.0040e620
mov rax, qword [rsp + 8]
mov qword [rax + 8], 0x28
lea rcx, [0x00648858]
mov qword [rax], rcx
lea rcx, [0x00684140]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xd8], rax
mov rbp, qword [rsp + 0x70]
add rsp, 0x78
ret
mov rcx, rax
mov rax, qword [rsp + 0xb8]
jmp 0x525d1c
call fcn.0046c1a0
call fcn.0046c0e0
mov rcx, rax
call fcn.0046c160
xor eax, eax
call fcn.0046c0e0
nop
call fcn.00436980
mov rax, rcx
mov rcx, r9
call fcn.0046c1a0
call fcn.0046c160
mov rax, r9
mov rcx, rdi
nop dword [rax + rax]
call fcn.0046c0e0
nop
call fcn.00469f00
jmp fcn.00525cc0