Function at 0x10004dea
Capabilities:
Encode data using xor
Encrypt data using rc4 ksa
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x15c
push ebx
push esi
push edi
push 0x3b
xor ebx, ebx
mov dword [ebp - 0x14], 0x52
pop ecx
mov dword [ebp - 0x10], 0x63
mov eax, ebx
mov dword [ebp - 0xc], 0xffffff10
add ecx, dword [ebp + eax*4 - 0x14]
inc eax
cmp eax, 3
jl 0x10004e12
push 0x3e
mov dword [ebp - 0x40], ecx
mov eax, ebx
pop ecx
mov dword [ebp - 0x10], 0x28
mov dword [ebp - 0xc], 0xffffffa1
add ecx, dword [ebp + eax*4 - 0x10]
inc eax
cmp eax, 2
jl 0x10004e32
mov dword [ebp - 0x48], ecx
mov eax, ebx
mov ecx, 0xd9
mov dword [ebp - 0x14], 0x41
mov dword [ebp - 0x10], 0x55
mov dword [ebp - 0xc], 0x24
sub ecx, dword [ebp + eax*4 - 0x14]
inc eax
cmp eax, 3
jl 0x10004e5b
push 0xc
mov dword [ebp - 0xc], ecx
mov eax, ebx
pop ecx
mov dword [ebp - 0x5c], 0x49
mov dword [ebp - 0x58], 0x3d
mov dword [ebp - 0x54], 0x1f
mov dword [ebp - 0x50], 0x1e
mov dword [ebp - 0x4c], 0xffffff48
sub ecx, dword [ebp + eax*4 - 0x5c]
inc eax
cmp eax, 5
jl 0x10004e90
mov esi, str.BN_POOL_get
mov dword [ebp - 0x44], ecx
lea edi, [ebp - 0x20]
mov dword [ebp - 0x38], 0xacb6397e
mov dword [ebp - 0x34], 0x3b37e94b
mov dword [ebp - 0x30], 0x895fd6ed
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x2c], 0x17fbe935
mov byte [ebp - 0x28], 0x3a
mov dword [ebp - 4], ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [0x1002a384]
and esi, 0xea73bf17
call fcn.10001a1a
mov byte [ebp + ebx - 0x15c], bl
inc ebx
cmp ebx, 0x100
jb 0x10004ed7
xor ebx, ebx
and esi, 0x3fc9b84
mov dword [ebp - 0x3c], esi
mov edi, ebx
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + edi - 0x15c]
push 0xb
mov eax, edi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x20]
add eax, esi
add ecx, eax
movzx esi, cl
mov al, byte [ebp + esi - 0x15c]
mov byte [ebp + edi - 0x15c], al
inc edi
mov byte [ebp + esi - 0x15c], bl
cmp edi, 0x100
jb 0x10004efb
mov esi, dword [ebp - 0x3c]
xor ebx, ebx
mov dword [ebp - 4], ebx
mov edi, ebx
lea eax, [ebx + 1]
and esi, 0xb50131c9
movzx ebx, al
mov eax, dword [ebp - 4]
mov cl, byte [ebp + ebx - 0x15c]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 4], eax
mov al, byte [ebp + eax - 0x15c]
mov byte [ebp + ebx - 0x15c], al
mov eax, dword [ebp - 4]
mov byte [ebp + eax - 0x15c], cl
movzx eax, byte [ebp + ebx - 0x15c]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x15c]
xor al, byte [ebp + edi - 0x38]
mov byte [ebp + edi - 0x5c], al
inc edi
cmp edi, 0x11
jb 0x10004f42
mov dword [ebp - 0x24], 0x3c
xorps xmm1, xmm1
mov dword [ebp - 0x20], 0x25
xorps xmm2, xmm2
mov dword [ebp - 0x1c], 0x5c
xor ebx, ebx
mov dword [ebp - 0x18], 0xffffff43
and esi, 0x46b8279b
movups xmm0, xmmword [ebp - 0x24]
mov dword [ebp - 0x20], 0x29
mov edi, ebx
mov dword [ebp - 0x1c], 0x18
psubd xmm1, xmm0
mov dword [ebp - 0x18], 0xffffffb9
movaps xmm0, xmm1
mov dword [ebp - 0x24], 6
psrldq xmm0, 8
paddd xmm1, xmm0
mov byte [ebp - 0x4b], bl
movups xmm0, xmm1
mov dword [0x1002a248], esi
psrldq xmm0, 4
paddd xmm1, xmm0
movups xmm0, xmmword [ebp - 0x24]
mov dword [ebp - 0x20], 0x5e
movd dword [ebp - 0x3c], xmm1
psubd xmm2, xmm0
mov dword [ebp - 0x1c], 0x31
movaps xmm0, xmm2
mov dword [ebp - 0x18], 0xffffff71
psrldq xmm0, 8
paddd xmm2, xmm0
movups xmm0, xmm2
psrldq xmm0, 4
paddd xmm2, xmm0
movd dword [ebp - 8], xmm2
lea eax, [esi + 0x2a618d95]
mov dword [0x1002a384], eax
mov eax, ebx
sub edi, dword [ebp + eax*4 - 0x20]
inc eax
cmp eax, 3
jl 0x1000505a
mov eax, dword [ebp - 0x40]
lea edx, [ebp - 0x5c]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 4], eax
call fcn.1001d36b
call eax
push dword [ebp - 0x3c]
mov esi, eax
lea eax, [ebp - 4]
push 4
push eax
push dword [ebp - 0x48]
push esi
call fcn.1001db61
add esp, 0x14
test eax, eax
jne 0x100050b2
cmp dword [ebp - 4], ebx
je 0x100050b2
push 0x56
pop eax
push 2
pop ecx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0xc], 0xffffffa9
add eax, dword [ebp + ebx*4 - 0x10]
inc ebx
cmp ebx, ecx
jl 0x100050a7
jmp 0x10005116
push dword [ebp - 8]
lea eax, [ebp - 4]
push 4
push eax
push dword [ebp - 0xc]
push esi
call fcn.1001db61
add esp, 0x14
test eax, eax
jne 0x10005114
cmp dword [ebp - 4], ebx
jne 0x10005114
push 0xa
pop esi
mov eax, dword [0x1002a384]
add eax, 0x3c20acd0
mov dword [0x1002a384], eax
and eax, 0xcdc671e8
mov dword [0x1002a248], eax
call fcn.10001ee4
mov dword [ebp - 0x20], 0x51
mov dword [ebp - 0x1c], 4
mov dword [ebp - 0x18], 0xffffffb4
sub esi, dword [ebp + ebx*4 - 0x20]
inc ebx
cmp ebx, 3
jl 0x10005106
mov eax, esi
jmp 0x10005116
mov eax, edi
pop edi
pop esi
pop ebx
leave
ret