Function at 0x4620cc
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x2c
mov dword [0x791e24], 0x4136a4
mov dword [0x791e2c], 0x413880
mov dword [0x791e34], 0x413a70
mov dword [0x791e3c], 0x413dc0
mov dword [0x791e44], 0x414144
mov dword [0x791e4c], 0x4144fc
mov dword [0x791e54], 0x414c0c
mov dword [0x791e5c], 0x414f90
mov dword [0x791e64], 0x414844
mov dword [0x791e6c], 0x415314
mov dword [0x791e74], 0x4156cc
mov dword [0x791e7c], 0x415a84
mov dword [0x791e84], 0x415e3c
mov dword [0x791e8c], 0x4161f4
mov dword [0x791e94], 0x416578
mov dword [0x791e9c], 0x416930
mov dword [0x791ea4], 0x416ce8
mov dword [0x791eac], 0x4170a0
mov dword [0x791eb4], 0x417424
mov dword [0x791e20], 0x4136bc
mov dword [0x791e28], 0x413898
mov dword [0x791e30], 0x413a88
mov dword [0x791e38], 0x413dd8
mov dword [0x791e40], 0x414190
mov dword [0x791e48], 0x414514
mov dword [0x791e50], 0x414c24
mov dword [0x791e58], 0x414fa8
mov dword [0x791e60], 0x414890
mov dword [0x791e68], 0x415360
mov dword [0x791e70], 0x415718
mov dword [0x791e78], 0x415ad0
mov dword [0x791e80], 0x415e88
mov dword [0x791e88], 0x41620c
mov dword [0x791e90], 0x4165c4
mov dword [0x791e98], 0x41697c
mov dword [0x791ea0], 0x416d34
mov dword [0x791ea8], 0x4170b8
mov dword [0x791eb0], 0x417470
mov dword [0x791ec4], 0x4136d8
mov dword [0x791ecc], 0x4138b4
mov dword [0x791ed4], 0x413ad8
mov dword [0x791edc], 0x413e30
mov dword [0x791ee4], 0x4141e8
mov dword [0x791eec], 0x414530
mov dword [0x791ef4], 0x414c7c
mov dword [0x791efc], 0x415000
mov dword [0x791f04], 0x4148f8
mov dword [0x791f0c], 0x4153b8
mov dword [0x791f14], 0x415770
mov dword [0x791f1c], 0x415b28
mov dword [0x791f24], 0x415ee0
mov dword [0x791f2c], 0x416264
mov dword [0x791f34], 0x41661c
mov dword [0x791f3c], 0x4169d4
mov dword [0x791f44], 0x416d8c
mov dword [0x791f4c], 0x417110
mov dword [0x791f54], 0x4174c8
mov dword [0x791ec0], 0x4136f0
mov dword [0x791ec8], 0x4138d0
mov dword [0x791ed0], 0x413b80
mov dword [0x791ed8], 0x413ee4
mov dword [0x791ee0], 0x41429c
mov dword [0x791ee8], 0x4145e4
mov dword [0x791ef0], 0x414d30
mov dword [0x791ef8], 0x4150b4
mov dword [0x791f00], 0x4149ac
mov dword [0x791f08], 0x41546c
mov dword [0x791f10], 0x415824
mov dword [0x791f18], 0x415bdc
mov dword [0x791f20], 0x415f94
mov dword [0x791f28], 0x416318
mov dword [0x791f30], 0x4166d0
mov dword [0x791f38], 0x416a88
mov dword [0x791f40], 0x416e40
mov dword [0x791f48], 0x4171c4
mov dword [0x791f50], 0x41757c
mov dword [0x791f60], 0x413730
mov dword [0x791f68], 0x4138ec
mov dword [0x791f70], 0x413c30
mov dword [0x791f78], 0x413fa8
mov dword [0x791f80], 0x414360
mov dword [0x791f88], 0x4146a8
mov dword [0x791f90], 0x414df4
mov dword [0x791f98], 0x415178
mov dword [0x791fa0], 0x414a70
mov dword [0x791fa8], 0x415530
mov dword [0x791fb0], 0x4158e8
mov dword [0x791fb8], 0x415ca0
mov dword [0x791fc0], 0x416058
mov dword [0x791fc8], 0x4163dc
mov dword [0x791fd0], 0x416794
mov dword [0x791fd8], 0x416b4c
mov dword [0x791fe0], 0x416f04
mov dword [0x791fe8], 0x417288
mov dword [0x791ff0], 0x417640
mov dword [0x791f64], 0x41370c
mov dword [0x791f6c], 0x4138ec
mov dword [0x791f74], 0x413c30
mov dword [0x791f7c], 0x413fa8
mov dword [0x791f84], 0x414360
mov dword [0x791f8c], 0x4146a8
mov dword [0x791f94], 0x414df4
mov dword [0x791f9c], 0x415178
mov dword [0x791fa4], 0x414a70
mov dword [0x791fac], 0x415530
mov dword [0x791fb4], 0x4158e8
mov dword [0x791fbc], 0x415ca0
mov dword [0x791fc4], 0x416058
mov dword [0x791fcc], 0x4163dc
mov dword [0x791fd4], 0x416794
mov dword [0x791fdc], 0x416b4c
mov dword [0x791fe4], 0x416f04
mov dword [0x791fec], 0x417288
mov dword [0x791ff4], 0x417640
mov dword [0x792000], 0x4137d4
mov dword [0x792008], 0x4139a8
mov dword [0x792010], 0x413cf4
mov dword [0x792018], 0x414070
mov dword [0x792020], 0x414428
mov dword [0x792028], 0x414770
mov dword [0x792030], 0x414ebc
mov dword [0x792038], 0x415240
mov dword [0x792040], 0x414b38
mov dword [0x792048], 0x4155f8
mov dword [0x792050], 0x4159b0
mov dword [0x792058], 0x415d68
mov dword [0x792060], 0x416120
mov dword [0x792068], 0x4164a4
mov dword [0x792070], 0x41685c
mov dword [0x792078], 0x416c14
mov dword [0x792080], 0x416fcc
mov dword [0x792088], 0x417350
mov dword [0x792090], 0x417708
mov ebx, 1
mov ecx, 0x200
mov edi, ecx
xor esi, esi
lea ebp, [ecx + 0x200]
mov eax, esi
cdq
idiv ebx
mov word [edi + 0x771d20], ax
add esi, 0x100
add edi, 2
cmp ebp, edi
ja 0x462619
add ecx, 0x200
inc ebx
cmp ebx, 0x100
jl 0x46260f
xor eax, eax
mov byte [eax + 0x670520], al
jmp 0x462652
mov byte [eax + 0x670520], 0xff
inc eax
cmp eax, 0x1ff
jge 0x462663
cmp eax, 0xff
jg 0x46264b
jmp 0x462643
xor eax, eax
xor edx, edx
jmp 0x46266f
lea edx, [eax - 0xff]
mov byte [eax + 0x670720], dl
inc eax
cmp eax, 0x1ff
jge 0x462686
cmp eax, 0xff
jge 0x462669
jmp 0x462665
xor ecx, ecx
xor ebx, ebx
xor esi, esi
xor ebp, ebp
mov eax, 0x80808081
imul ebp
add edx, ebp
sar edx, 7
mov edi, ebp
sar edi, 0x1f
sub edx, edi
mov byte [ebx + esi + 0x670920], dl
add ebp, ecx
inc esi
cmp esi, 0x100
jl 0x46268e
add ebx, 0x100
inc ecx
cmp ecx, 0x100
jl 0x46268a
xor ebx, ebx
xor ecx, ecx
xor esi, esi
mov ebp, ebx
shl ebp, 8
sub ebp, ebx
mov eax, ebp
jmp 0x4626d8
mov eax, ebp
cdq
idiv esi
cmp eax, 0xff
jle 0x4626e4
mov eax, 0xff
mov byte [ecx + esi + 0x680a20], al
inc esi
cmp esi, 0x100
jge 0x4626fa
test esi, esi
jg 0x4626d3
jmp 0x4626cf
add ecx, 0x100
inc ebx
cmp ebx, 0x100
jl 0x4626c6
xor edi, edi
xor ebp, ebp
xor ebx, ebx
mov ecx, edi
xor edx, edx
movzx eax, word [edx + edi*2 + 0x61849e]
neg eax
add eax, ecx
mov byte [ebp + ebx + 0x690b20], al
inc ecx
add edx, 0x400
inc ebx
cmp ebx, 0x100
jl 0x462713
add ebp, 0x100
inc edi
cmp edi, 0x100
jl 0x46270d
xor ecx, ecx
xor edx, edx
xor eax, eax
cmp ecx, eax
jge 0x462753
mov ebx, eax
jmp 0x462755
mov ebx, ecx
mov byte [edx + eax + 0x751720], bl
inc eax
cmp eax, 0x100
jl 0x46274b
add edx, 0x100
inc ecx
cmp ecx, 0x100
jl 0x462749
xor ecx, ecx
xor edx, edx
xor eax, eax
cmp ecx, eax
jge 0x462781
mov ebx, ecx
jmp 0x462783
mov ebx, eax
mov byte [edx + eax + 0x761820], bl
inc eax
cmp eax, 0x100
jl 0x462779
add edx, 0x100
inc ecx
cmp ecx, 0x100
jl 0x462777
xor ecx, ecx
xor edx, edx
xor eax, eax
mov ebx, ecx
sub ebx, eax
test ebx, ebx
jge 0x4627b1
neg ebx
mov byte [edx + eax + 0x6a0c20], bl
inc eax
cmp eax, 0x100
jl 0x4627a7
add edx, 0x100
inc ecx
cmp ecx, 0x100
jl 0x4627a5
xor eax, eax
xor ecx, ecx
xor edi, edi
mov ebp, eax
xor ebx, ebx
mov dword [esp + 0x28], eax
mov eax, 0x80808081
imul ebx
add edx, ebx
sar edx, 7
mov esi, ebx
sar esi, 0x1f
sub edx, esi
add edx, edx
neg edx
add edx, ebp
mov byte [ecx + edi + 0x6b0d20], dl
inc ebp
add ebx, dword [esp + 0x28]
inc edi
cmp edi, 0x100
jl 0x4627dd
mov eax, dword [esp + 0x28]
add ecx, 0x100
inc eax
cmp eax, 0x100
jl 0x4627d3
xor ebp, ebp
xor ebx, ebx
xor ecx, ecx
mov edx, ebp
shl edx, 0xa
movzx eax, word [edx + ecx*4 + 0x61849e]
movzx eax, al
mov byte [ebx + ecx + 0x731520], al
inc ecx
cmp ecx, 0x100
jge 0x46286d
cmp ecx, 0x80
jl 0x462828
jle 0x462862
lea edi, [ecx + ecx]
neg edi
movzx eax, word [edx + edi*2 + 0x61889e]
sub eax, edi
dec eax
movzx eax, al
jmp 0x462833
jne 0x462833
mov eax, ebp
and eax, 0xff
jmp 0x462833
add ebx, 0x100
inc ebp
cmp ebp, 0x100
jl 0x462821
xor ebx, ebx
mov ecx, 0x100
xor esi, esi
xor ebp, ebp
mov eax, ebp
cdq
idiv ecx
cmp eax, 0xff
jle 0x462898
mov eax, 0xff
mov byte [ebx + esi + 0x6c0e20], al
add ebp, 0x100
inc esi
cmp esi, 0x100
jl 0x462887
add ebx, 0x100
dec ecx
test ecx, ecx
jg 0x462883
xor ecx, ecx
xor ebp, ebp
lea esi, [ecx + 1]
shl ecx, 8
mov ebx, 0xff00
mov eax, ebx
cdq
idiv esi
neg eax
add eax, 0xff
test eax, eax
jge 0x4628da
xor eax, eax
mov byte [ecx + ebp + 0x6d0f20], al
add ebx, 0xffffff00
inc ebp
cmp ebp, 0x100
jl 0x4628c8
mov ecx, esi
cmp esi, 0x100
jl 0x4628bb
xor ecx, ecx
xor edx, edx
xor ebp, ebp
mov ebx, ecx
lea eax, [ebx - 0xff]
cmp eax, 0xff
jle 0x462916
mov eax, 0xff
jmp 0x46291c
test eax, eax
jge 0x46291c
xor eax, eax
mov byte [edx + ebp + 0x721420], al
inc ebx
inc ebp
cmp ebp, 0x100
jl 0x462902
add edx, 0x100
inc ecx
cmp ecx, 0x100
jl 0x4628fe
xor ebp, ebp
xor eax, eax
xor ebx, ebx
xor ecx, ecx
xor edx, edx
mov edi, 0x200
mov dword [esp + 0xc], eax
mov eax, edi
xor edi, edi
xor esi, esi
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xc]
cmp ebp, 0x80
jge 0x46296f
movsx eax, word [esi + ebx*2 + 0x61849e]
jmp 0x462988
jle 0x462984
movsx eax, word [esi + edx*2 + 0x61889e]
sub eax, dword [esp + 0x10]
add eax, 0xff
jmp 0x462988
jne 0x462988
mov eax, edi
mov byte [ecx + edi + 0x6e1020], al
add esi, 0x400
inc edi
cmp edi, 0x100
jl 0x46295d
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x10]
add ebx, 2
add ecx, 0x100
add edx, 0xfffffffe
add eax, 0xfffffffe
inc ebp
cmp ebp, 0x100
jl 0x462951
xor edx, edx
fld qword [0x579d58]
cmp edx, 0x80
jl 0x4629da
xor ebx, ebx
mov ecx, edx
shl ecx, 8
jmp 0x462a66
xor ebx, ebx
mov ecx, edx
shl ecx, 8
mov eax, ebx
neg eax
add eax, 0x100
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
fsqrt
fsubr st(1)
fnstcw word [esp]
movzx eax, word [esp]
or eax, 0xc00
mov dword [esp + 8], eax
fldcw word [esp + 8]
fistp dword [esp + 0x14]
fldcw word [esp]
mov ebp, dword [esp + 0x14]
mov eax, edx
imul eax, ebp
add ebp, ebp
add ebp, ebp
add ebp, ebp
add ebp, ebp
add ebp, ebp
add ebp, ebp
add ebp, ebp
neg ebp
add eax, ebp
sar eax, 0xf
add eax, ebx
cmp eax, 0xff
jle 0x462a3f
mov eax, 0xff
jmp 0x462a45
test eax, eax
jge 0x462a45
xor eax, eax
mov byte [ecx + ebx + 0x6f1120], al
inc ebx
cmp ebx, 0x100
jge 0x462b29
cmp edx, 0x80
jl 0x4629e1
cmp ebx, 0x20
jg 0x462ad4
mov eax, ebx
neg eax
add eax, 0x100
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
fsqrt
lea ebp, [ebx + ebx]
add ebp, ebp
add ebp, ebp
neg ebp
add ebp, 0x300
mov dword [esp + 0x1c], ebp
fild dword [esp + 0x1c]
fmulp st(1)
fsubr st(1)
fnstcw word [esp]
movzx eax, word [esp]
or eax, 0xc00
mov dword [esp + 8], eax
fldcw word [esp + 8]
fistp dword [esp + 0x14]
fldcw word [esp]
mov edi, dword [esp + 0x14]
mov eax, edx
imul eax, edi
add edi, edi
add edi, edi
add edi, edi
add edi, edi
add edi, edi
add edi, edi
add edi, edi
neg edi
add eax, edi
sar eax, 0xf
add eax, ebx
jmp 0x462a31
mov eax, ebx
neg eax
add eax, 0x100
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
fsqrt
fsubr st(1)
fnstcw word [esp]
movzx eax, word [esp]
or eax, 0xc00
mov dword [esp + 8], eax
fldcw word [esp + 8]
fistp dword [esp + 0x14]
fldcw word [esp]
mov ebp, dword [esp + 0x14]
mov eax, edx
imul eax, ebp
add ebp, ebp
add ebp, ebp
add ebp, ebp
add ebp, ebp
add ebp, ebp
add ebp, ebp
add ebp, ebp
neg ebp
add eax, ebp
sar eax, 0x10
add eax, ebx
jmp 0x462a31
inc edx
cmp edx, 0x100
jl 0x4629c6
fstp st(0)
xor ecx, ecx
xor edi, edi
xor eax, eax
mov edx, 0x1fe
xor ebx, ebx
mov dword [esp + 0x28], ebx
xor esi, esi
xor ebp, ebp
lea ebx, [eax - 0xfe01]
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], edx
mov dword [esp + 0x10], edi
cmp ecx, 0x80
jge 0x462b80
test ecx, ecx
jne 0x462b6f
xor eax, eax
jmp 0x462ba1
mov eax, ebx
cdq
mov edi, dword [esp + 0x10]
idiv edi
test eax, eax
jge 0x462ba1
xor eax, eax
jmp 0x462ba1
cmp ecx, 0xff
je 0x462c89
mov eax, ebp
cdq
mov edi, dword [esp + 0x24]
idiv edi
cmp eax, 0xff
jle 0x462ba1
mov eax, 0xff
mov edx, dword [esp + 0x28]
mov byte [edx + esi + 0x701220], al
add ebp, 0xff
add ebx, 0xff
inc esi
cmp esi, 0x100
jl 0x462b5f
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x24]
mov edi, dword [esp + 0x10]
add edi, 2
add eax, 0x1fe
add edx, 0xfffffffe
add dword [esp + 0x28], 0x100
inc ecx
cmp ecx, 0x100
jl 0x462b49
xor edx, edx
xor ecx, ecx
xor ebp, ebp
mov ebx, edx
lea eax, [ebx - 0x100]
cmp eax, 0xff
jle 0x462c09
mov eax, 0xff
jmp 0x462c0f
test eax, eax
jge 0x462c0f
xor eax, eax
mov byte [ecx + ebp + 0x711320], al
inc ebx
inc ebp
cmp ebp, 0x100
jl 0x462bf5
add edx, 2
add ecx, 0x100
cmp ecx, 0x10000
jl 0x462bf1
xor ebp, ebp
xor ebx, ebx
mov ecx, 0xffffff01
xor edx, edx
xor edi, edi
cmp ebp, 0x80
jge 0x462c52
cmp edi, ebx
jle 0x462c4e
mov eax, ebx
jmp 0x462c5c
mov eax, edi
jmp 0x462c5c
cmp edi, ecx
jle 0x462c5a
mov eax, edi
jmp 0x462c5c
mov eax, ecx
mov byte [edx + edi + 0x741620], al
inc edi
cmp edi, 0x100
jl 0x462c3e
add ebx, 2
add ecx, 2
add edx, 0x100
inc ebp
cmp ebp, 0x100
jl 0x462c3c
add esp, 0x2c
pop ebx
pop ebp
pop esi
pop edi
ret
mov eax, 0xff
jmp 0x462ba1