Function at 0x4093f0
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x80
mov dword [esp + 0xc], ecx
mov eax, dword [ecx + 0x80]
mov dword [esp], eax
mov dword [esp + 0x18], 0x6d707659
mov dword [esp + 0x1c], 0x8a6e757f
mov dword [esp + 0x20], 0x464e5470
mov dword [esp + 0x24], 0x5979bb92
mov dword [esp + 0x28], 0x494b7458
mov dword [esp + 0x2c], 0x41444c47
mov dword [esp + 0x30], 0x5899479d
mov dword [esp + 0x34], 0x5855516a
mov dword [esp + 0x38], 0xb6bcb048
mov word [esp + 0x3c], 0xc3ba
mov dword [esp + 0x3e], 0
mov word [esp + 0x42], 0
mov esi, 0xd0326559
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + esi + 0x2fcd9abf]
mov ebx, esi
and ebx, edi
add edi, esi
add ebx, ebx
mov eax, edi
sub eax, ebx
and edi, 1
xor eax, 1
add eax, 0x42
or eax, edi
add eax, edi
mov byte [esp + esi + 0x2fcd9abf], al
inc esi
cmp esi, 0xd0326585
jne 0x409470
mov dword [esp + 0x10], 0x7104006e
mov dword [esp + 0x14], 0
mov esi, 0x74326143
mov ebp, 0xbd
nop
nop
nop
nop
nop
movzx ebx, byte [esp + ebp - 0xad]
mov edi, ebp
and edi, ebx
mov eax, edi
and eax, 0xfffffffd
mov edx, edi
and edx, 2
or edi, 2
imul edi, edx
xor edx, 2
imul edx, eax
add edi, edx
lea eax, [esi + edi]
xor eax, ebx
not edi
add edi, ebp
and edi, ebx
add edi, edi
sub edi, eax
lea eax, [edi + 0x44fbe64e]
mov edx, 0xbb0419b1
sub edx, edi
and edi, 1
mov ebx, edx
not ebx
and edx, 0x3e5a80a3
and eax, 0xc1a57f5c
or eax, edx
and ebx, 1
or ebx, eax
mov eax, ebx
and eax, edi
or edi, 0xa2
xor edi, ebx
lea eax, [edi + eax*2]
mov byte [esp + ebp - 0xad], al
dec esi
inc ebp
cmp ebp, 0xc5
jne 0x4094c0
mov dword [esp + 0x44], 0x58b7fdff
mov dword [esp + 0x48], 0x575d4b5a
mov dword [esp + 0x4c], 0x56be9048
mov dword [esp + 0x50], 0x706f6f4d
mov dword [esp + 0x54], 0x686d776b
mov dword [esp + 0x58], 0x6fd6b16a
mov dword [esp + 0x5c], 0xa2617d65
mov dword [esp + 0x60], 0x7262706c
mov dword [esp + 0x64], 0x7678cba9
mov dword [esp + 0x68], 0xbba57c7b
mov dword [esp + 0x6c], 0x7a76747e
mov dword [esp + 0x70], 0x873e5abe
mov dword [esp + 0x74], 0x8b818f8b
mov dword [esp + 0x78], 0x568d8487
mov dword [esp + 0x7c], 0x134a
mov esi, 0x13f4f6d3
mov ecx, dword [esp + 0x94]
nop
nop
nop
movzx edx, byte [esp + esi - 0x13f4f68f]
xor edx, esi
mov eax, edx
and eax, 0x60
add eax, eax
xor edx, 0x1f
sub eax, edx
mov byte [esp + esi - 0x13f4f68f], al
inc esi
cmp esi, 0x13f4f70f
jne 0x4095c0
add ecx, dword [esp]
mov word [esp + 4], 0x4c4d
mov byte [esp + 6], 0x16
mov dword [esp + 7], 0
mov byte [esp + 0xb], 0
mov edx, 6
mov esi, 0x7802e7fa
mov ebp, dword [esp + 0xc]
movzx eax, byte [esp + edx - 2]
mov edi, edx
and edi, eax
add edi, edi
lea ebx, [edx + eax]
add ebx, 0x87fd1800
sub edi, eax
add edi, esi
and ebx, 1
or edi, 1
lea eax, [ebx + ebx*2]
xor eax, 2
sub eax, edi
add al, 0xe1
mov byte [esp + edx - 2], al
inc edx
dec esi
cmp edx, 0xe
jne 0x409610
movzx ebx, byte [esp + 4]
mov edx, ecx
test bl, bl
je 0x40966b
lea esi, [esp + 5]
mov edx, ecx
nop
nop
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 0x409660
mov byte [edx], 0
movzx ebx, byte [ebp + 0x60]
test bl, bl
mov eax, dword [esp + 0x98]
je 0x40968b
lea esi, [ebp + 0x61]
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x409680
mov byte [edx], 0
movzx ebx, byte [esp + 0x44]
test bl, bl
je 0x4096ab
lea esi, [esp + 0x45]
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x4096a0
mov byte [edx], 0
movzx ebx, byte [eax]
test bl, bl
mov dword [esp], ecx
je 0x4096cb
inc eax
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [eax]
inc eax
test bl, bl
jne 0x4096c0
mov byte [edx], 0
movzx ecx, byte [esp + 0x10]
test cl, cl
je 0x4096eb
lea esi, [esp + 0x11]
nop
nop
nop
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x4096e0
mov byte [edx], 0
movzx ecx, byte [esp + 0x18]
test cl, cl
je 0x40970b
lea esi, [esp + 0x19]
nop
nop
nop
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x409700
mov byte [edx], 0
mov eax, dword [esp + 0xa0]
mov ecx, eax
mov esi, eax
shr ecx, 2
mov ebp, dword [esp + 0x9c]
mov eax, ebp
mov edi, edx
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
mov eax, esi
mov ebx, esi
and ebx, 0xfffffffc
lea esi, [edx + ebx]
add ebx, ebp
mov ecx, eax
mov ebp, eax
shr ecx, 1
and ecx, 1
mov eax, ebx
mov edi, esi
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, ebp
test al, 1
je 0x409760
mov eax, dword [esp + 0xa0]
and eax, 2
movzx ecx, byte [ebx + eax]
mov byte [esi + eax], cl
mov dword [esp + 0x18], 0xb110d13
mov dword [esp + 0x1c], 0
xor ecx, ecx
mov ebp, dword [esp + 0xc]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, ecx
add al, 0x81
xor al, byte [esp + ecx + 0x18]
add al, 0x7b
mov byte [esp + ecx + 0x18], al
inc ecx
cmp ecx, 8
jne 0x409780
mov dword [esp + 0x44], 0xd2d33735
mov byte [esp + 0x48], 0x3c
mov dword [esp + 0x49], 0
mov ecx, 0x90722aca
mov esi, 5
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esp + ecx + 0x6f8dd57a]
mov ebx, esi
and ebx, 0xc
mov edi, ecx
and edi, 0xd3
or edi, ebx
xor edi, ecx
xor edi, 0xf3
and edi, eax
xor edi, ecx
add edi, 0x2dc52a0d
mov eax, edi
and eax, 1
xor edi, 1
lea eax, [edi + eax*2]
mov byte [esp + ecx + 0x6f8dd57a], al
inc ecx
dec esi
cmp ecx, 0x90722ad3
jne 0x4097c0
add edx, dword [esp + 0xa0]
movzx ecx, byte [esp + 0x44]
test cl, cl
je 0x40982b
lea esi, [esp + 0x45]
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x409820
mov byte [edx], 0
movzx ecx, byte [ebp + 0x60]
test cl, cl
je 0x40984b
lea esi, [ebp + 0x61]
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x409840
mov byte [edx], 0
movzx ecx, byte [esp + 0x18]
test cl, cl
je 0x40986b
lea esi, [esp + 0x19]
nop
nop
nop
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x409860
mov byte [edx], 0
sub edx, dword [esp]
add dword [ebp + 0x80], edx
add esp, 0x80
pop esi
pop edi
pop ebx
pop ebp
ret 0x10