Function at 0x40d3d0
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, 0x90
mov dword [esp + 0xc], ecx
mov eax, dword [ecx + 0x60]
mov dword [esp], eax
mov dword [esp + 0x64], 0xe5e0fe09
mov dword [esp + 0x68], 0x3ae6fdf7
mov dword [esp + 0x6c], 0xfee6ec00
mov dword [esp + 0x70], 0xe9f93b22
mov dword [esp + 0x74], 0x9fbfce8
mov dword [esp + 0x78], 0x110c040f
mov dword [esp + 0x7c], 0x18c91fd5
mov dword [esp + 0x80], 0x80d010a
mov dword [esp + 0x84], 0xbea4a018
mov dword [esp + 0x88], 0xb3ba
mov byte [esp + 0x8c], 0
mov esi, 0x23e17ded
mov edx, 0xdc1e8212
nop
movzx ebp, byte [esp + esi - 0x23e17d89]
mov edi, edx
and edi, 0x841402d2
mov eax, esi
and eax, 0x2181492d
or eax, edi
xor eax, ebp
mov edi, eax
and edi, 0x5e
add edi, edi
xor edi, 0xa4
xor eax, 0x8c
add eax, edi
inc al
mov byte [esp + esi - 0x23e17d89], al
inc esi
dec edx
cmp esi, 0x23e17e16
jne 0x40d450
mov dword [esp + 4], 0x3f3034de
mov byte [esp + 8], 0
lea esi, [esp + 4]
mov edi, 0x5ef29a35
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esi]
mov edx, edi
or edx, ebx
not edx
lea ebp, [edi - 0x5ef29a00]
mov eax, ebx
not eax
or eax, ebp
add eax, ebx
inc eax
or eax, edx
add eax, 0x5c2d4819
mov edx, eax
and edx, 0xd
xor eax, 0xd
lea eax, [eax + edx*2]
add al, 0xe8
mov byte [esi], al
inc esi
dec edi
cmp edi, 0x5ef29a30
jne 0x40d4b0
mov dword [esp + 0x10], 0x7274a8af
mov dword [esp + 0x14], 0x4e4a9ca0
mov dword [esp + 0x18], 0x4d52549f
mov dword [esp + 0x1c], 0x46594251
mov dword [esp + 0x20], 0x96415552
mov dword [esp + 0x24], 0x447ba1bb
mov dword [esp + 0x28], 0x43594f46
mov dword [esp + 0x2c], 0x4a728c4c
mov dword [esp + 0x30], 0x444b4b41
mov dword [esp + 0x34], 0xb4b1bb4f
mov dword [esp + 0x38], 0xab6285b6
mov dword [esp + 0x3c], 0x7ebdb1b1
mov dword [esp + 0x40], 0xa6b6a4a0
mov dword [esp + 0x44], 0xbaa4778d
mov dword [esp + 0x48], 0x7f91b8a7
mov dword [esp + 0x4c], 0xb6aaa8ba
mov dword [esp + 0x50], 0xb37a9e72
mov dword [esp + 0x54], 0x978d93af
mov dword [esp + 0x58], 0xa289908b
mov word [esp + 0x5c], 0x6f4e
mov byte [esp + 0x60], 0
mov word [esp + 0x5e], 0
xor esi, esi
xor edi, edi
mov ecx, dword [esp + 0xa4]
nop
nop
movzx edx, byte [esp + edi + 0x10]
mov ebx, edi
xor ebx, 0x57f790a5
mov eax, esi
and eax, 0xb4
sub eax, ebx
mov ebx, eax
and ebx, edx
mov ebp, ebx
not ebp
lea ebx, [ebx + ebp*2]
inc ebx
or eax, edx
and eax, ebx
add al, 0x39
mov byte [esp + edi + 0x10], al
inc edi
add esi, 2
cmp edi, 0x51
jne 0x40d5a0
add ecx, dword [esp]
movzx eax, byte [esp + 0x10]
mov edx, ecx
test al, al
je 0x40d5fb
lea esi, [esp + 0x11]
mov edx, ecx
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [esi]
inc esi
test al, al
jne 0x40d5f0
mov byte [edx], 0
mov esi, dword [esp + 0xa8]
movzx eax, byte [esi]
test al, al
je 0x40d61b
inc esi
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [esi]
inc esi
test al, al
jne 0x40d610
mov dword [esp], ecx
mov byte [edx], 0
movzx eax, byte [esp + 4]
test al, al
je 0x40d63b
lea ecx, [esp + 5]
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x40d630
mov byte [edx], 0
movzx eax, byte [esp + 0x64]
test al, al
je 0x40d65b
lea ecx, [esp + 0x65]
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x40d650
mov byte [edx], 0
mov eax, dword [esp + 0xb0]
mov ecx, eax
mov esi, eax
shr ecx, 2
mov ebx, dword [esp + 0xac]
mov eax, ebx
mov edi, edx
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
mov edi, esi
mov eax, esi
and eax, 0xfffffffc
lea esi, [edx + eax]
add eax, ebx
mov ecx, edi
mov ebp, edi
shr ecx, 1
and ecx, 1
mov ebx, eax
mov edi, esi
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
mov ecx, ebp
test cl, 1
je 0x40d6b3
mov ecx, dword [esp + 0xb0]
and ecx, 2
movzx eax, byte [eax + ecx]
mov byte [esi + ecx], al
mov dword [esp + 0x10], 0x22235f5d
mov dword [esp + 0x14], 0x2e2af8fa
mov dword [esp + 0x18], 0xf623fcfc
mov dword [esp + 0x1c], 0xf4e9f1ec
mov dword [esp + 0x20], 0x1918f4f1
mov dword [esp + 0x24], 0xb5b7d409
mov word [esp + 0x28], 0xb7b5
mov byte [esp + 0x2a], 0xae
mov word [esp + 0x2b], 0
mov byte [esp + 0x2d], 0
xor ecx, ecx
nop
nop
nop
movzx esi, byte [esp + ecx + 0x10]
lea eax, [ecx + 0xee]
and eax, esi
mov ebx, eax
and ebx, 0xfffffffd
mov ebp, eax
and ebp, 2
mov edi, eax
or edi, 0xfd
inc edi
imul edi, ebx
or eax, 2
imul eax, ebp
lea ebx, [ecx + esi]
add edi, esi
sub edi, eax
lea eax, [ecx + edi]
add eax, 0x47
and ebx, 1
and eax, 0xfe
lea ebx, [ebx + ebx*2]
xor ebx, 2
add ebx, eax
mov byte [esp + ecx + 0x10], bl
inc ecx
cmp ecx, 0x1e
jne 0x40d700
add edx, dword [esp + 0xb0]
movzx eax, byte [esp + 0x10]
test al, al
je 0x40d77b
lea ecx, [esp + 0x11]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x40d770
mov byte [edx], 0
sub edx, dword [esp]
mov eax, dword [esp + 0xc]
add dword [eax + 0x60], edx
add esp, 0x90
pop esi
pop edi
pop ebx
pop ebp
ret 0x10