Function at 0x1400d0fc0
Capabilities:
Encode data using base64

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x168
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xe0], 0xfffffffffffffffe
mov qword [rbp + 0xd0], rdx
mov rdi, rcx
mov r15, qword [rbp + 0x160]
mov r13, qword [rbp + 0x158]
movzx eax, word [rbp + 0x150]
cmp ax, 0x10
jbe 0x1400d1041
cmp r15, 3
ja 0x1400d105e
mov qword [rbp + 0x80], 0
mov qword [rbp + 0x88], 8
mov qword [rbp + 0x90], 0
mov eax, 8
xor ebx, ebx
xor r12d, r12d
jmp 0x1400d1549
mov esi, r9d
mov r12d, r8d
cmp ax, 3
jae 0x1400d10cc
mov byte [rbp + 0xdf], 3
mov ecx, 3
jmp 0x1400d10ec
mov r12, r15
shr r12, 2
mov rax, r15
shr rax, 0x3d
mov rbx, r12
shl rbx, 4
test rax, rax
jne 0x1400d182b
movzx eax, byte [0x140260201]
mov r14d, 8
mov edx, 8
mov rcx, rbx
call fcn.1400b4810
test rax, rax
je 0x1400d182e
add r15, 0xfffffffffffffffc
mov rdx, r15
shr rdx, 2
inc rdx
mov ecx, edx
and ecx, 3
cmp r15, 0xc
jae 0x1400d1481
xor ebx, ebx
test rcx, rcx
jne 0x1400d14e8
jmp 0x1400d1522
cmp ax, 5
jae 0x1400d10e0
mov byte [rbp + 0xdf], 2
mov ecx, 2
jmp 0x1400d10ec
mov byte [rbp + 0xdf], 1
mov ecx, 1
mov eax, 8
shr eax, cl
mov edx, 0xffffffff
mov ecx, eax
shl edx, cl
mov dword [rbp + 0xb4], eax
not edx
mov word [rbp + 0xdc], dx
mov qword [rbp - 0x60], 0
mov qword [rbp - 0x40], 0
lea rax, [rbp + 0xdf]
mov qword [rbp - 0x20], rax
lea rax, [rbp + 0xb4]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0xdc]
mov qword [rbp - 0x10], rax
lea rax, [rbp + 0x150]
mov qword [rbp - 8], rax
mov qword [rbp], r13
mov qword [rbp + 8], r15
mov dword [rbp + 0x10], 0x1000000
lea rcx, [rbp + 0x18]
lea rdx, [rbp - 0x60]
call fcn.1400d2480
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xc0], rax
movzx eax, byte [rbp + 0xdf]
mov ecx, eax
and ecx, 0x3f
cmp cl, 0x3e
jae 0x1400d17e8
mov ebx, 4
shl rbx, cl
mov r15, rbx
neg r15
and r15, qword [rbp + 0x28]
add cl, 2
mov r14, r15
shr r14, cl
cmp rbx, r15
jbe 0x1400d11ba
mov r10d, 8
xor ecx, ecx
mov qword [rbp + 0xc8], rcx
xor r14d, r14d
jmp 0x1400d123a
mov rax, r14
shr rax, 0x3b
mov rcx, r14
mov qword [rbp + 0xc8], r14
shl r14, 4
test rax, rax
jne 0x1400d1839
movzx eax, byte [0x140260201]
mov r13d, 8
mov edx, 8
mov rcx, r14
call fcn.1400b4810
test rax, rax
je 0x1400d183c
mov r10, rax
add rax, 8
xor r14d, r14d
mov rcx, qword [rbp + 0xc0]
nop dword [rax]
sub r15, rbx
mov qword [rax - 8], rcx
add rcx, rbx
mov qword [rax], rbx
inc r14
add rax, 0x10
cmp r15, rbx
jae 0x1400d1210
movzx eax, byte [rbp + 0xdf]
mov ebx, 4
mov ecx, eax
shl rbx, cl
and al, 0xf
movzx edx, r12w
mov r8d, edx
mov ecx, eax
shr r8d, cl
mov r9d, 0xffffffff
shl r9d, cl
not r9d
and r9d, edx
cmp r9w, 1
sbb r8w, 0xffff
test si, si
je 0x1400d1444
test r8w, r8w
je 0x1400d1444
movzx r8d, r8w
mov r11d, edx
shl r11d, 2
lea rax, [r8 - 1]
mov qword [rbp + 0x70], rax
imul rax, rbx
mov r9, r11
mov qword [rbp + 0x50], rax
sub r9, rax
movzx esi, si
lea rax, [rsi - 1]
imul rax, rdx
lea rcx, [r8 - 2]
imul rcx, rbx
lea r12, [rcx + rax*4]
shl rax, 2
mov r13, qword [rbp + 0xd0]
sub r13, rcx
sub r13, rax
mov rax, rsi
imul rax, r8
lea rax, [rax*4 - 7]
mov qword [rbp + 0x78], rax
mov qword [rbp + 0x48], r8
lea eax, [r8*4]
mov qword [rbp + 0x68], rax
mov r8, r9
mov qword [rbp + 0xb8], r10
mov qword [rbp + 0x58], r9
mov qword [rbp + 0x60], r11
jmp 0x1400d1332
mov r11, qword [rbp + 0x60]
mov r12, qword [rbp + 0x38]
sub r12, r11
mov r13, qword [rbp + 0x40]
add r13, r11
mov rax, qword [rbp + 0x68]
sub qword [rbp + 0x78], rax
mov rsi, qword [rbp + 0x30]
test rsi, rsi
mov r10, qword [rbp + 0xb8]
mov r8, qword [rbp + 0x58]
je 0x1400d1444
dec rsi
mov rax, rsi
imul rax, qword [rbp + 0x48]
add rax, qword [rbp + 0x70]
lea r15, [rax*4 + 1]
mov rax, qword [rbp + 0xd0]
cmp r15, rax
jae 0x1400d1704
mov rcx, rsi
imul rcx, r11
add rcx, qword [rbp + 0x50]
mov rdx, rax
sub rdx, rcx
jb 0x1400d17c3
cmp r8, rdx
ja 0x1400d17af
movzx eax, byte [rdi + r15]
cmp r14, rax
jbe 0x1400d17d4
mov qword [rbp + 0x30], rsi
shl eax, 4
mov rdx, qword [r10 + rax + 8]
cmp r8, rdx
ja 0x1400d179b
add rcx, rdi
add rax, r10
mov rdx, qword [rax]
call sub.VCRUNTIME140.dll_memcpy
mov r15, qword [rbp + 0x78]
mov qword [rbp + 0x40], r13
mov qword [rbp + 0x38], r12
mov rax, qword [rbp + 0x70]
mov rsi, rax
test rax, rax
je 0x1400d1300
nop word cs:[rax + rax]
mov rax, qword [rbp + 0xd0]
cmp r15, rax
jae 0x1400d1704
cmp r12, rax
ja 0x1400d1732
cmp rbx, r13
ja 0x1400d171b
movzx ecx, byte [rdi + r15]
cmp r14, rcx
jbe 0x1400d1749
shl ecx, 4
mov r8, qword [rbp + 0xb8]
mov rdx, qword [r8 + rcx + 8]
cmp rbx, rdx
jne 0x1400d175d
dec rsi
lea rax, [rdi + r12]
add rcx, r8
mov rdx, qword [rcx]
mov rcx, rax
mov r8, rbx
call sub.VCRUNTIME140.dll_memcpy
sub r12, rbx
add r13, rbx
add r15, 0xfffffffffffffffc
test rsi, rsi
jne 0x1400d13d0
jmp 0x1400d1300
mov rdx, qword [rbp + 0xc8]
test rdx, rdx
je 0x1400d1462
shl rdx, 4
mov r8d, 8
mov rcx, r10
call fcn.1400b4820
mov rdx, qword [rbp + 0x18]
test rdx, rdx
je 0x1400d16ef
mov r8d, 1
mov rcx, qword [rbp + 0xc0]
jmp 0x1400d16ea
and rdx, 0xfffffffffffffffc
lea r8, [rax + 0x38]
xor ebx, ebx
nop dword [rax + rax]
mov r9, r13
mov qword [r8 - 0x38], r13
mov qword [r8 - 0x30], 4
lea r10, [r13 + 4]
mov qword [r8 - 0x28], r10
mov qword [r8 - 0x20], 4
lea r10, [r13 + 8]
mov qword [r8 - 0x18], r10
mov qword [r8 - 0x10], 4
add r13, 0x10
add r9, 0xc
mov qword [r8 - 8], r9
mov qword [r8], 4
add rbx, 4
add r8, 0x40
cmp rdx, rbx
jne 0x1400d1490
lea r8, [rbx - 1]
test rcx, rcx
je 0x1400d1522
mov rdx, rbx
shl rdx, 4
add rdx, rax
add rdx, 8
neg rcx
xor r8d, r8d
nop dword [rax]
mov qword [rdx - 8], r13
add r13, 4
mov qword [rdx], 4
dec r8
add rdx, 0x10
cmp rcx, r8
jne 0x1400d1500
sub rbx, r8
lea r8, [rbx - 1]
mov qword [rbp + 0x80], r12
mov qword [rbp + 0x88], rax
mov qword [rbp + 0x90], rbx
mov edx, 0x100
cmp r8, 0xfe
ja 0x1400d1673
mov r8d, 0x100
sub r8, rbx
sub r12, rbx
mov rdx, rbx
cmp r12, r8
jae 0x1400d157a
lea rcx, [rbp + 0x80]
mov rdx, rbx
call fcn.1401bbbc0
mov rax, qword [rbp + 0x88]
mov rdx, qword [rbp + 0x90]
mov rcx, rdx
shl rcx, 4
add rcx, rax
cmp rbx, 0xff
je 0x1400d165e
mov r8d, 0xff
sub r8, rbx
mov eax, r8d
and eax, 7
lea r9, [rbx - 0xf8]
cmp r9, 7
jb 0x1400d1629
and r8, 0xfffffffffffffff8
lea r9, [0x1401e1780]
nop dword [rax + rax]
mov qword [rcx], r9
mov qword [rcx + 8], 4
mov qword [rcx + 0x10], r9
mov qword [rcx + 0x18], 4
mov qword [rcx + 0x20], r9
mov qword [rcx + 0x28], 4
mov qword [rcx + 0x30], r9
mov qword [rcx + 0x38], 4
mov qword [rcx + 0x40], r9
mov qword [rcx + 0x48], 4
mov qword [rcx + 0x50], r9
mov qword [rcx + 0x58], 4
mov qword [rcx + 0x60], r9
mov qword [rcx + 0x68], 4
mov qword [rcx + 0x70], r9
mov qword [rcx + 0x78], 4
sub rcx, 0xffffffffffffff80
add r8, 0xfffffffffffffff8
jne 0x1400d15c0
test rax, rax
je 0x1400d1654
lea r8, [0x1401e1780]
nop word cs:[rax + rax]
mov qword [rcx], r8
mov qword [rcx + 8], 4
add rcx, 0x10
dec rax
jne 0x1400d1640
xor rbx, 0xff
add rdx, rbx
lea rax, [0x1401e1780]
mov qword [rcx], rax
mov qword [rcx + 8], 4
inc rdx
mov qword [rbp + 0x90], rdx
mov r10, qword [rbp + 0xd0]
and r10, 0xfffffffffffffffc
je 0x1400d16cd
xor r8d, r8d
nop word [rax + rax]
movzx ecx, byte [rdi + r8 + 1]
cmp rdx, rcx
jbe 0x1400d178a
mov r9, qword [rbp + 0x88]
shl ecx, 4
mov rax, qword [r9 + rcx + 8]
cmp rax, 4
jne 0x1400d1771
add r9, rcx
mov rax, qword [r9]
mov eax, dword [rax]
mov dword [rdi + r8], eax
add r8, 4
cmp r10, r8
jne 0x1400d1690
mov rdx, qword [rbp + 0x80]
test rdx, rdx
je 0x1400d16ef
mov rcx, qword [rbp + 0x88]
shl rdx, 4
mov r8d, 8
call fcn.1400b4820
nop
add rsp, 0x168
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea r8, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
mov rcx, r15
mov rdx, rax
call fcn.1401c01d0
jmp 0x1400d1847
lea r8, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
mov rcx, rbx
mov rdx, r13
call fcn.1401c0570
jmp 0x1400d1847
lea r8, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
mov rcx, r12
mov rdx, rax
call fcn.1401c0500
jmp 0x1400d1847
lea r8, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
mov rdx, r14
call fcn.1401c01d0
jmp 0x1400d1847
lea r8, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
mov rcx, rbx
call fcn.1401c0690
jmp 0x1400d1847
lea r8, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
mov ecx, 4
mov rdx, rax
call fcn.1401c0690
jmp 0x1400d1847
lea r8, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
call fcn.1401c01d0
jmp 0x1400d1847
mov rcx, r8
lea r8, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
call fcn.1401c0570
jmp 0x1400d1847
mov rcx, r8
lea r8, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
call fcn.1401c0570
jmp 0x1400d1847
lea r8, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
mov rdx, rax
call fcn.1401c0500
jmp 0x1400d1847
lea r8, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
mov rcx, rax
mov rdx, r14
call fcn.1401c01d0
jmp 0x1400d1847
lea rax, [0x1401e0f10]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x88], 1
mov qword [rbp + 0x90], 8
xorps xmm0, xmm0
movups xmmword [rbp + 0x98], xmm0
lea rdx, str.C:Userskernel.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_webp_0.2.0_srclossless_transform.rs
lea rcx, [rbp + 0x80]
call fcn.1401c0020
jmp 0x1400d1847
xor r14d, r14d
mov rcx, r14
mov rdx, rbx
call fcn.1401bfe00
xor r13d, r13d
mov rcx, r13
mov rdx, r14
call fcn.1401bfe00
ud2