Function at 0x40dab0
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, 0x8c
mov dword [esp + 8], ecx
mov eax, dword [ecx + 0x60]
mov dword [esp + 4], eax
mov dword [esp + 0x60], 0x6d707659
mov dword [esp + 0x64], 0x8a6e757f
mov dword [esp + 0x68], 0x464e5470
mov dword [esp + 0x6c], 0x5979bb92
mov dword [esp + 0x70], 0x494b7458
mov dword [esp + 0x74], 0x41444c47
mov dword [esp + 0x78], 0x5899479d
mov dword [esp + 0x7c], 0x5855516a
mov dword [esp + 0x80], 0xb6bcb048
mov word [esp + 0x84], 0xc3ba
mov dword [esp + 0x86], 0
mov word [esp + 0x8a], 0
mov eax, 0x49983159
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax - 0x499830f9]
xor edx, eax
lea esi, [edx + edx]
and esi, 2
sub edx, esi
add edx, 0x90070943
mov edi, edx
and edi, esi
xor edx, esi
lea edx, [edx + edi*2]
mov byte [esp + eax - 0x499830f9], dl
inc eax
cmp eax, 0x49983185
jne 0x40db40
mov dword [esp], 0x69649882
mov esi, 0x41799017
nop
nop
nop
nop
movzx eax, byte [esp + esi - 0x41799017]
xor eax, esi
lea edi, [eax + eax]
mov edx, 0x475fd073
sub edx, eax
or edx, 1
lea ebp, [eax + edx]
add ebp, 0xb8a02f8d
mov edx, ebp
and edx, 0xfd
mov ebx, ebp
and ebx, 2
or ebp, 2
imul ebp, ebx
xor ebx, 2
imul ebx, edx
and edi, 2
sub eax, edi
add eax, ebp
add eax, ebx
add al, 0x8d
mov byte [esp + esi - 0x41799017], al
inc esi
cmp esi, 0x4179901b
jne 0x40db80
mov dword [esp + 0xc], 0xaaa89495
mov dword [esp + 0x10], 0xa6a69884
mov dword [esp + 0x14], 0xa3565895
mov dword [esp + 0x18], 0x9e63a257
mov dword [esp + 0x1c], 0xae9b6f6e
mov dword [esp + 0x20], 0x60b5c3c1
mov dword [esp + 0x24], 0x65936562
mov dword [esp + 0x28], 0x72aea860
mov dword [esp + 0x2c], 0x787d797f
mov dword [esp + 0x30], 0x707b7975
mov dword [esp + 0x34], 0x7dc6af72
mov dword [esp + 0x38], 0x46877377
mov dword [esp + 0x3c], 0x7e8a787c
mov dword [esp + 0x40], 0x72803d53
mov dword [esp + 0x44], 0x315b748d
mov dword [esp + 0x48], 0x6e968c8e
mov dword [esp + 0x4c], 0x952e462e
mov dword [esp + 0x50], 0x91679195
mov dword [esp + 0x54], 0x4a639c61
mov word [esp + 0x58], 0x522
mov dword [esp + 0x5a], 0
mov esi, 0x677582d2
mov ecx, dword [esp + 0xa0]
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + esi - 0x677582c6]
lea eax, [esi - 0x67758200]
lea ebx, [edi + edi]
not ebx
add ebx, edi
mov edx, ebx
xor edx, esi
sub edx, ebx
and ebx, esi
add edx, ebx
or eax, edi
not edx
and edx, eax
add dl, 0xe6
mov byte [esp + esi - 0x677582c6], dl
inc esi
cmp esi, 0x67758324
jne 0x40dc90
add ecx, dword [esp + 4]
movzx eax, byte [esp + 0xc]
mov edx, ecx
test al, al
je 0x40dceb
lea esi, [esp + 0xd]
mov edx, ecx
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [esi]
inc esi
test al, al
jne 0x40dce0
mov byte [edx], 0
mov esi, dword [esp + 0xa4]
movzx eax, byte [esi]
test al, al
je 0x40dd0b
inc esi
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [esi]
inc esi
test al, al
jne 0x40dd00
mov dword [esp + 4], ecx
mov byte [edx], 0
movzx eax, byte [esp]
test al, al
je 0x40dd2b
lea ecx, [esp + 1]
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x40dd20
mov byte [edx], 0
movzx eax, byte [esp + 0x60]
test al, al
je 0x40dd4b
lea ecx, [esp + 0x61]
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x40dd40
mov byte [edx], 0
mov ebp, dword [esp + 0xac]
mov ecx, ebp
shr ecx, 2
mov ebx, dword [esp + 0xa8]
mov eax, ebx
mov edi, edx
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
mov eax, ebp
and eax, 0xfffffffc
lea esi, [edx + eax]
add eax, ebx
mov ecx, ebp
xor ecx, 0xfffffffc
or ebp, 3
and ebp, ecx
mov ecx, ebp
shr ecx, 1
mov ebx, eax
mov edi, esi
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
mov ecx, dword [esp + 0xac]
test cl, 1
je 0x40dda2
and ebp, 0xfffffffe
movzx eax, byte [eax + ebp]
mov byte [esi + ebp], al
mov dword [esp + 0xc], 0x92937775
mov dword [esp + 0x10], 0x968aa8aa
mov dword [esp + 0x14], 0xde93a4a4
mov dword [esp + 0x18], 0x9ce9a1d4
mov dword [esp + 0x1c], 0xe9e89ce1
mov dword [esp + 0x20], 0x4d4fac99
mov word [esp + 0x24], 0x4f4d
mov byte [esp + 0x26], 0x76
mov word [esp + 0x27], 0
mov byte [esp + 0x29], 0
xor eax, eax
nop
nop
nop
nop
mov esi, eax
and esi, 0x12
mov edi, eax
and edi, 0xd
mov ecx, eax
xor ecx, 0x92
add ecx, esi
sub ecx, edi
add ecx, eax
xor cl, byte [esp + eax + 0xc]
add cl, 0x26
mov byte [esp + eax + 0xc], cl
inc eax
cmp eax, 0x1e
jne 0x40ddf0
add edx, dword [esp + 0xac]
movzx eax, byte [esp + 0xc]
test al, al
je 0x40de3b
lea ecx, [esp + 0xd]
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x40de30
mov byte [edx], 0
sub edx, dword [esp + 4]
mov eax, dword [esp + 8]
add dword [eax + 0x60], edx
add esp, 0x8c
pop esi
pop edi
pop ebx
pop ebp
ret 0x10