Function at 0x109a035
Capabilities:
Encrypt data using rc4 via winapi

Disassembly:
push 0x78
mov eax, 0x10c263f
call fcn.01077dad
xor ebx, ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x18], ebx
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x84]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x1c], ebx
lea ecx, [ebp - 0x4c]
call fcn.0102efbf
mov dword [ebp - 4], ebx
mov esi, dword [ebp + 0x18]
mov dword [esi], ebx
cmp dword [ebp + 0x1c], ebx
je 0x1099c1a
lea eax, [ebp - 0x20]
push eax
call fcn.010988ea
mov dword [ebp + 0x18], eax
cmp eax, ebx
je 0x1099c1a
push eax
push 0xc5f01a4
call fcn.0108c503
jmp 0x1099f16
lea eax, [ebp - 0x18]
push eax
push dword [ebp - 0x14]
call fcn.010982c8
mov dword [ebp + 0x18], eax
cmp eax, ebx
jne 0x1099c4a
lea eax, [ebp - 0x4c]
push eax
xor edi, edi
inc edi
push edi
push 0x4000
mov eax, dword [ebp - 0x20]
neg eax
sbb eax, eax
and eax, 0xf0000000
or eax, 0x48
push eax
push dword [ebp + 0xc]
push dword [ebp + 8]
push ebx
push dword [ebp - 0x20]
push dword [ebp - 0x14]
push dword [ebp - 0x18]
call fcn.0107a681
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x3c]
mov dword [ebp + 0x18], ecx
cmp ecx, ebx
jge 0x1099cdd
push ecx
push 0xc7d01a4
call fcn.0108c503
cmp dword [ebp - 0x24], ebx
je 0x1099c52
cmp dword [esi], ebx
jne 0x1099c52
push dword [ebp - 0x14]
mov edi, dword [sym.imp.KERNEL32.dll_LocalFree]
call edi
mov dword [ebp - 0x14], ebx
push dword [ebp - 0x18]
call edi
mov dword [ebp - 0x18], ebx
mov dword [esi], 1
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x24]
push eax
push dword [esi]
mov dword [ebp - 0x24], ebx
push dword [ebp + 0x10]
call fcn.01097128
cmp eax, ebx
mov dword [ebp + 0x18], eax
je 0x1099b90
push eax
push 0xc6701a4
call fcn.0108c503
jmp 0x1099f09
push eax
push 0xc6a01a4
jmp 0x1099c40
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x68]
call fcn.0102f308
mov byte [ebp - 4], 1
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x64]
cmp eax, ebx
jne 0x1099c72
mov eax, 0x1002060
push SysReAllocString
push eax
lea ecx, [ebp - 0x28]
call fcn.0102f299
mov byte [ebp - 4], 3
push dword [ebp - 0x58]
push 0xc8d01a4
push dword [ebp - 0x28]
call fcn.0108c53e
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x28]
call fcn.0102f163
mov dword [ebp - 4], edi
jmp 0x1099cc6
mov byte [ebp - 4], bl
mov dword [ebp - 0x68], 0x100248c
lea ecx, [ebp - 0x68]
call fcn.0102d3aa
jmp 0x1099f09
cmp dword [ebp + 0x1c], ebx
je 0x1099cf1
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x80], ecx
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x84], ecx
push dword [ebp - 0x14]
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x38]
push eax
call fcn.01098c75
test al, al
je 0x1099dce
lea eax, [ebp - 0x4c]
push eax
push ebx
push ebx
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x1c]
push dword [ebp + 0x10]
push 1
call fcn.0107cf4a
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x68]
call fcn.0102f308
mov byte [ebp - 4], 5
mov edi, dword [ebp - 0x58]
mov dword [ebp + 0x18], edi
cmp edi, ebx
je 0x1099da1
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x64]
cmp eax, ebx
jne 0x1099d4a
mov eax, 0x1002060
push SysReAllocString
push eax
lea ecx, [ebp - 0x28]
call fcn.0102f299
mov byte [ebp - 4], 7
push edi
push 0xcaa01a4
push dword [ebp - 0x28]
call fcn.0108c53e
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.0102f163
mov dword [ebp - 4], 5
jmp 0x1099cc6
mov byte [ebp - 4], bl
mov dword [ebp - 0x68], 0x100248c
lea ecx, [ebp - 0x68]
call fcn.0102d3aa
mov eax, dword [ebp - 0x2c]
mov dword [ebp + 0x18], eax
cmp eax, ebx
je 0x1099dc8
push eax
push 0xcad01a4
jmp 0x1099c40
mov dword [esi], 1
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ecx]
call dword [eax + 0x38]
push eax
call fcn.01098c5a
test al, al
je 0x1099ea6
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x1c]
push dword [ebp + 0x10]
push 1
call fcn.0107ca8d
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x68]
call fcn.0102f308
mov byte [ebp - 4], 9
mov edi, dword [ebp - 0x58]
mov dword [ebp + 0x18], edi
cmp edi, ebx
je 0x1099e7d
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x64]
cmp eax, ebx
jne 0x1099e26
mov eax, 0x1002060
push SysReAllocString
push eax
lea ecx, [ebp - 0x28]
call fcn.0102f299
mov byte [ebp - 4], 0xb
push edi
push 0xcba01a4
push dword [ebp - 0x28]
call fcn.0108c53e
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x28]
call fcn.0102f163
mov dword [ebp - 4], 9
jmp 0x1099cc6
mov byte [ebp - 4], bl
mov dword [ebp - 0x68], 0x100248c
lea ecx, [ebp - 0x68]
call fcn.0102d3aa
mov eax, dword [ebp - 0x2c]
mov dword [ebp + 0x18], eax
cmp eax, ebx
je 0x1099ea4
push eax
push 0xcbd01a4
jmp 0x1099c40
mov dword [esi], ebx
lea eax, [ebp - 0x30]
push eax
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push ebx
push ebx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ecx]
call dword [eax + 0x28]
push eax
call fcn.01095b33
mov dword [ebp + 0x18], eax
cmp eax, ebx
je 0x1099ed2
push eax
push 0xcc901a4
jmp 0x1099c40
cmp dword [ebp - 0x30], ebx
jne 0x1099eea
mov eax, 0x80090003
mov dword [ebp + 0x18], eax
push eax
push 0xcce01a4
jmp 0x1099c40
cmp dword [ebp + 0x1c], ebx
je 0x1099f09
push 7
pop ecx
lea esi, [ebp - 0x84]
mov edi, dword [ebp + 0x1c]
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x18], ebx
mov ecx, dword [ebp - 0x1c]
cmp ecx, ebx
je 0x1099f16
mov eax, dword [ecx]
push 1
call dword [eax]
cmp dword [ebp - 0x84], ebx
je 0x1099fc1
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.0107890d
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x68]
call fcn.0102f308
mov byte [ebp - 4], 0xd
cmp dword [ebp - 0x58], ebx
je 0x1099faf
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x64]
cmp eax, ebx
jne 0x1099f57
mov eax, 0x1002060
push SysReAllocString
push eax
lea ecx, [ebp - 0x28]
call fcn.0102f299
mov byte [ebp - 4], 0xf
push dword [ebp - 0x58]
push 0xcdd01a4
push dword [ebp - 0x28]
call fcn.0108c53e
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x28]
call fcn.0102f163
mov dword [ebp - 4], 0xd
jmp 0x1099faf
mov byte [ebp - 4], bl
mov dword [ebp - 0x68], 0x100248c
lea ecx, [ebp - 0x68]
call fcn.0102d3aa
push dword [ebp - 0x18]
mov esi, dword [sym.imp.KERNEL32.dll_LocalFree]
call esi
test eax, eax
je 0x1099fe0
call fcn.01091f1e
push eax
push 0xce001a4
call fcn.0108c503
push dword [ebp - 0x14]
call esi
test eax, eax
je 0x1099ff9
call fcn.01091f1e
push eax
push 0xce101a4
call fcn.0108c503
push dword [ebp - 0x20]
call esi
test eax, eax
je 0x109a012
call fcn.01091f1e
push eax
push 0xce201a4
call fcn.0108c503
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x4c], 0x100248c
lea ecx, [ebp - 0x4c]
call fcn.0102d3aa
mov eax, dword [ebp + 0x18]
call fcn.01077e61
ret 0x18
mov edi, edi
push ebp
mov ebp, esp
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0109821c
test al, al
je 0x109a04f
pop ebp
jmp fcn.010989fe
pop ebp
jmp 0x1099b2c