Function at 0x1400a8510
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xf8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x60], xmm9
movdqa xmmword [rbp + 0x50], xmm8
movdqa xmmword [rbp + 0x40], xmm7
movdqa xmmword [rbp + 0x30], xmm6
mov qword [rbp + 0x28], 0xfffffffffffffffe
mov r15, rdx
mov rdi, qword [rdx]
mov rax, qword [rdx + 8]
mov rsi, qword [rdx + 0x10]
mov rbx, rsi
mov qword [rbp + 0x18], rax
sub rbx, rax
test rdi, rdi
cmove rbx, rdi
mov r11, qword [rdx + 0x20]
mov r10, qword [rdx + 0x28]
mov r12, qword [rdx + 0x30]
mov r9, r12
sub r9, r10
test r11, r11
cmove r9, r11
mov r13, qword [rdx + 0x40]
test r13, r13
je 0x1400a85b8
mov r8, qword [r15 + 0x60]
test r8, r8
je 0x1400a89ed
mov rax, qword [r15 + 0x48]
mov rdx, rax
or rdx, r8
shr rdx, 0x20
je 0x1400a85c5
xor edx, edx
div r8
mov r14, rax
add rbx, r9
jae 0x1400a85d6
jmp 0x1400a8a6a
xor r14d, r14d
add rbx, r9
jae 0x1400a85d6
jmp 0x1400a8a6a
xor edx, edx
div r8d
mov r14d, eax
add rbx, r9
jb 0x1400a8a6a
mov rax, r14
shr rax, 0x3e
jne 0x1400a8a6a
shl r14, 2
add r14, rbx
jb 0x1400a8a6a
test r14, r14
mov qword [rbp - 8], rcx
mov qword [rbp - 0x48], r10
mov qword [rbp - 0x58], r11
mov qword [rbp - 0x60], rdi
je 0x1400a8631
js 0x1400a8ad8
movzx eax, byte [0x1401ed1c1]
mov edx, 1
mov rcx, r14
call fcn.140011190
test rax, rax
jne 0x1400a8636
mov ecx, 1
mov rdx, r14
call fcn.140148da0
mov eax, 1
mov qword [rbp], r14
mov qword [rbp + 0x20], rax
mov qword [rbp + 8], rax
mov qword [rbp + 0x10], 0
mov rax, qword [r15 + 0x18]
mov qword [rbp - 0x50], rax
mov rax, qword [r15 + 0x38]
mov rdi, qword [r15 + 0x48]
mov r15, qword [r15 + 0x60]
test r13, r13
mov qword [rbp - 0x40], rax
je 0x1400a8692
test r15, r15
je 0x1400a8a05
mov rax, rdi
or rax, r15
shr rax, 0x20
je 0x1400a8696
mov rax, rdi
xor edx, edx
div r15
mov rdx, rax
shr rdx, 0x3e
je 0x1400a86aa
jmp 0x1400a8a9f
xor eax, eax
jmp 0x1400a86aa
mov eax, edi
xor edx, edx
div r15d
mov rdx, rax
shr rdx, 0x3e
jne 0x1400a8a9f
shl rax, 2
add rbx, rax
jb 0x1400a8a9f
cmp r14, rbx
jae 0x1400a86e1
mov rcx, rbp
xor edx, edx
mov r8, rbx
call fcn.140140340
mov rax, qword [rbp + 8]
mov qword [rbp + 0x20], rax
mov rcx, qword [rbp + 0x10]
cmp qword [rbp - 0x60], 0
jne 0x1400a86ee
jmp 0x1400a8817
xor ecx, ecx
cmp qword [rbp - 0x60], 0
je 0x1400a8817
mov rax, qword [rbp - 0x50]
mov qword [rbp - 0x28], rax
mov r9, rsi
sub r9, qword [rbp + 0x18]
jne 0x1400a8707
mov rdx, rcx
jmp 0x1400a8814
cmp r9, 0x10
jae 0x1400a871d
mov rdx, rcx
mov r8, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x20]
jmp 0x1400a8800
mov r10, r9
and r10, 0xfffffffffffffff0
lea rdx, [rcx + r10]
mov rax, qword [rbp + 0x18]
lea r8, [rax + r10]
movq xmm0, rax
pshufd xmm0, xmm0, 0x44
movdqa xmm1, xmmword [0x140178090]
paddq xmm1, xmm0
movdqa xmm2, xmmword [0x1401780a0]
paddq xmm2, xmm0
movdqa xmm3, xmmword [0x1401780b0]
paddq xmm3, xmm0
movdqa xmm4, xmmword [0x1401780c0]
paddq xmm4, xmm0
movdqa xmm5, xmmword [0x1401780d0]
paddq xmm5, xmm0
movdqa xmm6, xmmword [0x1401780e0]
paddq xmm6, xmm0
movdqa xmm7, xmmword [0x1401780f0]
paddq xmm7, xmm0
paddq xmm0, xmmword [0x140178100]
add rcx, qword [rbp + 0x20]
lea r11, [rbp - 0x38]
add r11, rax
add r11, 0x10
xor ebx, ebx
movdqa xmm8, xmmword [0x140178110]
movups xmm9, xmmword [r11 + rbx]
movups xmmword [rcx + rbx], xmm9
add rbx, 0x10
paddq xmm0, xmm8
paddq xmm7, xmm8
paddq xmm6, xmm8
paddq xmm5, xmm8
paddq xmm4, xmm8
paddq xmm3, xmm8
paddq xmm2, xmm8
paddq xmm1, xmm8
cmp r10, rbx
jne 0x1400a87b0
cmp r9, r10
mov rcx, qword [rbp + 0x20]
je 0x1400a8814
nop word cs:[rax + rax]
movzx eax, byte [rbp + r8 - 0x28]
mov byte [rcx + rdx], al
inc rdx
inc r8
cmp rsi, r8
jne 0x1400a8800
mov rcx, rdx
test r13, r13
mov rax, qword [rbp + 0x20]
je 0x1400a8879
cmp rdi, r15
jb 0x1400a8879
test r15, r15
je 0x1400a8a22
cmp r15, 1
je 0x1400a8a37
cmp r15, 3
jb 0x1400a8a52
inc r13
nop word cs:[rax + rax]
sub rdi, r15
movzx edx, byte [r13 - 1]
movzx ebx, word [r13]
mov byte [rax + rcx], dl
mov byte [rax + rcx + 1], bl
mov byte [rax + rcx + 2], bh
mov byte [rax + rcx + 3], 0xff
add rcx, 4
add r13, r15
cmp rdi, r15
jae 0x1400a8850
cmp qword [rbp - 0x58], 0
je 0x1400a88a0
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x28], rax
mov r9, r12
mov rsi, qword [rbp - 0x48]
sub r9, rsi
mov rax, qword [rbp - 8]
jne 0x1400a88a9
mov rdx, rcx
jmp 0x1400a89b5
mov rax, qword [rbp - 8]
jmp 0x1400a89b8
cmp r9, 0x10
jae 0x1400a88be
mov rdx, rcx
mov r8, rsi
mov r9, qword [rbp + 0x20]
jmp 0x1400a89a0
mov r10, r9
and r10, 0xfffffffffffffff0
lea rdx, [rcx + r10]
lea r8, [rsi + r10]
movq xmm0, rsi
pshufd xmm0, xmm0, 0x44
movdqa xmm1, xmmword [0x140178090]
paddq xmm1, xmm0
movdqa xmm2, xmmword [0x1401780a0]
paddq xmm2, xmm0
movdqa xmm3, xmmword [0x1401780b0]
paddq xmm3, xmm0
movdqa xmm4, xmmword [0x1401780c0]
paddq xmm4, xmm0
movdqa xmm5, xmmword [0x1401780d0]
paddq xmm5, xmm0
movdqa xmm6, xmmword [0x1401780e0]
paddq xmm6, xmm0
movdqa xmm7, xmmword [0x1401780f0]
paddq xmm7, xmm0
paddq xmm0, xmmword [0x140178100]
add rcx, qword [rbp + 0x20]
lea r11, [rbp - 0x38]
add r11, rsi
add r11, 0x10
xor esi, esi
movdqa xmm8, xmmword [0x140178110]
nop dword [rax]
movups xmm9, xmmword [r11 + rsi]
movups xmmword [rcx + rsi], xmm9
add rsi, 0x10
paddq xmm0, xmm8
paddq xmm7, xmm8
paddq xmm6, xmm8
paddq xmm5, xmm8
paddq xmm4, xmm8
paddq xmm3, xmm8
paddq xmm2, xmm8
paddq xmm1, xmm8
cmp r10, rsi
jne 0x1400a8950
cmp r9, r10
mov r9, qword [rbp + 0x20]
je 0x1400a89b5
nop word cs:[rax + rax]
movzx ecx, byte [rbp + r8 - 0x28]
mov byte [r9 + rdx], cl
inc rdx
inc r8
cmp r12, r8
jne 0x1400a89a0
mov rcx, rdx
mov qword [rbp + 0x10], rcx
mov qword [rax + 0x10], rcx
movups xmm0, xmmword [rbp]
movups xmmword [rax], xmm0
movaps xmm6, xmmword [rbp + 0x30]
movaps xmm7, xmmword [rbp + 0x40]
movaps xmm8, xmmword [rbp + 0x50]
movaps xmm9, xmmword [rbp + 0x60]
add rsp, 0xf8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, str.attempt_to_divide_by_zerocapacity_overflow
lea r8, [0x1401784e0]
mov edx, 0x19
call fcn.140148fc0
lea rcx, str.attempt_to_divide_by_zerocapacity_overflow
lea r8, [0x1401784e0]
mov edx, 0x19
call fcn.140148fc0
jmp 0x1400a8ad6
lea r8, str.C:Users10549.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_0.24.9_srccodecswebpencoder.rs
xor ecx, ecx
xor edx, edx
call fcn.1401490c0
jmp 0x1400a8ad6
lea r8, str.C:Users10549.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_0.24.9_srccodecswebpencoder.rs
mov ecx, 1
mov edx, 1
call fcn.1401490c0
jmp 0x1400a8ad6
lea r8, str.C:Users10549.cargo_registry_srcindex.crates.io_6f17d22bba15001fimage_0.24.9_srccodecswebpencoder.rs
mov ecx, 2
mov edx, 2
call fcn.1401490c0
jmp 0x1400a8ad6
lea rax, [0x1401781a0]
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], 1
lea rax, [0x1401781b0]
mov qword [rbp - 0x28], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
lea rdx, [0x140178210]
lea rcx, [rbp - 0x38]
call fcn.140148ef0
lea rax, [0x1401781a0]
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], 1
lea rax, [0x1401781b0]
mov qword [rbp - 0x28], rax
pxor xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
lea rdx, [0x140178478]
lea rcx, [rbp - 0x38]
call fcn.140148ef0
ud2
call fcn.14012fc90
int3