Function at 0x409210
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x4c
mov esi, dword [esp + 0x64]
mov dword [esp + 0x1c], ecx
mov eax, dword [ecx + 0x80]
mov dword [esp + 4], eax
mov dword [esp], 0x60d13
mov edx, 0x2a01
mov ecx, 0x225195fe
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + edx - 0x2a01]
mov ebp, edi
and ebp, 0x1b
xor ebp, 0x1302c1b
mov eax, edi
xor eax, 0x1302c1b
or edi, 0xe4
and edi, eax
or edi, ebp
lea eax, [ecx - 0x225195e0]
and eax, 0x11
mov ebx, edx
and ebx, 0x2002
or ebx, eax
mov ebp, ecx
and ebp, 0x224191e4
or ebp, ebx
xor ebp, 0xfedff7ee
mov eax, edi
and eax, ebp
add ebp, edi
add eax, eax
sub ebp, eax
add ebp, 0xab97edfa
mov eax, ebp
xor eax, 0x7e
mov edi, ebp
or edi, 1
and edi, eax
xor ebp, 1
lea eax, [edi*2]
add eax, ebp
mov byte [esp + edx - 0x2a01], al
inc edx
dec ecx
cmp edx, 0x2a05
jne 0x409240
mov dword [esp + 0x10], 0xfae4f8c2
mov word [esp + 0x14], 0xefe6
mov dword [esp + 0x16], 0
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
mov eax, ecx
add al, 0xa7
xor al, byte [esp + ecx + 0x10]
add al, 0xbd
mov byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 0xa
jne 0x4092e0
mov dword [esp + 0x20], 0x2cc18b8d
mov dword [esp + 0x24], 0x2923312a
mov dword [esp + 0x28], 0x22cee43c
mov dword [esp + 0x2c], 0x3c213d3f
mov dword [esp + 0x30], 0x3c3b2539
mov dword [esp + 0x34], 0x31f6ef3a
mov dword [esp + 0x38], 0xf6372b37
mov dword [esp + 0x3c], 0x3e2a3c38
mov dword [esp + 0x40], 0x424c819b
mov dword [esp + 0x44], 0x859b4049
mov byte [esp + 0x48], 0xe8
mov word [esp + 0x49], 0
mov byte [esp + 0x4b], 0
mov ecx, 0xd55639a0
mov edx, dword [esp + 0x60]
nop
nop
movzx ebx, byte [esp + ecx + 0x2aa9c680]
xor ebx, ecx
mov eax, ebx
and eax, 1
or ebx, 1
add ebx, eax
add bl, 0xdf
mov byte [esp + ecx + 0x2aa9c680], bl
inc ecx
cmp ecx, 0xd55639cc
jne 0x409360
add edx, dword [esp + 4]
mov dword [esp + 4], edx
mov word [esp + 8], 0xcccd
mov byte [esp + 0xa], 0x16
mov word [esp + 0xb], 0
xor edi, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + edi + 8]
mov ebp, edi
and ebp, 4
mov eax, edi
and eax, 2
mov ebx, eax
xor ebx, 2
imul ebx, ebp
or ebp, 2
imul ebp, eax
or ebx, edi
xor ebx, 0x9927c046
add ebx, ebp
mov eax, ebx
and eax, ecx
or ebx, ecx
mov ecx, ebx
not ecx
lea edx, [ebx + ecx*2]
inc edx
or edx, eax
mov ecx, edx
not ecx
and edx, 0x5f
and ecx, 0xa0
sub ecx, edx
inc cl
mov byte [esp + edi + 8], cl
mov eax, edi
and eax, 1
xor edi, 0x185c8381
lea edi, [edi + eax*2]
add edi, 0xe7a37c80
cmp edi, 5
jb 0x4093b0
movzx ecx, byte [esp + 8]
mov ebp, dword [esp + 4]
mov edi, ebp
test cl, cl
je 0x40943b
lea ebx, [esp + 9]
mov edi, ebp
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [ebx]
inc ebx
test cl, cl
jne 0x409430
mov byte [edi], 0
mov eax, dword [esp + 0x1c]
movzx ecx, byte [eax + 0x60]
test cl, cl
mov edx, dword [esp + 0x68]
je 0x40946b
lea ebx, [eax + 0x61]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [ebx]
inc ebx
test cl, cl
jne 0x409460
mov byte [edi], 0
movzx ecx, byte [esp + 0x20]
test cl, cl
je 0x40948b
lea ebx, [esp + 0x21]
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [ebx]
inc ebx
test cl, cl
jne 0x409480
mov byte [edi], 0
movzx ecx, byte [esi]
test cl, cl
je 0x4094ab
inc esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x4094a0
mov byte [edi], 0
movzx ecx, byte [esp + 0x10]
test cl, cl
je 0x4094cb
lea esi, [esp + 0x11]
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x4094c0
mov byte [edi], 0
movzx ecx, byte [edx]
test cl, cl
je 0x4094eb
inc edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x4094e0
mov byte [edi], 0
movzx ecx, byte [esp]
test cl, cl
je 0x40950b
lea edx, [esp + 1]
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x409500
mov byte [edi], 0
sub edi, ebp
add dword [eax + 0x80], edi
add esp, 0x4c
pop esi
pop edi
pop ebx
pop ebp
ret 0xc