Function at 0x100026db
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
mov dword [ebp - 0x1c], 0x10003bcf
mov eax, dword [0x1000b258]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
mov dword [0x1000a224], eax
jmp 0x10002705
mov eax, dword [0x1000a224]
dec eax
mov dword [0x1000a224], eax
cmp dword [0x1000a224], 0
jbe 0x10002728
push dword [0x1000a224]
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov dword [ebp - 0x20], eax
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x100026fa
call fcn.10004bb3
mov eax, dword [0x1000b258]
sub eax, dword [ebp - 0x14]
mov dword [0x1000a248], eax
mov eax, dword [0x1000a248]
sub eax, 0xf5000
mov dword [0x1000a248], eax
cmp dword [0x1000a248], 0
jge 0x10002796
mov eax, dword [0x1000b2fc]
mov dword [0x1000a248], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x6c4]
mov dword [0x1000a20c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x6c8]
mov dword [0x1000a210], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x6cc]
mov dword [0x1000a214], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x6d0]
mov dword [0x1000a218], eax
jmp 0x100027b9
mov eax, dword [0x1000a248]
sub eax, dword [0x1000b2fc]
add eax, dword [ebp - 0x20]
mov dword [0x1000a030], eax
mov eax, dword [0x1000a030]
add eax, dword [0x1000b280]
mov dword [0x1000a030], eax
mov eax, dword [0x1000a248]
sub eax, dword [0x1000b2fc]
mov dword [0x1000a030], eax
push 0x40
push 0x3000
push 0x400
push 0
call dword [0x1000b268]
mov dword [0x1000b274], eax
and dword [0x1000a230], 0
jmp 0x100027f6
mov eax, dword [0x1000a230]
inc eax
mov dword [0x1000a230], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [0x1000a230]
cmp ecx, dword [eax + 0x6d4]
jae 0x10002962
mov dword [0x1000b330], 0x10001344
mov dword [0x1000b334], 0x10001c9b
mov dword [0x1000b338], 0x10002994
mov dword [0x1000b33c], 0x100032ba
mov dword [0x1000b340], 0x100042ae
mov dword [0x1000b344], 0x10004c3b
mov dword [0x1000b348], 0x10005598
mov dword [0x1000b34c], 0x10005e9d
mov eax, dword [0x1000a230]
add eax, dword [0x1000a030]
mov ecx, dword [ebp - 0x1c]
movzx eax, word [ecx + eax*2 + 0x20]
mov dword [0x1000a224], eax
and dword [0x1000a234], 0
jmp 0x10002887
mov eax, dword [0x1000a234]
inc eax
mov dword [0x1000a234], eax
mov eax, dword [0x1000a234]
cmp eax, dword [0x1000a224]
ja 0x100028d7
mov eax, dword [0x1000a238]
and eax, 0xf
mov dword [0x1000a238], eax
mov eax, dword [ebp - 0x1c]
add eax, dword [0x1000a238]
movzx eax, byte [eax + 0x10]
mov eax, dword [eax*4 + 0x1000b32c]
inc eax
mov ecx, dword [ebp - 0x1c]
add ecx, dword [0x1000a238]
movzx ecx, byte [ecx + 0x10]
mov dword [ecx*4 + 0x1000b32c], eax
mov eax, dword [0x1000a238]
inc eax
mov dword [0x1000a238], eax
jmp 0x1000287c
mov eax, dword [0x1000a238]
dec eax
mov dword [0x1000a238], eax
mov eax, dword [ebp - 0x1c]
add eax, dword [0x1000a238]
movzx eax, byte [eax + 0x10]
mov eax, dword [eax*4 + 0x1000b32c]
dec eax
mov ecx, dword [ebp - 0x1c]
add ecx, dword [0x1000a238]
movzx ecx, byte [ecx + 0x10]
mov dword [ecx*4 + 0x1000b32c], eax
mov eax, dword [ebp - 0x1c]
add eax, dword [0x1000a238]
movzx eax, byte [eax + 0x10]
mov eax, dword [eax*4 + 0x1000b32c]
mov al, byte [eax]
mov byte [0x1000a220], al
mov eax, dword [0x1000b308]
add eax, dword [0x1000a230]
mov al, byte [eax]
mov byte [0x1000b271], al
movzx eax, byte [0x1000a220]
movzx ecx, byte [0x1000b271]
xor eax, ecx
mov ecx, dword [0x1000b274]
add ecx, dword [0x1000a230]
mov byte [ecx], al
and dword [0x1000a238], 0
jmp 0x100027eb
xor eax, eax
cmp dword [ebp - 0x20], 0
setne al
leave
ret