Function at 0x140073120
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rsi
push rdi
push rbx
movzx r9d, byte [rdx + 0x38]
movzx r8d, byte [rdx + 0x3a]
test r8b, r8b
setne al
cmp r9b, 1
ja 0x140073196
test r8b, r8b
jne 0x14007317a
movzx esi, byte [rdx + 0x10]
lea r8d, [rsi - 5]
cmp r8b, 1
ja 0x14007317a
mov r10, qword [rdx]
mov r8, qword [rdx + 8]
xor r11d, r11d
test r9b, r9b
jne 0x140073171
cmp sil, 6
je 0x140073171
mov r11d, 2
cmp r8, 1
jbe 0x140073365
cmp r11, r8
jne 0x1400732c3
xor r8d, r8d
test r9b, r9b
jne case.default.0x1400732b3
movzx r9d, byte [rdx + 0x10]
cmp r9, 6
jne 0x1400732a5
xor r9d, r9d
jmp 0x14007319e
xor eax, eax
xor r8d, r8d
xor r9d, r9d
movzx r11d, r8b
movzx edi, al
lea r10, [r11 + rdi]
add r10, r9
mov rax, qword [rdx + 8]
cmp r10, rax
ja 0x140073365
mov rsi, qword [rdx]
lea r8, [rsi + r10]
cmp r10, rax
jne 0x1400731ce
movzx edx, byte [rdx + 0x10]
xor r11d, r11d
jmp 0x140073249
movzx edx, byte [rdx + 0x10]
add r9, rdi
add r9, r11
sub r9, rax
inc r9
lea rdi, [rax + rsi]
dec rdi
xor r11d, r11d
cmp dl, 3
jae 0x140073210
nop dword [rax]
cmp byte [rdi], 0x5c
je 0x14007322b
inc r9
dec rdi
cmp r9, 1
jne 0x1400731f0
jmp 0x140073249
movzx ebx, byte [rdi]
cmp ebx, 0x2f
je 0x14007322b
cmp ebx, 0x5c
je 0x14007322b
inc r9
dec rdi
cmp r9, 1
jne 0x140073210
jmp 0x140073249
neg r9
add r10, r9
inc r10
cmp r10, rax
ja 0x140073365
add rsi, r10
mov r11d, 1
mov r8, rsi
sub rax, r10
je 0x140073277
mov r9b, 9
cmp rax, 2
je 0x14007327c
cmp rax, 1
jne 0x14007328f
cmp byte [r8], 0x2e
jne 0x14007328f
xor r9d, r9d
cmp dl, 3
setae r9b
lea r9d, [r9 + r9*2]
add r9d, 7
jmp 0x14007328f
mov r9b, 0xa
jmp 0x14007328f
cmp byte [r8], 0x2e
jne 0x14007328f
cmp byte [r8 + 1], 0x2e
sete r9b
xor r9b, 9
add r11, rax
mov qword [rcx], r11
mov byte [rcx + 8], r9b
mov qword [rcx + 0x10], r8
mov qword [rcx + 0x18], rax
mov dword [rcx + 0x18], eax
pop rbx
pop rdi
pop rsi
ret
lea r10, [0x14018ddd0]
movsxd r9, dword [r10 + r9*4]
add r9, r10
jmp r9
mov r9, qword [rdx + 0x20]
add r9, 4
jmp 0x14007319e
add r8, r10
lea rsi, [r10 + r11]
inc rsi
cmp rsi, r8
sete r8b
movzx r10d, byte [r10 + r11]
test r8b, 1
jne 0x140073301
cmp r10b, 0x2e
jne 0x140073301
movzx r8d, byte [rsi]
cmp r8b, 0x5c
sete r10b
cmp r8b, 0x2f
sete r8b
or r8b, r10b
jmp 0x14007317d
cmp r10b, 0x2e
sete r10b
and r8b, r10b
jmp 0x14007317d
mov r9, qword [rdx + 0x20]
mov r10, qword [rdx + 0x30]
xor byte [rbp - 0x73], cl
pop rdx
add dword [rbp - 0x7b], ecx
ror byte [rbp + 0xf], cl
fimul dword [rbp + 1]
fimul dword [rbp + 1]
invalid
add r9, 8
jmp 0x14007319e
mov r9d, 6
jmp 0x14007319e
mov r9, qword [rdx + 0x20]
mov r10, qword [rdx + 0x30]
xor byte [rbp - 0x73], cl
pop rdx
add dword [rbp - 0x7b], ecx
ror byte [rbp + 0xf], cl
fimul dword [rbp + 1]
invalid
add r9, 2
jmp 0x14007319e
mov r9d, 2
jmp 0x14007319e
ud2
mov dword [rsp], eax
add r9, 4
lea r14, [0x14018dde8]
mov r12, r10
jmp 0x140073421
mov r8, qword [rsp + 8]
test r8, r8
jne case.0x1400734b2.2
mov byte [rdx + 0x38], 1
mov r13b, 1
mov r8, rbp
mov rbp, r8
cmp r13b, bl
ja 0x1400735ed
test r13b, r13b
je 0x1400734a0
movzx r8d, r13b
cmp r8d, 1
jne 0x1400734c0
mov byte [rdx + 0x38], 2
test dil, dil
jne case.0x1400730d4.18
mov r13b, 2
cmp eax, 3
jb 0x140073412
cmp eax, 5
je 0x140073412
cmp eax, 6
jne 0x140073628
test r12, r12
je 0x140073597
movzx r8d, byte [rbp]
cmp r12, 1
je 0x14007359f
cmp r8b, 0x2e
jne 0x14007359f
movzx r8d, byte [rbp + 1]
cmp r8d, 0x2f
je 0x1400735b3
add dword [rax], eax
invalid
cmp r8d, 0x5c
jne 0x140073412
jmp 0x1400735b3
cmp al, 6
je case.default.0x1400734b2
movsxd r11, dword [r14 + rax*4]
add r11, r14
mov r8, r9
jmp r11
mov r8, qword [rsp]
jmp case.0x1400734b2.0
test r12, r12
je 0x1400735e9
xor r15d, r15d
cmp al, 3
jae 0x1400734f0
cmp byte [rbp + r15], 0x5c
je 0x14007352d
inc r15
cmp r12, r15
jne 0x1400734d0
jmp 0x14007350a
movzx r8d, byte [rbp + r15]
cmp r8d, 0x2f
je 0x14007352d
cmp r8d, 0x5c
je 0x14007352d
inc r15
cmp r12, r15
jne 0x1400734f0
xor r8d, r8d
mov r15, r12
test r15, r15
jne 0x140073538
sub r12, r8
add r8, rbp
mov qword [rdx], r8
mov qword [rdx + 8], r12
mov r13b, 2
mov r10, r12
jmp 0x140073415
mov r8d, 1
test r15, r15
je 0x140073515
mov r10, rbp
mov r11d, esi
cmp r15, 1
je 0x14007355a
mov r11b, 9
cmp r15, 2
jne 0x14007356c
cmp byte [rbp], 0x2e
jne 0x14007356c
lea r10, [rbp + 1]
mov r11b, 8
cmp byte [r10], 0x2e
movzx r11d, r11b
mov r10d, 9
cmovne r11d, r10d
add r8, r15
sub r12, r8
jb case.default.0x14007365b
add r8, rbp
mov qword [rdx], r8
mov qword [rdx + 8], r12
mov r13b, 2
mov r10, r12
cmp r11b, 0xa
je 0x140073415
jmp 0x14007361b
xor r12d, r12d
jmp 0x140073412
cmp r12, 1
jne 0x140073412
cmp r8b, 0x2e
jne 0x140073412
test r10, r10
je case.default.0x14007365b
dec r10
inc rbp
mov qword [rdx], rbp
mov qword [rdx + 8], r10
mov byte [rcx], 7
jmp 0x1400735f0
test r10, r10
je case.default.0x14007365b
dec r10
inc rbp
mov qword [rdx], rbp
mov qword [rdx + 8], r10
mov byte [rcx], 6
add dword [rsi], eax
jmp 0x1400735f0
mov byte [rdx + 0x38], 3
mov byte [rcx], 0xa
add rsp, 0x10
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop rsi
pop r15
ret
mov byte [rdx + 0x38], 1
lea r8, [0x14018de00]
movsxd r11, dword [r8 + rax*4]
add r11, r8
jmp r11
mov r8, r9
jmp 0x140073648
mov byte [rcx], r11b
mov qword [rcx + 8], rbp
mov qword [rcx + 0x10], r15
jmp 0x1400735f0
mov byte [rcx], 6
jmp 0x1400735f0
mov r8, qword [rsp]
jmp 0x140073648
mov r8d, 6
jmp 0x140073648
mov r8, qword [rsp + 8]
jmp 0x140073648
mov r8d, 2
add byte [rax], al
add byte [rbp + 0x39], cl
sal byte [rdi + 0x61], 1
ja case.default.0x14007365b
cmp r8, r10
ja case.default.0x14007365b
lea r11, [0x14018de18]
movsxd rsi, dword [r11 + rax*4]
add byte [rcx + 0x63], cl
xor al, 0x83
add rsi, r11
jmp rsi
fdivp st(7)
out 0x4c, al
mov r9, qword [rsp]
mov r9, qword [rsp]
and al, 0xeb
adc eax, 0x6b941
mov r9d, 6
jmp case.0x14007365b.0
mov r9d, 6
jmp case.0x14007365b.0
mov r9, qword [rsp + 8]
jmp case.0x14007365b.0
mov r9d, 2
sub r10, r9
jb case.default.0x14007365b
add r9, rbp
mov qword [rdx], r9
mov qword [rdx + 8], r10
mov r9, qword [rdx + 0x30]
mov qword [rcx + 0x20], r9
movups xmm0, xmmword [rdx + 0x11]
movups xmm1, xmmword [rdx + 0x21]
movups xmmword [rcx + 0x11], xmm1
movups xmmword [rcx + 1], xmm0
mov byte [rcx], al
mov qword [rcx + 0x28], rbp
mov qword [rcx + 0x30], r8
jmp 0x1400735f0
invalid
invalid
invalid
invalid
ud2
cli
push rax
loop 0x14007376c
lea ecx, [rbx + 4]
add al, 0xeb
mov byte [r12 + 0x80], 6
add qword [rax], rax
add byte [rcx - 0x73], cl
add qword [rbp - 0x7b], rcx
add dword [rbp - 0x7b], ecx
add dword [rbp - 0x7b], ecx
ror byte [rcx + 0xf], cl
retf 0x14c
add byte [rax], al
add bl, ch
sbb dword [rcx - 0x73], ecx
lea rcx, [r10 + 1]
test r10, r10
cmove rcx, r10
invalid
invalid
add byte [rax], al
add eax, 0x2b9
add byte [rcx + rdi - 0xf], cl
mov dword [rsp + 0xe7], edx
add byte [rbx + rcx*4 + 0x64], cl
and al, 0x58
add byte [rcx + 0x158d48c0], cl
mov ah, byte [rsi + 0x634c0011]
cmpsb byte [rsi], byte [rdi]
adc dword [rax], eax
movsxd r8, dword [rdx + rax*4]
add eax, edx
mov dword [rsp + 0x88], edx
add byte [rax], al
jmp rax
fimul dword [rax - 0x7d]
ret 0x4808
cmove edx, edx
add edx, ebx
ret 0x4802
cmp ecx, esi
cmove eax, edx
lea ecx, [rbx + rax]
int1
stc
ror byte [rbp + rcx*4 + 0xd], 0xd1
movsd dword [rdi], dword [rsi]
adc dword [rax], eax
add ecx, eax
ror dword [rax - 0x7d], 0xc1
or bl, ch
jmp 0x1400738f5
mov ecx, 6
test eax, eax
invalid
invalid
lea ecx, [rsp + 0x40]
sub bh, bh
dec dword [rdi]
mov dh, 0x54
lea eax, [0x14018de98]
movsd dword [rdi], dword [rsi]
invalid
ror dword [rax + 1], 1
test byte [rax + rbp], ah
add dword [rax], eax
add byte [rax - 0x75], cl
test byte [rax + rdi*8], ah
add byte [rax], al
add byte [rax - 0x77], cl
test byte [rax + rsi], ah
add dword [rax], eax
add byte [rax - 0x75], cl
test byte [rax + rcx*4], ah
add byte [rax], al
add byte [rax - 0x77], cl
test byte [rax + rdi], ah
add dword [rax], eax
add byte [rsi - 0x39], ah
test byte [rax + rax*2], ah
add dword [rax], eax
add byte [rax], al
add al, byte [rax - 0x78]
mov byte [rsp + 0x142], sil
lea rcx, [rsp + 0x40]
test eax, eax
add byte [rbp + rcx*4 + 5], cl
xchg ebx, eax
lodsb al, byte [rsi]
and al, 0xf0
add byte [rax], al
add byte [rax], al
jmp r9
invalid
add byte [rax], al
jmp rcx
add eax, 4
add byte [rax], al
lodsb al, byte [rsi]
add byte [rax], al
add byte [rax], al
add byte [rax - 0x75], cl
invalid
invalid
test byte [rax + rax*8], ah
add byte [rax], al
add byte [rax], al
add byte [rax], al
add byte [rcx - 0x77], cl
xor byte ss:[rdi], cl
adc byte [rsp + 0x90], al
add byte [rax], al
add byte [rax], al
add byte [rax], al
movups xmmword [rsi + rsi + 0x20], xmm2
movups xmmword [rsi + rsi], xmm0
add byte [rax], al
add byte [rcx + rcx*4 - 0x17], cl
invalid
mov esp, 0x9024
cwde
dec dword [rax - 0x73]
push rcx
add byte [rax], al
add byte [rax - 0x75], cl
and al, 0x28
lea r12, [rsp + 0x90]
lea esp, [rsp + 0x90]
and al, 0x90
adc dword [rax], eax
shr bl, 0x1f
invalid
xchg edx, eax
invalid
jmp 0x140073f72
add dword [rax], eax
and byte [rax - 0x73], cl
pushfq
and al, 0x90
add byte [rax], al
add byte [rax], al
lea r14, [rsp + 0x40]
nop
invalid
xor byte [rax - 0x75], cl
and al, 0x28
invalid
and byte [rdi], cl
adc dword [rax + rcx + 1], eax
or byte [rcx], r8b
adc dword [rax + rcx + 0x11], ecx
mov dword [rax + rcx + 0x30], eax
and al, 0x30
mov ecx, ebx
add byte [rax], al
cmp ah, 0xa
invalid
mov eax, dword [rsp + 0x30]
mov ah, 0x48
mov dword [rsp + 0x30], eax
ror byte [rax - 0x7d], cl
sub edi, edi
movabs al, byte [0x4c04488d4d000000]
add al, 0x4c
mov dword [rsp + 0x28], ecx
lea ecx, [rdx + rax]
and al, 0x78
ret 0x8348
ret 0x4808
add byte [rax], al
push rax
add al, byte [rax]
add byte [rax - 0x77], cl
invalid
invalid
mov esp, 0x8824
and al, 0x88
add byte [rax], al
and al, 0x88
add byte [rax], al
add byte [rax - 0x7d], cl
inc dword [rdx]
add byte [rax + 0x39], cl
stc
enter 0xffffffffffff8440, 0xffffffffffffffed
invalid
iretd
push qword [rsi + 0x7d]
add byte [rax], al
add byte [rcx + rdi - 1], cl
cmp rdi, r15
add byte [rax - 0x77], cl
mov edx, edi
mov ah, 0x24
add byte [rax], 0
add byte [rax], al
call 0x1bc8848bd
cmp esp, 4
call 0xcb502a08
and al, 0x28
and al, 0x78
cmp edi, eax
sub edi, dword [rsp + 0x30]
and al, 0x88
add byte [rax], al
add byte [rax], al
invalid
invalid
add byte [rax], al
cmp esp, 4
add bl, ch
ret 0xb0f
ud2
ret 0x14c
add ecx, eax
cmp ebx, ecx
sub eax, ebx
not edx
and al, 0x38
mov dword [rsp + 0x30], 0
add byte [rax], al
invalid
pop rsi
adc byte [rcx - 0x3a], al
invalid
invalid
add al, 0x1e
invalid
push rsi
adc byte [rax - 1], cl
invalid
invalid
ret 0x8948
or byte [rdi], cl
mov dh, 0x4f
add cl, byte [rax + 0xf02104c]
adc byte [rdx], al
pcmpgtd mm1, qword [rcx - 0x7cb7eff4]
ret 0x4803
mov dword [rsi + 0x10], edx
add esp, 0x58
pop rsp
mov dword [rsi + 8], eax
mov esi, eax
mov esp, edi
jrcxz case.0x14007431c.351
xchg esi, eax
add eax, dword [rax]
add byte [rax], al
invalid
add byte [rax - 0x77], cl
push rsi
invalid
lea ecx, [rsp + 0x28]
sub al, ch
invalid
mov eax, dword [rsp + 0x30]
loope case.0x14007394b.82
insb byte [rdi], dx
mov ebx, dword [rax + 7]
mov ecx, esi
adc ecx, dword [rax - 0x7d]
sbb al, 0x48
add al, 0x48
or eax, 0x1b343d
sti
invalid
add byte [rax - 0x75], cl
sub al, 0x34
sbb eax, dword [rax]
invalid
add byte [rcx], dh
invalid
and byte [rdi], cl
out 0x10, al
invalid
invalid
mov dword [str._M_a_], eax
mov ecx, esi
add esp, 0x28
add byte [rax], al
add byte [rax + rdx*2 - 0x15], dh
invalid
add byte [rbp + rbp - 0x7f], dh
stc
sbb eax, dword fs:[rax]
sbb eax, dword [rax]
add byte [rax], al
sub byte [rax - 0x67e3cfc], dh
add byte [rbp + 0x15], dh
invalid
ret
or bl, al
add al, bl
invalid
nop word cs:[rax + rax]
add byte [rax], al
or byte [rbx + rcx*4 + 0x51], cl
and byte [rbx + r9*4 + 0x4a], cl
mov ecx, eax
test cl, bh
add byte [rdi], cl
mov dh, 0x92
ror byte [rdi], 0x84
sahf
add byte [rax], al
add byte [rsi - 0x39], ah
or al, 0x43
add byte [rax - 0x75], cl
and al, 0x20