Function at 0x409a70
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x78
mov eax, dword [ebp + 8]
add eax, dword [ecx + 0x60]
mov word [esp + 0x18], 0xb3b9
mov byte [esp + 0x1a], 0xb8
mov dword [esp + 0x1b], 0
mov dword [esp + 0x1e], 0
mov dword [esp + 8], 0
mov edx, dword [esp + 8]
cmp edx, 9
ja 0x409af2
nop
mov edx, dword [esp + 8]
mov esi, dword [esp + 8]
movzx esi, byte [esp + esi + 0x18]
lea edi, [edx + esi]
add edi, 0xad431367
add edx, 0xad431367
and edx, esi
add edx, edx
sub edi, edx
mov dword [esp + 0x28], edi
mov edx, dword [esp + 0x28]
add dl, 0x2f
mov esi, dword [esp + 8]
mov byte [esp + esi + 0x18], dl
inc dword [esp + 8]
mov edx, dword [esp + 8]
cmp edx, 0xa
jb 0x409ab0
mov dword [esp + 8], 0x849a86b4
mov dword [esp + 0xc], 0x9d98
mov byte [esp + 0x10], 0
mov dword [esp], 0
mov edx, dword [esp]
cmp edx, 8
ja 0x409b6c
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [esp]
mov edx, dword [esp]
movzx ebx, byte [esp + edx + 8]
lea edx, [edi - 0x62b9ebed]
lea esi, [edi + ebx]
add esi, 0x9d461413
add edi, 0x13
and edi, ebx
and edx, ebx
add edx, edi
mov edi, edx
xor edi, esi
not edx
and edx, esi
add edx, edx
sub edx, edi
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x28]
add dl, 0x7b
mov esi, dword [esp]
mov byte [esp + esi + 8], dl
inc dword [esp]
mov edx, dword [esp]
cmp edx, 9
jb 0x409b20
mov dword [esp + 0x28], 0x46780c0d
mov dword [esp + 0x2c], 0x4a4a181c
mov dword [esp + 0x30], 0x4f42481d
mov dword [esp + 0x34], 0x52576e5b
mov dword [esp + 0x38], 0x1a575b5a
mov dword [esp + 0x3c], 0x50053f31
mov dword [esp + 0x40], 0x555f4d56
mov dword [esp + 0x44], 0x26026830
mov dword [esp + 0x48], 0x282d292b
mov dword [esp + 0x4c], 0x202f392d
mov dword [esp + 0x50], 0x2d527b26
mov dword [esp + 0x54], 0x7a3b3f3b
mov dword [esp + 0x58], 0xa260834
mov dword [esp + 0x5c], 0x630456f
mov dword [esp + 0x60], 0x41673c35
mov byte [esp + 0x64], 0x9c
mov dword [esp + 0x65], 0
mov dword [esp + 0x69], 0
mov word [esp + 0x6d], 0
mov dword [esp + 4], 0
mov edx, dword [esp + 4]
cmp edx, 0x46
ja 0x409c72
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 4]
mov esi, dword [esp + 4]
movzx edi, byte [esp + esi + 0x28]
lea ebx, [edx - 0x44a93b5c]
lea esi, [edx + edi]
add esi, 0xbb56c4a4
and ebx, edi
add edx, 0xa4
and edx, edi
add edx, ebx
mov edi, esi
not edi
and edi, edx
not edx
and edx, esi
sub edx, edi
mov dword [esp], edx
mov edx, dword [esp]
add dl, 0x84
mov esi, dword [esp + 4]
mov byte [esp + esi + 0x28], dl
inc dword [esp + 4]
mov edx, dword [esp + 4]
cmp edx, 0x47
jb 0x409c20
mov esi, dword [ebp + 0xc]
movzx ebx, byte [esp + 0x28]
mov edx, eax
test bl, bl
je 0x409c9b
lea edi, [esp + 0x29]
mov edx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [edi]
inc edi
test bl, bl
jne 0x409c90
mov byte [edx], 0
movzx ebx, byte [esi]
test bl, bl
je 0x409cbb
inc esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x409cb0
mov esi, dword [ebp + 0x10]
mov byte [edx], 0
movzx ebx, byte [esp + 8]
test bl, bl
je 0x409cdb
lea edi, [esp + 9]
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [edi]
inc edi
test bl, bl
jne 0x409cd0
mov byte [edx], 0
movzx ebx, byte [esi]
test bl, bl
je 0x409cfb
inc esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x409cf0
mov byte [edx], 0
movzx ebx, byte [esp + 0x18]
test bl, bl
je 0x409d1b
lea esi, [esp + 0x19]
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x409d10
mov byte [edx], 0
sub edx, eax
add dword [ecx + 0x60], edx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0xc