Function at 0x140025620
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push rbp
sub rsp, 0xb0
lea rbp, [rsp + 0x20]
mov qword [rbp + 0x48], r15
mov qword [rbp + 0x40], r14
mov r14, rcx
mov qword [rbp + 0x38], r13
mov qword [rbp + 0x30], r12
mov r12, r8
mov qword [rbp + 0x28], rdi
xor edi, edi
mov qword [rbp + 0x20], rsi
mov rsi, rdx
mov qword [rbp + 0x50], rbx
mov qword [rbp + 0x18], 0xfffffffffffffffe
mov ecx, 0x20d1c
call fcn.140091ed0
mov r13, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x28f909af
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xa
sub edx, r8d
imul r9d, edx, 0xffffe702
add r10d, r9d
mov dword [r13 + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0x102
jl 0x14002566b
mov rcx, r13
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x871
jl 0x14002565c
xor edi, edi
mov ecx, 0x1eef4
call fcn.140091ed0
mov r13, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x2daf83cb
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xa
sub edx, r8d
imul r9d, edx, 0xffffe996
add r10d, r9d
mov dword [r13 + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0x113
jl 0x1400256d0
mov rcx, r13
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x810
jl 0x1400256c1
xor edi, edi
mov ecx, 0x1fc14
call fcn.140091ed0
mov r13, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x6e6c4427
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xc
sub edx, r8d
imul r9d, edx, 0xffffdae8
add r10d, r9d
mov dword [r13 + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0xe1
jl 0x140025735
mov rcx, r13
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x848
jl 0x140025726
xor edi, edi
mov ecx, 0x1bdc8
call fcn.140091ed0
mov r13, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x5bcfac7
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 8
sub edx, r8d
imul r9d, edx, 0xffffd363
add r10d, r9d
mov dword [r13 + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0x1af
jl 0x14002579a
mov rcx, r13
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x82e
jl 0x14002578b
xor edi, edi
mov ecx, 0xbfd4
call fcn.140091ed0
mov r13, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0xab526b5f
mov r8d, r10d
imul r10d
sar r8d, 0x1f
add edx, r10d
sar edx, 0xd
sub edx, r8d
imul r9d, edx, 0xffffd02f
add r10d, r9d
mov dword [r13 + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0x66
jl 0x1400257ff
mov rcx, r13
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x762
jl 0x1400257f0
mov edx, 0x100
lea rcx, [rbp + 0x60]
xor r13d, r13d
lea r8, [rbp + 0x58]
call fcn.1400265b0
nop
xor ebx, ebx
mov rdx, rbx
lea rcx, [rbp + 0x60]
call fcn.140026470
mov byte [rax], bl
inc rbx
cmp rbx, 0x100
jl 0x14002586b
mov rax, qword [r14 + 0x10]
xor edi, edi
sub rax, qword [r14 + 8]
xor ebx, ebx
mov qword [rbp], rax
xor r15d, r15d
mov ecx, 0xe328
call fcn.140091ed0
xor edx, edx
mov qword [rbp + 0x88], rsi
mov rsi, rdx
mov qword [rbp + 0x80], r12
mov r12d, r15d
mov r15, rax
call fcn.1400b14d0
mov r9d, eax
mov eax, 0x5a1180e7
mov ecx, r9d
imul r9d
sar ecx, 0x1f
sar edx, 0xc
sub edx, ecx
imul r8d, edx, 0xffffd286
add r9d, r8d
mov dword [r15 + rsi*4], r9d
call fcn.1400b14d0
inc rsi
cmp rsi, 0xc7
jl 0x1400258bb
mov rax, r15
mov edx, 4
mov rcx, rax
mov r15d, r12d
mov rsi, qword [rbp + 0x88]
mov r12, qword [rbp + 0x80]
call fcn.140091ef0
inc r15d
cmp r15d, 0x925
jl 0x140025898
xor r15d, r15d
mov ecx, 0x11d50
call fcn.140091ed0
xor edx, edx
mov qword [rbp + 0x88], rsi
mov rsi, rdx
mov qword [rbp + 0x80], r12
mov r12d, r15d
mov r15, rax
call fcn.1400b14d0
mov r9d, eax
mov eax, 0x1d2f7bc1
mov ecx, r9d
imul r9d
sar ecx, 0x1f
sar edx, 0xa
sub edx, ecx
imul r8d, edx, 0xffffdcea
add r9d, r8d
mov dword [r15 + rsi*4], r9d
call fcn.1400b14d0
inc rsi
cmp rsi, 0xca
jl 0x14002594c
mov rax, r15
mov edx, 4
mov rcx, rax
mov r15d, r12d
mov rsi, qword [rbp + 0x88]
mov r12, qword [rbp + 0x80]
call fcn.140091ef0
inc r15d
cmp r15d, 0x6ed
jl 0x140025929
xor r15d, r15d
mov ecx, 0x1bdb0
call fcn.140091ed0
mov rcx, rax
xor eax, eax
mov qword [rbp + 0x88], rsi
mov rsi, rax
mov qword [rbp + 0x80], r12
mov r12d, r15d
mov r15, rcx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x5f5e5219
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xc
sub edx, r8d
imul r9d, edx, 0xffffd50d
add r10d, r9d
mov dword [r15 + rsi*4], r10d
call fcn.1400b14d0
inc rsi
cmp rsi, 0x1da
jl 0x1400259e0
mov rcx, r15
mov edx, 4
mov rsi, qword [rbp + 0x88]
mov r15d, r12d
mov r12, qword [rbp + 0x80]
call fcn.140091ef0
inc r15d
cmp r15d, 0x7ed
jl 0x1400259ba
xor r15d, r15d
mov ecx, 0x20854
call fcn.140091ed0
mov rcx, rax
xor eax, eax
mov qword [rbp + 0x88], rsi
mov rsi, rax
mov qword [rbp + 0x80], r12
mov r12d, r15d
mov r15, rcx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x2830d351
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xb
sub edx, r8d
imul r9d, edx, 0xffffcd0b
add r10d, r9d
mov dword [r15 + rsi*4], r10d
call fcn.1400b14d0
inc rsi
cmp rsi, 0xf5
jl 0x140025a73
mov rcx, r15
mov edx, 4
mov rsi, qword [rbp + 0x88]
mov r15d, r12d
mov r12, qword [rbp + 0x80]
call fcn.140091ef0
inc r15d
cmp r15d, 0x936
jl 0x140025a4d
xor r15d, r15d
mov ecx, 0x23de0
call fcn.140091ed0
xor edx, edx
mov qword [rbp + 0x88], rsi
mov rsi, rdx
mov qword [rbp + 0x80], r12
mov r12d, r15d
mov r15, rax
call fcn.1400b14d0
mov r9d, eax
mov eax, 0xa3c3637
mov ecx, r9d
imul r9d
sar ecx, 0x1f
sar edx, 8
sub edx, ecx
imul r8d, edx, 0xffffe6fd
add r9d, r8d
mov dword [r15 + rsi*4], r9d
call fcn.1400b14d0
inc rsi
cmp rsi, 0xcf
jl 0x140025b03
mov rax, r15
mov edx, 4
mov rcx, rax
mov r15d, r12d
mov rsi, qword [rbp + 0x88]
mov r12, qword [rbp + 0x80]
call fcn.140091ef0
inc r15d
cmp r15d, 0xa81
jl 0x140025ae0
xor r15d, r15d
mov ecx, 0xc8f0
call fcn.140091ed0
mov rcx, rax
xor eax, eax
mov qword [rbp + 0x88], rsi
mov rsi, rax
mov qword [rbp + 0x80], r12
mov r12d, r15d
mov r15, rcx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x51f06fb5
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xc
sub edx, r8d
imul r9d, edx, 0xffffce03
add r10d, r9d
mov dword [r15 + rsi*4], r10d
call fcn.1400b14d0
inc rsi
cmp rsi, 0x189
jl 0x140025b97
mov rcx, r15
mov edx, 4
mov rsi, qword [rbp + 0x88]
mov r15d, r12d
mov r12, qword [rbp + 0x80]
call fcn.140091ef0
inc r15d
cmp r15d, 0x9f0
jl 0x140025b71
mov qword [rbp + 0x80], r12
xor r15d, r15d
mov dword [rbp + 8], ebx
mov dword [rbp + 0x10], edi
mov qword [rbp + 0x88], rsi
mov r12, qword [rbp]
mov rdx, r15
lea rcx, [rbp + 0x60]
call fcn.140026470
mov rbx, rax
mov rax, r15
xor edx, edx
div r12
mov rcx, r14
call fcn.140026510
movzx ebx, byte [rbx]
add ebx, r13d
movzx r13d, byte [rax]
add ebx, r13d
mov r13d, ebx
and r13d, 0x800000ff
jge 0x140025c62
sub r13d, 1
or r13d, 0xffffff00
inc r13d
mov rdx, r15
lea rcx, [rbp + 0x60]
call fcn.140026470
movsxd rdi, r13d
lea rcx, [rbp + 0x60]
mov rdx, rdi
mov sil, byte [rax]
call fcn.140026470
mov rdx, r15
lea rcx, [rbp + 0x60]
mov bl, byte [rax]
call fcn.140026470
mov rdx, rdi
lea rcx, [rbp + 0x60]
mov byte [rax], bl
call fcn.140026470
inc r15
mov byte [rax], sil
cmp r15, 0x100
jl 0x140025c1c
mov ebx, dword [rbp + 8]
xor r14d, r14d
mov edi, dword [rbp + 0x10]
mov rsi, qword [rbp + 0x88]
mov r12, qword [rbp + 0x80]
mov ecx, 0x1f40c
call fcn.140091ed0
mov r15, rax
xor r13d, r13d
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x608b89ad
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xc
sub edx, r8d
imul r9d, edx, 0xffffd593
add r10d, r9d
mov dword [r15 + r13*4], r10d
call fcn.1400b14d0
inc r13
cmp r13, 0x1a1
jl 0x140025cd6
mov rcx, r15
mov edx, 4
call fcn.140091ef0
inc r14d
cmp r14d, 0x704
jl 0x140025cc6
xor r14d, r14d
mov ecx, 0x14d98
call fcn.140091ed0
mov r15, rax
xor r13d, r13d
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x977ed81d
mov r8d, r10d
imul r10d
sar r8d, 0x1f
add edx, r10d
sar edx, 0xd
sub edx, r8d
imul r9d, edx, 0xffffc9ed
add r10d, r9d
mov dword [r15 + r13*4], r10d
call fcn.1400b14d0
inc r13
cmp r13, 0xf4
jl 0x140025d3e
mov rcx, r15
mov edx, 4
call fcn.140091ef0
inc r14d
cmp r14d, 0x67c
jl 0x140025d2e
xor r15d, r15d
mov ecx, 0x14658
call fcn.140091ed0
mov r13, rax
xor r14d, r14d
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x2e67c715
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xa
sub edx, r8d
imul r9d, edx, 0xffffe9ef
add r10d, r9d
mov dword [r13 + r14*4], r10d
call fcn.1400b14d0
inc r14
cmp r14, 0x1aa
jl 0x140025da9
mov rcx, r13
mov edx, 4
call fcn.140091ef0
inc r15d
cmp r15d, 0x699
jl 0x140025d99
xor r14d, r14d
mov ecx, 0xe0ac
call fcn.140091ed0
mov r15, rax
xor r13d, r13d
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x397b3e1d
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xb
sub edx, r8d
imul r9d, edx, 0xffffdc5f
add r10d, r9d
mov dword [r15 + r13*4], r10d
call fcn.1400b14d0
inc r13
cmp r13, 0x16d
jl 0x140025e12
mov rcx, r15
mov edx, 4
call fcn.140091ef0
inc r14d
cmp r14d, 0x9d6
jl 0x140025e02
xor r15d, r15d
mov ecx, 0x21aa4
call fcn.140091ed0
mov r13, rax
xor r14d, r14d
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x666147f
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 7
sub edx, r8d
imul r9d, edx, 0xffffebff
add r10d, r9d
mov dword [r13 + r14*4], r10d
call fcn.1400b14d0
inc r14
cmp r14, 0xda
jl 0x140025e7a
mov rcx, r13
mov edx, 4
call fcn.140091ef0
inc r15d
cmp r15d, 0x8e8
jl 0x140025e6a
xor r14d, r14d
mov ecx, 0x1039c
call fcn.140091ed0
mov r15, rax
xor r13d, r13d
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x601383f7
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xb
sub edx, r8d
imul r9d, edx, 0xffffeaaf
add r10d, r9d
mov dword [r15 + r13*4], r10d
call fcn.1400b14d0
inc r13
cmp r13, 0xa9
jl 0x140025ee3
mov rcx, r15
mov edx, 4
call fcn.140091ef0
inc r14d
cmp r14d, 0x76c
jl 0x140025ed3
xor r14d, r14d
mov ecx, 0xed28
call fcn.140091ed0
mov r15, rax
xor r13d, r13d
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x1870a743
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 9
sub edx, r8d
imul r9d, edx, 0xffffeb0d
add r10d, r9d
mov dword [r15 + r13*4], r10d
call fcn.1400b14d0
inc r13
cmp r13, 0xf8
jl 0x140025f4b
mov rcx, r15
mov edx, 4
call fcn.140091ef0
inc r14d
cmp r14d, 0xa05
jl 0x140025f3b
xor r14d, r14d
mov ecx, 0x244c8
call fcn.140091ed0
mov r15, rax
xor r13d, r13d
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x641a4be9
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xc
sub edx, r8d
imul r9d, edx, 0xffffd715
add r10d, r9d
mov dword [r15 + r13*4], r10d
call fcn.1400b14d0
inc r13
cmp r13, 0xd9
jl 0x140025fb3
mov rcx, r15
mov edx, 4
call fcn.140091ef0
inc r14d
cmp r14d, 0xa76
jl 0x140025fa3
xor r13d, r13d
test r12, r12
jbe 0x1400260e6
mov qword [rbp + 0x80], r12
inc edi
and edi, 0x800000ff
jge 0x140026030
sub edi, 1
or edi, 0xffffff00
inc edi
movsxd r15, edi
lea rcx, [rbp + 0x60]
mov rdx, r15
call fcn.140026470
movzx eax, byte [rax]
add eax, ebx
mov ebx, eax
and ebx, 0x800000ff
jge 0x140026059
sub ebx, 1
or ebx, 0xffffff00
inc ebx
mov rdx, r15
lea rcx, [rbp + 0x60]
call fcn.140026470
movsxd r14, ebx
lea rcx, [rbp + 0x60]
mov rdx, r14
mov r12b, byte [rax]
call fcn.140026470
mov al, byte [rax]
lea rcx, [rbp + 0x60]
mov rdx, r15
mov byte [rbp], al
call fcn.140026470
mov rcx, rax
mov al, byte [rbp]
mov rdx, r14
mov byte [rcx], al
lea rcx, [rbp + 0x60]
call fcn.140026470
mov rdx, r15
lea rcx, [rbp + 0x60]
mov byte [rax], r12b
call fcn.140026470
mov r12, rax
mov rdx, r14
lea rcx, [rbp + 0x60]
call fcn.140026470
mov rdx, rax
mov al, byte [r12]
lea rcx, [rbp + 0x60]
add al, byte [rdx]
movzx edx, al
call fcn.140026470
mov al, byte [rax]
inc r13
xor byte [rsi], al
inc rsi
cmp r13, qword [rbp + 0x80]
jb 0x14002601b
xor edi, edi
mov ecx, 0x15b58
call fcn.140091ed0
mov rsi, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x433bd077
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xb
sub edx, r8d
imul r9d, edx, 0xffffe18a
add r10d, r9d
mov dword [rsi + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0x1c2
jl 0x1400260f7
mov rcx, rsi
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x6f8
jl 0x1400260e8
xor edi, edi
mov ecx, 0xe88c
call fcn.140091ed0
mov rsi, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x79f4af8d
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xc
sub edx, r8d
imul r9d, edx, 0xffffde6a
add r10d, r9d
mov dword [rsi + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0x115
jl 0x14002615b
mov rcx, rsi
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x769
jl 0x14002614c
xor edi, edi
mov ecx, 0x1fac8
call fcn.140091ed0
mov rsi, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x39b24d23
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xb
sub edx, r8d
imul r9d, edx, 0xffffdc81
add r10d, r9d
mov dword [rsi + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0x88
jl 0x1400261bf
mov rcx, rsi
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x670
jl 0x1400261b0
xor edi, edi
mov ecx, 0x13578
call fcn.140091ed0
mov rsi, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x76e9c309
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xc
sub edx, r8d
imul r9d, edx, 0xffffdd8e
add r10d, r9d
mov dword [rsi + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0xab
jl 0x140026223
mov rcx, rsi
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x982
jl 0x140026214
xor edi, edi
mov ecx, 0xaf10
call fcn.140091ed0
mov rsi, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0xcc8537c7
mov r8d, r10d
imul r10d
sar r8d, 0x1f
add edx, r10d
sar edx, 0xc
sub edx, r8d
imul r9d, edx, 0xffffebf9
add r10d, r9d
mov dword [rsi + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0xea
jl 0x140026287
mov rcx, rsi
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x6c4
jl 0x140026278
xor edi, edi
mov ecx, 0x1a878
call fcn.140091ed0
mov rsi, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x320841dd
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xb
sub edx, r8d
imul r9d, edx, 0xffffd711
add r10d, r9d
mov dword [rsi + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0x93
jl 0x1400262ee
mov rcx, rsi
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x6af
jl 0x1400262df
xor edi, edi
mov ecx, 0x22c68
call fcn.140091ed0
mov rsi, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0x174fe27f
mov r8d, r10d
imul r10d
sar r8d, 0x1f
sar edx, 0xa
sub edx, r8d
imul r9d, edx, 0xffffd413
add r10d, r9d
mov dword [rsi + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0x1c6
jl 0x140026352
mov rcx, rsi
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x8e7
jl 0x140026343
xor edi, edi
mov ecx, 0x130b0
call fcn.140091ed0
mov rsi, rax
xor ebx, ebx
call fcn.1400b14d0
mov r10d, eax
mov eax, 0xa425d4b9
mov r8d, r10d
imul r10d
sar r8d, 0x1f
add edx, r10d
sar edx, 0xc
sub edx, r8d
imul r9d, edx, 0xffffe70c
add r10d, r9d
mov dword [rsi + rbx*4], r10d
call fcn.1400b14d0
inc rbx
cmp rbx, 0x136
jl 0x1400263b6
mov rcx, rsi
mov edx, 4
call fcn.140091ef0
inc edi
cmp edi, 0x98f
jl 0x1400263a7
lea rcx, [rbp + 0x60]
call fcn.140025380
mov rcx, qword [rbp + 0x60]
mov edx, 0x10
mov qword [rbp + 0x60], 0
call fcn.140091ef0
mov rbx, qword [rbp + 0x50]
mov rsi, qword [rbp + 0x20]
mov rdi, qword [rbp + 0x28]
mov r12, qword [rbp + 0x30]
mov r13, qword [rbp + 0x38]
mov r14, qword [rbp + 0x40]
mov r15, qword [rbp + 0x48]
lea rsp, [rbp + 0x90]
pop rbp
ret