Function at 0x1400b4090
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov rax, qword [0x140260028]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov r15, qword [rcx + 0x10]
mov rax, qword [rcx + 0xc8]
mov r8b, byte [rax + 0x3b]
mov rdi, qword [r15 + 8]
sub rdi, qword [r15]
mov byte [rsp + 0x27], r8b
je 0x1400b4149
sar rdi, 4
mov rax, 0xffffffffffffffff
xor edx, edx
div rdi
mov rbx, 0xfffffffffffffffe
sub rbx, rdx
movabs r14, 0xaaaaaaaaaaaaaaaa
lea rsi, [rsp + 0x78]
mov qword [rsp + 0x78], r14
mov edx, 8
mov rcx, rsi
call fcn.1400bb920
mov rax, qword [rsp + 0x78]
cmp rax, rbx
ja 0x1400b40fb
xor edx, edx
div rdi
mov rdi, rdx
mov r8b, byte [rsp + 0x27]
mov al, byte [r15 + 0x18]
test al, 1
je 0x1400b414d
xor ebx, ebx
xor ebp, ebp
test rbp, rbp
je 0x1400b4845
cmp rbx, rbp
je 0x1400b4181
add rbx, 0xfffffffffffffff8
jne 0x1400b4139
jmp 0x1400b4480
xor edi, edi
jmp 0x1400b4124
mov rsi, qword [r15]
shl rdi, 4
add rdi, rsi
cmp rdi, qword [r15 + 8]
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x60], rdi
je 0x1400b41b7
movabs rbx, 0xfffffffc00000000
xor ebp, ebp
xor r12d, r12d
xor r13d, r13d
mov rdx, rdi
jmp 0x1400b42de
call fcn.1400b04b0
mov rdi, rax
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140149190
mov rcx, rdi
mov rdx, rbp
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.1400a8910
xor ebp, ebp
xor r12d, r12d
xor r13d, r13d
cmp rsi, rdi
jne 0x1400b479e
mov rbx, r12
cmp rbp, rbx
je 0x1400b41f6
movabs rcx, 0xfffffffc00000000
mov r12, rbp
mov r13, qword [r12]
mov al, byte [r13 + 9]
test al, 1
je 0x1400b48a3
add r12, 8
cmp r12, rbx
jne 0x1400b41dd
mov byte [r15 + 0x18], 1
jmp 0x1400b4130
xor eax, eax
jmp 0x1400b4277
sub r12, rbp
mov r14, r12
sar r14, 3
lea rax, [r14 + 1]
mov rcx, rax
shr rcx, 0x3d
jne 0x1400b493f
sub r13, rbp
mov rsi, r13
sar rsi, 2
cmp rsi, rax
cmovbe rsi, rax
movabs rax, 0x7ffffffffffffff8
cmp r13, rax
movabs rax, 0x1fffffffffffffff
cmovae rsi, rax
test rsi, rsi
je 0x1400b4200
cmp rsi, rax
ja 0x1400b4947
mov rbx, rdx
call fcn.1400b04b0
lea rdx, [rsi*8]
mov rcx, rax
xor r8d, r8d
call fcn.1400a8f70
mov rdx, rbx
shl r14, 3
add r14, rax
je 0x1400b4480
lea r13, [rax + rsi*8]
mov rbx, rdx
mov qword [r14], rdx
lea rsi, [r14 + 8]
sub r14, r12
mov rcx, r14
mov rdx, rbp
mov r8, r12
call fcn.14014ac10
test rbp, rbp
je 0x1400b42b8
call fcn.1400b04b0
mov rcx, rax
mov rdx, rbp
call fcn.1400a8910
mov rbp, r14
mov r12, rsi
mov r8b, byte [rsp + 0x27]
mov rdx, rbx
movabs rbx, 0xfffffffc00000000
add rdx, 0x10
cmp rdx, qword [r15 + 8]
je 0x1400b483d
mov al, byte [rdx + 9]
test al, 1
jne 0x1400b42d0
mov al, byte [rdx + 8]
test al, 1
je 0x1400b4308
cmp r12, r13
jae 0x1400b4204
test r12, r12
je 0x1400b4480
mov qword [r12], rdx
add r12, 8
jmp 0x1400b42d0
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], rbp
mov byte [rdx + 8], 1
mov qword [rsp + 0x68], rdx
mov rax, qword [rdx]
mov rcx, rax
and rcx, 0xffffffffffe00000
mov qword [rsp + 0x28], rcx
mov r13, rax
and r13, rbx
cmp r13, qword [0x140262688]
je 0x1400b4363
cmp r13, qword [0x140262680]
je 0x1400b4363
mov rcx, qword [0x140262698]
and rcx, qword [rsp + 0x28]
cmp rcx, qword [0x140262690]
jne 0x1400b4944
mov rcx, qword [rsp + 0x28]
lea rdx, [rcx + 0x4000]
mov qword [rsp + 0x50], rdx
mov r12, qword [rax + 0x1000]
or rcx, 0x1000
mov qword [rsp + 0x38], rcx
xor r15d, r15d
jmp 0x1400b439c
inc r15
cmp r15, 0x1000
je 0x1400b486a
mov rax, qword [rsp + 0x50]
mov rbx, qword [rax + r15*8]
test rbx, rbx
je 0x1400b438c
mov rdi, r15
shl rdi, 9
mov rsi, r15
and rsi, 0xffffffffffffffe0
add rsi, qword [rsp + 0x38]
add rdi, qword [rsp + 0x28]
mov qword [rsp + 0x58], rdi
shr rdi, 0xd
and edi, 0x1fffff
jmp 0x1400b4426
shl ecx, 3
or rcx, qword [rsp + 0x58]
xor edx, edx
mov r8, r14
call fcn.14014b2c0
mov r8b, byte [rsp + 0x27]
add r14, 0x1fff
cmp r14, 0x2000
jb 0x1400b441a
shr r14, 0xd
add r14, rdi
mov rax, rdi
cmp rax, 0x200000
je 0x1400b4480
mov byte [r13 + rax], 1
inc rax
cmp rax, r14
jb 0x1400b4404
not rbp
and rbx, rbp
je 0x1400b438c
tzcnt rcx, rbx
and ecx, 0x3e
mov ebp, 3
shl rbp, cl
mov rax, rbx
shr rax, cl
and eax, 3
lea edx, [rax - 1]
xor eax, edx
cmp eax, edx
jbe 0x1400b441a
movzx edx, byte [rsi + 0x1e]
and edx, 0x3f
shl edx, 5
mov rax, rsi
sub rax, rdx
test byte [rax + 0x1b], 8
jne 0x1400b4891
mov rax, qword [rax + 0x10]
mov r14d, dword [rax + 0x18]
mov eax, dword [r12 + 0x14]
sub r14, rax
test r8b, r8b
jne 0x1400b43ea
jmp 0x1400b43d3
ud2
inc r15
cmp r15, 0x1000
je 0x1400b474d
mov rax, qword [rsp + 0x50]
mov rdi, qword [rax + r15*8]
test rdi, rdi
je 0x1400b4482
mov rbp, r15
shl rbp, 9
mov rsi, r15
and rsi, 0xffffffffffffffe0
add rsi, qword [rsp + 0x38]
add rbp, qword [rsp + 0x28]
mov qword [rsp + 0x58], rbp
shr rbp, 0xd
and ebp, 0x1fffff
jmp 0x1400b451e
shl ecx, 3
or rcx, qword [rsp + 0x58]
xor edx, edx
mov r8, r14
call fcn.14014b2c0
mov r8b, byte [rsp + 0x27]
add r14, 0x1fff
cmp r14, 0x2000
jb 0x1400b4512
shr r14, 0xd
add r14, rbp
mov rax, rbp
cmp rax, 0x200000
je 0x1400b4480
mov byte [rbx + rax], 1
inc rax
cmp rax, r14
jb 0x1400b44fa
not r13
and rdi, r13
je 0x1400b4482
tzcnt rcx, rdi
and ecx, 0x3e
mov r13d, 3
shl r13, cl
mov rax, rdi
shr rax, cl
and eax, 3
lea edx, [rax - 1]
xor eax, edx
cmp eax, edx
jbe 0x1400b4512
movzx edx, byte [rsi + 0x1e]
and edx, 0x3f
shl edx, 5
mov rax, rsi
sub rax, rdx
test byte [rax + 0x1b], 8
jne 0x1400b489a
mov rax, qword [rax + 0x10]
mov r14d, dword [rax + 0x18]
mov eax, dword [r12 + 0x14]
sub r14, rax
test r8b, r8b
jne 0x1400b44e0
jmp 0x1400b44c9
mov rcx, qword [rsp + 0x38]
inc rcx
cmp rcx, 0x1000
je 0x1400b4918
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x38], rcx
mov r15, qword [rax + rcx*8]
test r15, r15
je 0x1400b4579
mov rax, qword [rsp + 0x38]
mov rcx, rax
shl rcx, 9
mov r10, rax
and r10, 0xffffffffffffffe0
add r10, qword [rsp + 0x60]
add rcx, qword [rsp + 0x30]
mov qword [rsp + 0x50], rcx
shr rcx, 0xd
and ecx, 0x1fffff
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x28], r10
jmp 0x1400b4636
shl ecx, 3
or rcx, qword [rsp + 0x50]
xor edx, edx
mov r8, rdi
call fcn.14014b2c0
mov r10, qword [rsp + 0x28]
mov r8b, byte [rsp + 0x27]
add rdi, 0x1fff
cmp rdi, 0x2000
jb 0x1400b462a
shr rdi, 0xd
mov rax, qword [rsp + 0x58]
add rdi, rax
cmp rax, 0x200000
je 0x1400b4480
mov byte [r14 + rax], 1
inc rax
cmp rax, rdi
jb 0x1400b4611
not rbp
and r15, rbp
je 0x1400b4579
tzcnt rcx, r15
and ecx, 0x3e
mov ebp, 3
shl rbp, cl
mov rax, r15
shr rax, cl
and eax, 3
lea edx, [rax - 1]
xor eax, edx
cmp eax, edx
jbe 0x1400b462a
movzx edx, byte [r10 + 0x1e]
and edx, 0x3f
shl edx, 5
mov rax, r10
sub rax, rdx
test byte [rax + 0x1b], 8
jne 0x1400b4936
mov rax, qword [rax + 0x10]
mov edi, dword [rax + 0x18]
mov eax, dword [rsi + 0x14]
sub rdi, rax
test r8b, r8b
jne 0x1400b45f5
jmp 0x1400b45d9
xor eax, eax
jmp 0x1400b4702
sub r12, rbp
mov r14, r12
sar r14, 3
lea rax, [r14 + 1]
mov rcx, rax
shr rcx, 0x3d
jne 0x1400b493f
mov rbx, rsi
sub r13, rbp
mov rsi, r13
sar rsi, 2
cmp rsi, rax
cmovbe rsi, rax
movabs rax, 0x7ffffffffffffff8
cmp r13, rax
movabs rax, 0x1fffffffffffffff
cmovae rsi, rax
test rsi, rsi
je 0x1400b468e
cmp rsi, rax
ja 0x1400b494d
call fcn.1400b04b0
lea rdx, [rsi*8]
mov rcx, rax
xor r8d, r8d
call fcn.1400a8f70
shl r14, 3
add r14, rax
je 0x1400b4480
lea r13, [rax + rsi*8]
mov rsi, rbx
mov qword [r14], rbx
lea rbx, [r14 + 8]
sub r14, r12
mov rcx, r14
mov rdx, rbp
mov r8, r12
call fcn.14014ac10
test rbp, rbp
je 0x1400b4743
call fcn.1400b04b0
mov rcx, rax
mov rdx, rbp
call fcn.1400a8910
mov rbp, r14
mov r8b, byte [rsp + 0x27]
jmp 0x1400b478e
mov rsi, qword [rsp + 0x68]
mov byte [rsi + 9], 1
mov rbx, qword [rsp + 0x40]
mov r15, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x60]
mov r13, qword [rsp + 0x30]
jmp 0x1400b478e
cmp r12, r13
jae 0x1400b4692
test r12, r12
je 0x1400b4480
mov qword [r12], rsi
add r12, 8
mov rbx, r12
add rsi, 0x10
mov r12, rbx
cmp rsi, rdi
je 0x1400b41cb
mov al, byte [rsi + 9]
test al, 1
jne 0x1400b478b
mov al, byte [rsi + 8]
test al, 1
jne 0x1400b4771
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], rbp
mov byte [rsi + 8], 1
mov qword [rsp + 0x68], rsi
mov rax, qword [rsi]
mov rcx, rax
and rcx, 0xffffffffffe00000
mov qword [rsp + 0x28], rcx
mov rbx, rax
movabs rcx, 0xfffffffc00000000
and rbx, rcx
cmp rbx, qword [0x140262688]
je 0x1400b4811
cmp rbx, qword [0x140262680]
je 0x1400b4811
mov rcx, qword [0x140262698]
and rcx, qword [rsp + 0x28]
cmp rcx, qword [0x140262690]
jne 0x1400b494a
mov rcx, qword [rsp + 0x28]
lea rdx, [rcx + 0x4000]
mov qword [rsp + 0x50], rdx
mov r12, qword [rax + 0x1000]
or rcx, 0x1000
mov qword [rsp + 0x38], rcx
xor r15d, r15d
jmp 0x1400b4492
mov rsi, qword [r15]
jmp 0x1400b41bf
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140149190
nop
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, qword [rsp + 0x68]
mov byte [rdx + 9], 1
mov r15, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
mov r13, qword [rsp + 0x30]
jmp 0x1400b42c6
mov r14, qword [rax + 0x20]
jmp 0x1400b446a
mov r14, qword [rax + 0x20]
jmp 0x1400b4563
mov qword [rsp + 0x48], rbp
mov byte [r13 + 8], 1
mov rax, qword [r13]
mov rdx, rax
and rdx, 0xffffffffffe00000
mov qword [rsp + 0x30], rdx
mov r14, rax
and r14, rcx
cmp r14, qword [0x140262688]
je 0x1400b48ed
cmp r14, qword [0x140262680]
je 0x1400b48ed
mov rcx, qword [0x140262698]
and rcx, qword [rsp + 0x30]
cmp rcx, qword [0x140262690]
jne 0x1400b4950
mov rcx, qword [rsp + 0x30]
lea rdx, [rcx + 0x4000]
mov qword [rsp + 0x40], rdx
mov rsi, qword [rax + 0x1000]
or rcx, 0x1000
mov qword [rsp + 0x60], rcx
xor ecx, ecx
jmp 0x1400b458e
mov byte [r13 + 9], 1
mov r15, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x48]
movabs rcx, 0xfffffffc00000000
jmp 0x1400b41ed
mov rdi, qword [rax + 0x20]
jmp 0x1400b467a
call fcn.1400b7900
int3
int3
int3
int3
int3