Function at 0x140008704
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x1d0]
sub rsp, 0x2d0
mov rax, qword [0x1400481f8]
xor rax, rsp
mov qword [rbp + 0x1c0], rax
mov rdi, rcx
mov dword [rsp + 0x30], 0x4e0000
xor esi, esi
lea rcx, [rbp + 0x170]
mov rbx, r8
mov qword [rsp + 0x38], rcx
mov rax, rdx
cmp qword [rdi + 0x190], rsi
je 0x140008b1b
lea rdx, [rsp + 0x30]
mov rcx, rax
call qword [sym.imp.ntdll.dll_RtlStringFromGUID]
lea r14d, [rsi + 1]
test byte [rsp + 0x30], r14b
jne 0x1400087fa
test byte [rsp + 0x32], r14b
jne 0x1400087fa
movzx ecx, word [rsp + 0x30]
movzx eax, word [rsp + 0x32]
cmp cx, ax
ja 0x1400087fa
mov edx, 0xfffe
cmp ax, dx
ja 0x1400087fa
mov r8, qword [rsp + 0x38]
test r8, r8
jne 0x1400087ac
test cx, cx
jne 0x1400087fa
test ax, ax
jne 0x1400087fa
movzx r9d, cx
lea rax, [rbp + 0x120]
shr r9, 1
lea rcx, [rbp + 0x120]
sub r8, rax
mov edx, 0x28
lea rax, [r9 - 0x28]
add rax, rdx
je 0x1400087e3
movzx eax, word [r8 + rcx]
mov word [rcx], ax
add rcx, 2
sub rdx, r14
jne 0x1400087c9
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov word [rax], si
movzx ecx, word [rbp + 0x120]
jmp 0x140008803
mov ecx, esi
mov word [rbp + 0x120], cx
mov r9d, dword [rbx + 0x6c]
lea rdx, [0x14003e420]
test cx, cx
mov dword [rsp + 0x44], 2
mov r15d, 0x10
mov dword [rsp + 0x54], r14d
lea rax, [rbp + 0x120]
mov dword [rsp + 0x40], r15d
cmove rax, rdx
mov dword [rsp + 0x50], r15d
mov qword [rsp + 0x48], rax
or r8, 0xffffffffffffffff
mov eax, dword [rbx + 0x168]
lea r12d, [r15 - 0xd]
mov dword [rsp + 0x58], eax
mov rcx, r8
mov eax, r9d
mov dword [rsp + 0x60], r15d
mul qword [rbx + 0x50]
mov dword [rsp + 0x64], r12d
test rdx, rdx
mov dword [rsp + 0x70], r15d
mov dword [rsp + 0x74], r14d
cmove rcx, rax
mov dword [rbp - 0x80], r15d
mov eax, dword [rbx + 0x164]
mov dword [rsp + 0x78], eax
mov eax, r9d
mul qword [rbx + 0x48]
mov qword [rsp + 0x68], rcx
mov rcx, r8
test rdx, rdx
mov dword [rbp - 0x7c], r12d
mov dword [rbp - 0x70], r15d
cmove rcx, rax
mov dword [rbp - 0x6c], r14d
mov eax, dword [rbx + 0x20]
mov dword [rbp - 0x68], eax
mov eax, dword [rbx + 0x18]
mov dword [rbp - 0x58], eax
mov eax, r9d
mul qword [rbx + 0x30]
mov qword [rbp - 0x78], rcx
mov rcx, r8
test rdx, rdx
mov dword [rbp - 0x60], r15d
mov dword [rbp - 0x5c], r14d
cmove rcx, rax
mov dword [rbp - 0x50], r15d
mov qword [rbp - 0x48], rcx
mov eax, r9d
mul qword [rbx + 0x28]
mov rcx, r8
mov dword [rbp - 0x4c], r12d
test rdx, rdx
mov dword [rbp - 0x40], r15d
mov dword [rbp - 0x3c], r12d
cmove rcx, rax
mov dword [rbp - 0x30], r15d
mov eax, dword [rbx]
mov dword [rbp + 0x18], eax
mov eax, r9d
mul qword [rbx + 0x88]
mov qword [rbp - 0x38], rcx
mov rcx, r8
test rdx, rdx
mov qword [rbp - 0x2c], r14
mov dword [rbp - 0x20], r15d
cmove rcx, rax
mov qword [rbp - 0x1c], r14
mov qword [rbp + 0x28], rcx
mov dword [rbp - 0x10], r15d
mov qword [rbp - 8], rsi
mov dword [rbp - 0xc], r12d
mov dword [rbp], r15d
mov qword [rbp + 8], rsi
mov dword [rbp + 4], r12d
mov dword [rbp + 0x10], r15d
mov dword [rbp + 0x14], r14d
mov dword [rbp + 0x20], r15d
mov dword [rbp + 0x24], r12d
mov eax, dword [rbx + 0x60]
mov rcx, r8
mov r11, qword [rbx + 0x148]
mov r10, qword [rbx + 0x140]
mov dword [rbp + 0x38], eax
mov eax, dword [rbx + 0x64]
mov dword [rbp + 0x48], eax
mov eax, dword [rbx + 0x158]
mov dword [rbp + 0x58], eax
mov eax, dword [rbx + 0x154]
mov dword [rbp + 0x78], eax
mov eax, dword [rbx + 0x15c]
mov dword [rbp + 0x88], eax
mov eax, dword [rbx + 0x160]
mov dword [rbp + 0x98], eax
mov eax, r9d
mul r11
mov dword [rbp + 0x30], r15d
test rdx, rdx
mov dword [rbp + 0x34], r14d
mov dword [rbp + 0x40], r15d
cmove rcx, rax
mov dword [rbp + 0x44], r14d
mov qword [rbp + 0xa8], rcx
mov eax, r9d
mul r10
mov rcx, r8
mov dword [rbp + 0x50], r15d
test rdx, rdx
mov dword [rbp + 0x54], r14d
mov dword [rbp + 0x60], r15d
cmove rcx, rax
mov qword [rbp + 0x64], r14
mov qword [rbp + 0xb8], rcx
mov rcx, qword [rbx + 0x40]
mov dword [rbp + 0x70], r15d
mov dword [rbp + 0x74], r14d
mov dword [rbp + 0x80], r15d
mov dword [rbp + 0x84], r14d
mov dword [rbp + 0x90], r15d
mov dword [rbp + 0x94], r14d
mov dword [rbp + 0xa0], r15d
mov dword [rbp + 0xa4], r12d
mov dword [rbp + 0xb0], r15d
mov dword [rbp + 0xb4], r12d
cmp rcx, r11
ja 0x140008a2c
mov rcx, rsi
jmp 0x140008a3f
sub rcx, r11
mov rax, r9
mul rcx
mov rcx, r8
test rdx, rdx
cmove rcx, rax
mov qword [rbp + 0xc8], rcx
mov rcx, qword [rbx + 0x38]
mov dword [rbp + 0xc0], r15d
mov dword [rbp + 0xc4], r12d
cmp rcx, r10
ja 0x140008a62
mov r8, rsi
jmp 0x140008a72
sub rcx, r10
mov rax, r9
mul rcx
test rdx, rdx
cmove r8, rax
mov rcx, qword [rbx + 0x80]
mov eax, dword [rbx + 0x98]
mov dword [rbp + 0xd0], r15d
mov qword [rbp + 0xd8], r8
mov dword [rbp + 0xd4], r12d
mov dword [rbp + 0xe0], r15d
mov dword [rbp + 0xe8], eax
mov dword [rbp + 0xe4], r14d
test rcx, rcx
je 0x140008abf
imul rax, qword [rbx + 0x90], 0x2710
xor edx, edx
div rcx
jmp 0x140008ac1
mov eax, esi
mov rcx, qword [rdi + 0x190]
lea r9, [rsp + 0x40]
mov dword [rbp + 0xf8], eax
mov edx, 0x2fb6
mov eax, dword [rbx + 0x74]
mov r8d, 0x1e
mov dword [rbp + 0x118], eax
mov dword [rbp + 0xf0], r15d
mov dword [rbp + 0xf4], r14d
mov dword [rbp + 0x100], r15d
mov qword [rbp + 0x104], r14
mov dword [rbp + 0x110], r15d
mov dword [rbp + 0x114], r14d
mov dword [rsp + 0x20], esi
call qword [sym.imp.ntdll.dll_WinSqmAddToStreamEx]
mov rcx, qword [rbp + 0x1c0]
xor rcx, rsp
call fcn.14003b8a0
add rsp, 0x2d0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret