Function at 0x140446d45
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbp
bts bp, r12w
ror ah, 0xe6
push rsi
clc
adc al, spl
push rdi
lea rbp, [rsp - 0x47]
xor ax, 0x34e8
sub rsp, 0xc0
mov qword [rbp - 0x11], 0xfffffffffffffffe
mov qword [rsp + 0xf0], rbx
xor bh, 0x33
shr bh, cl
movzx rbx, r15w
mov rax, qword [0x140043088]
mov bh, 0xba
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rbx, rdx
cmp r14d, esp
mov qword [rbp - 0x19], rdx
cmc
test r15w, r11w
test r9b, 0x70
mov qword [rbp - 0x29], rcx
cmp r13d, 0x23f21542
cmc
jmp 0x140446db3
xor esi, esi
test dil, r10b
cmp r8d, r12d
mov dword [rbp - 0x21], esi
cmc
test r8b, r8b
jmp 0x140446dc7
je 0x14044718e
mov qword [rbp + 0x2f], 0xf
mov qword [rbp + 0x27], rsi
mov byte [rbp + 0x17], sil
movsx cx, r12b
or r9, 0xffffffffffffffff
movzx ecx, dx
adc rcx, r9
bts rcx, r13
xor r8d, r8d
cmovs cx, si
lea rcx, [rbp + 0x17]
call fcn.140005a80
nop
rcr rdi, cl
lea rdi, [rbp + 0x17]
add dx, 0x23a7
sal bh, 0x7e
mov r8, qword [rbp + 0x17]
test r8w, 0x3555
mov rdx, qword [rbp + 0x2f]
btr bx, di
sbb ecx, ecx
cmp rdx, 0x10
bswap rcx
cmovae rdi, r8
xchg bh, bh
not ch
add rdi, qword [rbp + 0x27]
neg cx
bts ecx, ebx
lea rbx, [rbp + 0x17]
cmp rdx, 0x10
cmovae rbx, r8
bts rcx, rdx
sub ch, 0x92
add rbx, qword [rbp + 0x27]
adc ecx, ebp
movzx rcx, r9w
lea rcx, [rbp + 0x17]
jmp 0x140446e66
cmp rdx, 0x10
cwd
cmovae rcx, r8
movsx dx, ch
rol dx, cl
mov r8, rbx
sub rdx, 0x3dbd4928
sub r8, rcx
lea edx, [rsi + 0xd]
jmp 0x140446e8c
call fcn.14000db94
mov rcx, rbx
test ah, 0xa3
cmc
test rax, rax
jmp 0x140446ea0
cmovne rcx, rax
test eax, ebp
cmp rcx, rbx
je 0x140446f2d
lea rax, [rcx + 1]
neg dx
shl r9w, cl
mov edx, esi
bts r9d, r15d
dec r9b
mov r9, rbx
test r14, rdi
clc
sub r9, rax
stc
cmp rax, rbx
jmp 0x140446ed6
cmova r9, rsi
cmc
test r9, r9
jmp 0x140446ee3
je 0x140446f2d
movzx r8d, byte [rax]
cmp r8b, 0xd
jmp 0x140446ef6
je 0x140446f0c
mov byte [rcx], r8b
jmp 0x140446f04
inc rcx
jmp 0x140446f0c
inc rax
jmp 0x140446f14
inc rdx
stc
test r12d, 0x66643821
cmp rdx, r9
jmp 0x140446f27
jne 0x140446ee9
lea rax, [rbp + 0x17]
mov r8w, r9w
cmp r13b, r10b
add dx, 0x101b
cmp qword [rbp + 0x2f], 0x10
cmovs dx, r13w
cmovae rax, qword [rbp + 0x17]
mov rdx, rcx
sub rdx, rax
cmp r12, rcx
sub rdi, rcx
mov r8, rdi
lea rcx, [rbp + 0x17]
jmp 0x140446f64
call fcn.140005780
lea rdi, [rbp + 0x17]
clc
mov r8, qword [rbp + 0x17]
jmp 0x140446f77
mov rdx, qword [rbp + 0x2f]
test cx, si
bswap cx
cmp rdx, 0x10
cmovae rdi, r8
add rdi, qword [rbp + 0x27]
movzx ebx, r14w
rol bx, cl
lea rbx, [rbp + 0x17]
cmp esi, 0x2da81d26
test sil, cl
not ch
cmp rdx, 0x10
jmp 0x140446faf
cmovae rbx, r8
add rbx, qword [rbp + 0x27]
rol cl, 0xba
shld rcx, rbp, 0x28
bt ecx, r8d
lea rcx, [rbp + 0x17]
jmp 0x140446fcc
cmp rdx, 0x10
cmovae rcx, r8
movsx r8w, spl
or r8b, r14b
adc r8b, r9b
mov r8, rbx
not edx
sal dx, cl
movsx rdx, bp
sub r8, rcx
xchg dh, dl
movsxd rdx, ecx
bswap rdx
mov edx, 0xa
jmp 0x140447000
call fcn.14000db94
mov rcx, rbx
test rax, rax
cmovne rcx, rax
jmp 0x140447015
cmp rcx, rbx
jmp 0x14044701d
je 0x140447097
lea rax, [rcx + 1]
inc r8
shrd r8d, edx, 0x29
bswap r8
mov r8, rbx
sub r8, rax
cmp rax, rbx
jmp 0x140447040
cmova r8, rsi
stc
jmp 0x14044704a
test r8, r8
jmp 0x140447052
je 0x140447097
movzx edx, byte [rax]
clc
test r12d, r14d
cmp dl, 0xa
jmp 0x140447067
je 0x140447077
mov byte [rcx], dl
jmp 0x140447074
inc rcx
inc rax
inc rsi
cmp r11w, sp
test r13b, 0xb9
cmp ax, 0x4f36
cmp rsi, r8
jmp 0x140447091
jne 0x140447058
lea rax, [rbp + 0x17]
sal dx, cl
stc
cmp qword [rbp + 0x2f], 0x10
movzx rdx, r13w
setp dh
mov r8d, 0x66c621ef
cmovae rax, qword [rbp + 0x17]
movsxd r8, r13d
add edx, r10d
movzx r8d, r11w
mov rdx, rcx
sub rdx, rax
sub rdi, rcx
mov r8, rdi
lea rcx, [rbp + 0x17]
jmp 0x1404470d5
call fcn.140005780
xor r8d, r8d
mov dl, dil
seto bh
lea rdx, [rbp + 0x17]
mov rbx, qword [rbp - 0x29]
movsx ecx, r10w
mov rcx, rbx
call fcn.140446d45
nop
mov rax, qword [rbp + 0x2f]
cmp rax, 0x10
jmp 0x140447105
jb 0x140447afc
inc rax
rcr cl, cl
mov rcx, qword [rbp + 0x17]
test r10b, 0xb3
cmp rax, 0x1000
jb 0x140447af7
test cl, 0x1f
je 0x140447138
call fcn.1400121a0
int3
mov rax, qword [rcx - 8]
stc
cmp rax, rcx
jmp 0x140447145
jb 0x140447156
call fcn.1400121a0
int3
sub rcx, rax
stc
cmp rcx, 8
jmp 0x140447163
jae 0x140447174
call fcn.1400121a0
int3
cmp rcx, 0x27
jmp 0x14044717d
jbe 0x140447aef
call fcn.1400121a0
int3
mov rcx, qword [rdx + 0x10]
stc
adc dx, r8w
mov r9d, esi
mov dword [rbp - 0x49], esi
cqo
setl dh
bsr edx, esi
mov qword [rbp + 0xf], 0xf
mov rdx, rsi
cmc
clc
mov qword [rbp + 7], rdx
stc
mov byte [rbp - 9], dl
cmp ebp, 0x2e7408dc
test ecx, ecx
jmp 0x1404471c7
je 0x1404479d8
mov qword [rbp - 0x41], rsi
jmp 0x1404471d6
mov r8, rsi
jmp 0x1404471de
mov qword [rbp - 0x39], rsi
jmp 0x1404471e7
dec ecx
mov qword [rbp - 0x31], rcx
bsf cx, bx
mov rcx, qword [rbx + 0x18]
test ecx, ebx
cmp bpl, 0xc7
cmp r10d, r11d
cmp rcx, 0x10
jmp 0x140447207
jb 0x14044721a
mov rax, qword [rbx]
jmp 0x140447215
jmp 0x14044721d
mov rax, rbx
cmp byte [rax + r8], 0x3d
jmp 0x140447227
je 0x1404475be
cmp rcx, 0x10
jmp 0x140447236
jb 0x140447249
mov rax, qword [rbx]
jmp 0x140447244
jmp 0x140447257
mov rax, rbx
bswap cx
movzx rcx, r9w
movsx rdi, r11w
movzx edi, byte [rax + r8]
mov ecx, edi
call fcn.140011b90
test eax, eax
jne 0x14044727d
sub dil, 0x2b
test sil, 0x3e
test dil, 0xfb
jne 0x140447575
cmp qword [rbx + 0x18], 0x10
jmp 0x140447287
jb 0x14044729a
mov rax, qword [rbx]
jmp 0x140447295
jmp 0x1404472a4
mov rax, rbx
not rcx
movsx r8, dx
mov r8, qword [rbp - 0x39]
movzx r9d, ax
movzx eax, byte [rax + r8]
not r9d
mov rcx, qword [rbp - 0x41]
movzx r9w, r14b
movsx r9, si
jmp 0x1404472c6
mov byte [rbp + rcx - 0x59], al
xchg r9b, r9b
mov r9d, dword [rbp - 0x49]
jmp 0x1404472d6
inc r9d
jmp 0x1404472de
mov dword [rbp - 0x49], r9d
jmp 0x1404472e7
inc rcx
jmp 0x1404472ef
mov qword [rbp - 0x41], rcx
inc r8
mov qword [rbp - 0x39], r8
jmp 0x140447303
cmp rcx, 4
jmp 0x14044730c
jne 0x14044755d
mov rbx, rsi
nop word [rax + rax]
movzx eax, byte [rbp + rbx - 0x59]
mov dh, 0x1c
xchg dx, dx
cdq
mov byte [rbp - 0x51], al
movzx edx, bx
lea rdx, [rbp - 0x51]
call fcn.1400056d0
mov byte [rbp + rbx - 0x59], al
jmp 0x140447344
inc rbx
cmp rbx, 4
jl 0x140447320
movzx edx, byte [rbp - 0x58]
movzx ecx, dl
ror eax, cl
cmp r12b, 0xe4
shr cl, 4
jmp 0x14044736b
and cl, 3
bsf rax, rcx
btc rax, rcx
movzx eax, byte [rbp - 0x59]
mov dil, 0xfc
shr dil, cl
rol dil, cl
shl al, 2
add cl, al
and di, r15w
mov byte [rbp - 0x55], cl
movsx rcx, r10w
sbb ax, 0x2a79
shld rcx, r11, 0x5b
movzx ecx, byte [rbp - 0x57]
sar ah, 0x42
cbw
movzx eax, cl
bt rdi, 0x28
btc di, 0x75
xadd dil, dil
shr al, 2
mov dil, 0xfb
and al, 0xf
sal dil, 0x82
shl dl, 4
add al, dl
mov byte [rbp - 0x54], al
rcl dil, 0x2e
sub ah, 0x57
shr dh, 0xc9
shl cl, 6
movsx rdi, cx
add cl, byte [rbp - 0x56]
adc dil, r14b
shl eax, cl
and ax, r12w
mov byte [rbp - 0x53], cl
rcr al, 0xf9
btr rdx, r11
mov rdi, rsi
sar eax, cl
rcl dh, 0xea
movsx rcx, r13w
mov rdx, qword [rbp + 7]
rol rax, 0x93
clc
sub ax, di
nop dword [rax + rax]
sal ch, cl
movzx rax, r8w
movzx ecx, byte [rbp + rdi - 0x55]
mov rax, rdx
not rax
cmp rax, 1
jbe 0x1404475a7
lea rbx, [rdx + 1]
cmp rbx, 0xfffffffffffffffe
jmp 0x140447436
ja 0x140447590
cmp qword [rbp + 0xf], rbx
jmp 0x140447445
jae 0x140447477
mov r8, rdx
mov rdx, rbx
mov cx, 0x2b99
movsx cx, r11b
movzx cx, r11b
lea rcx, [rbp - 9]
call fcn.1400073f0
movzx ecx, byte [rbp + rdi - 0x55]
jmp 0x140447472
jmp 0x1404474b2
test rbx, rbx
jmp 0x14044747f
jne 0x1404474c8
mov qword [rbp + 7], rsi
bsr dx, r14w
xadd ax, dx
sar ah, cl
lea rax, [rbp - 9]
dec edx
cmp qword [rbp + 0xf], 0x10
movsx rdx, dx
setle dl
cmovae rax, qword [rbp - 9]
mov byte [rax], bl
rcr dh, 0x3f
not dh
mov rdx, qword [rbp + 7]
cmp dil, 0xf
test rbx, rbx
jmp 0x1404474c2
je 0x14044751e
lea rax, [rbp - 9]
test r8b, bl
cmp qword [rbp + 0xf], 0x10
cmovae rax, qword [rbp - 9]
jmp 0x1404474e2
mov byte [rdx + rax], cl
cmp r13b, 0x69
rdtsc
mov qword [rbp + 7], rbx
sbb al, r11b
cmp r14b, 0x93
lea rax, [rbp - 9]
cmp qword [rbp + 0xf], 0x10
mov dl, 0x7c
movsx dx, bl
cmovae rax, qword [rbp - 9]
movzx edx, r14w
mov dl, r9b
mov byte [rbx + rax], 0
mov rdx, qword [rbp + 7]
jmp 0x14044751e
inc rdi
cmp rdi, 3
jmp 0x14044752a
jl 0x140447414
mov r9d, esi
mov dword [rbp - 0x49], esi
movsx ebx, ax
mov r8w, di
mov qword [rbp - 0x41], rsi
movsx r8d, bx
movsxd rbx, r11d
mov rbx, qword [rbp - 0x19]
bswap r8d
mov r8, qword [rbp - 0x39]
jmp 0x140447558
jmp 0x140447561
mov rdx, qword [rbp + 7]
mov rcx, qword [rbp - 0x31]
test si, ax
test ecx, ecx
je 0x1404475be
jmp 0x1404471e7
mov rdx, qword [rbp + 7]
cmove r9w, bp
mov r9w, si
mov r9d, dword [rbp - 0x49]
jmp 0x14044758b
jmp 0x1404475be
lea rcx, str.string_too_long
jmp 0x14044759c
call fcn.14000b2c8
int3
lea rcx, str.string_too_long
jmp 0x1404475b3
call fcn.14000b2c8
int3
test r9d, r9d
jmp 0x1404475c6
je 0x1404479d8
movsxd rax, r9d
clc
cmp rax, 4
jmp 0x1404475d9
jge 0x140447612
jae 0x140447607
mov byte [rbp + rax - 0x59], 0
jmp 0x1404475ef
inc rax
cmc
cmp rax, 4
jmp 0x1404475fc
jl 0x1404475df
jmp 0x140447612
call fcn.14000c978
int3
mov qword [rbp - 0x31], rsi
sbb di, r11w
btc edx, ecx
mov rdi, qword [0x140045ce0]
rcr dh, cl
nop word [rax + rax]
and dh, 0xdf
btr ax, 0x9f
movzx dx, r14b
lea rdx, [rbp - 0x59]
cmc
sbb ax, r12w
lea rdx, [rdx + rsi]
jmp 0x140447651
movzx eax, byte [rdx]
test rdi, rdi
je 0x140447753
cmp rdi, 1
jb 0x140447753
lea rbx, [0x140045cd0]
cmc
cmp qword [0x140045ce8], 0x10
jmp 0x14044767c
cmovae rbx, qword [0x140045cd0]
clc
test rdi, rdi
jmp 0x14044768d
je 0x140447748
movsx edx, al
cmovns cx, si
mov ch, 0x1a
mov r8, rdi
cmovle cx, di
mov rcx, rbx
jmp 0x1404476ac
call fcn.14000db94
mov rcx, rax
lea rdx, [rbp - 0x59]
test al, 0xf7
test sil, cl
add rdx, rsi
stc
test sil, bl
test rax, rax
jmp 0x1404476cc
je 0x140447748
movzx eax, byte [rdx]
stc
cmp byte [rcx], al
jmp 0x1404476dd
je 0x140447706
sub rbx, rcx
dec rbx
cmp r15w, r13w
test dil, 0x4a
add rdi, rbx
mov ebx, 0x3fa74f4
movsx rbx, r12w
lea rbx, [rcx + 1]
jmp 0x140447685
lea rax, [0x140045cd0]
clc
rcr di, cl
cmp qword [0x140045ce8], 0x10
mov dil, spl
setle dil
cmovae rax, qword [0x140045cd0]
sal rdi, cl
bt di, 0xae
sub rcx, rax
movsx rdi, sp
mov rdi, qword [0x140045ce0]
jmp 0x140447743
jmp 0x14044775c
mov rdi, qword [0x140045ce0]
test r15b, bl
cmc
or rcx, 0xffffffffffffffff
jmp 0x14044775c
mov byte [rdx], cl
jmp 0x140447763
inc rsi
cmp spl, r15b
cmp rsi, 4
jmp 0x140447772
jl 0x14044763c
movzx edx, byte [rbp - 0x58]
cmovge ecx, r15d
movzx ecx, dl
lahf
shr cl, 4
and cl, 3
adc ax, 0x33c
movzx eax, byte [rbp - 0x59]
or r9w, ax
shl al, 2
add r9w, 0x89d
add cl, al
xchg r9b, al
mov byte [rbp - 0x55], cl
movzx ecx, byte [rbp - 0x57]
setns r9b
movzx eax, cl
adc r9b, 0x11
movzx r9d, dx
cmp r10d, 0x70884881
shr al, 2
mov r9d, 0x6e6d1840
shl r9b, 0x24
and al, 0xf
shl dl, 4
sar r9b, 0x12
movzx r9d, r10w
add al, dl
mov byte [rbp - 0x54], al
sub r9w, cx
shl cl, 6
sal r9, 0x4e
add cl, byte [rbp - 0x56]
mov byte [rbp - 0x53], cl
stc
clc
bsr rdx, rdi
xor esi, esi
xchg r9d, r9d
movsx rcx, r13w
mov ecx, esi
movsx rdx, r10w
xchg r9b, dl
mov dword [rbp - 0x59], ecx
movzx edx, r10w
mov r9d, dword [rbp - 0x49]
dec r9d
adc dl, bl
mov dword [rbp - 0x49], r9d
mov rdx, qword [rbp + 7]
stc
clc
test r9d, r9d
jmp 0x14044782b
jle 0x1404479d8
lea rdi, [rbp - 0x55]
nop
bswap ax
movzx rax, di
movzx r8d, byte [rdi]
shr al, cl
mov rax, rdx
test r11w, si
test r13w, 0x212d
not rax
stc
jmp 0x14044785a
cmp rax, 1
jmp 0x140447863
jbe 0x1404479c1
lea rbx, [rdx + 1]
cmp si, 0x173d
clc
cmp rbx, 0xfffffffffffffffe
jmp 0x14044787c
ja 0x1404479aa
cmp qword [rbp + 0xf], rbx
jmp 0x14044788b
jae 0x1404478cc
mov r8, rdx
mov rdx, rbx
movsxd rcx, r15d
setl cl
movzx rcx, ax
lea rcx, [rbp - 9]
jmp 0x1404478aa
call fcn.1400073f0
mov ecx, dword [rbp - 0x59]
movsx r8d, r8w
movzx r8d, r14w
movzx r8d, byte [rdi]
mov r9d, dword [rbp - 0x49]
jmp 0x1404478c7
jmp 0x140447907
test rbx, rbx
jmp 0x1404478d4
jne 0x14044791d
mov qword [rbp + 7], rsi
lea rax, [rbp - 9]
xadd rdx, rdx
not dl
cmp qword [rbp + 0xf], 0x10
cqo
mov dl, 0xb4
cmovae rax, qword [rbp - 9]
cqo
sbb dx, 0x3b1c
add dx, r9w
mov byte [rax], sil
dec dx
mov rdx, qword [rbp + 7]
test r9b, 0xec
test rbx, rbx
jmp 0x140447917
je 0x14044797a
lea rax, [rbp - 9]
cmp qword [rbp + 0xf], 0x10
jmp 0x14044792b
cmovae rax, qword [rbp - 9]
cmp r10b, bl
mov byte [rax + rdx], r8b
movsx dx, r13b
movzx rdx, ax
xor al, 0x60
mov qword [rbp + 7], rbx
add eax, eax
lea rax, [rbp - 9]
shl dh, cl
sal dx, cl
btc dx, 0x65
cmp qword [rbp + 0xf], 0x10
xchg dx, dx
movsx rdx, bx
cmovae rax, qword [rbp - 9]
movsxd rdx, r10d
mov byte [rax + rbx], sil
xchg rdx, rdx
mov rdx, qword [rbp + 7]
jmp 0x14044797a
inc ecx
jmp 0x140447981
mov dword [rbp - 0x59], ecx
jmp 0x140447989
inc rdi
jmp 0x140447997
cmp ecx, r9d
jmp 0x14044799f
jl 0x14044783e
jmp 0x1404479d8
lea rcx, str.string_too_long
jmp 0x1404479b6
call fcn.14000b2c8
int3
lea rcx, str.string_too_long
jmp 0x1404479cd
call fcn.14000b2c8
int3
call fcn.1400043a0
mov rcx, rax
jmp 0x1404479e5
call fcn.140007cf0
mov rbx, qword [rbp - 0x29]
test r13b, 0x6d
cmp r12b, 0x7e
mov qword [rbx + 0x18], 0xf
cmc
mov qword [rbx + 0x10], rsi
cmp qword [rbx + 0x18], 0x10
jb 0x140447a16
mov rax, qword [rbx]
jmp 0x140447a22
mov rax, rbx
xchg cl, cl
cmovs rcx, rbp
mov dx, bx
mov byte [rax], 0
movzx ecx, r14w
bswap cx
movzx dx, r9b
lea rdx, [rbp - 9]
mov cx, di
mov rcx, rbx
jmp 0x140447a40
call fcn.140005f40
nop
mov rax, qword [rbp + 0xf]
cmp spl, r15b
cmp rax, 0x10
jb 0x140447afc
inc rax
adc cl, 0xa4
bswap rcx
mov rcx, qword [rbp - 9]
jmp 0x140447a69
cmp rax, 0x1000
jmp 0x140447a74
jb 0x140447af7
test cl, 0x1f
jmp 0x140447a82
je 0x140447a93
call fcn.1400121a0
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jmp 0x140447a9f
jb 0x140447ab0
call fcn.1400121a0
int3
sub rcx, rax
cmp r9w, 0x5a37
cmc
clc
cmp rcx, 8
jmp 0x140447ac4
jae 0x140447ad5
call fcn.1400121a0
int3
cmp rcx, 0x27
jmp 0x140447ade
jbe 0x140447aef
call fcn.1400121a0
int3
mov rcx, rax
jmp 0x140447af7
call fcn.14000cdf0
mov rax, rbx
mov rcx, qword [rbp + 0x37]
cmp eax, 0x56295198
xor rcx, rsp
jmp 0x140447b10
call fcn.14000c540
mov rbx, qword [rsp + 0xf0]
add rsp, 0xc0
mov sil, 0x85
setne bpl
movzx rsi, r12w
pop rdi
jmp 0x140447b39
pop rsi
mov bpl, r10b
bswap rbp
movsxd rbp, r14d
pop rbp
jmp 0x140447b49
ret