Function at 0x40d760
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 ebx, dword [esp + 0xa4]
mov dword [esp + 8], ecx
mov eax, dword [ecx + 0x60]
mov dword [esp + 4], eax
mov dword [esp + 0x60], 0x979c9e63
mov dword [esp + 0x64], 0x5a929b81
mov dword [esp + 0x68], 0x9e8ab06c
mov dword [esp + 0x6c], 0x8b9f5d76
mov dword [esp + 0x70], 0x8b919084
mov dword [esp + 0x74], 0x83889089
mov dword [esp + 0x78], 0xb4778177
mov dword [esp + 0x7c], 0xacabb7ae
mov dword [esp + 0x80], 0x1e181cb4
mov word [esp + 0x84], 0x51e
mov dword [esp + 0x86], 0
mov esi, 0x1e768188
mov edx, 0x61897e77
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebp, byte [esp + esi - 0x1e768128]
mov edi, edx
and edi, 0x4180186b
mov eax, esi
and eax, 0x16468194
or eax, edi
xor eax, 0xb64fe794
or eax, ebp
lea edi, [edx - 0x61897e00]
and edi, ebp
lea ebp, [edi + edi]
not ebp
add ebp, edi
and ebp, eax
mov eax, 0x67af7856
sub eax, ebp
mov edi, eax
and edi, 1
xor eax, 1
lea eax, [eax + edi*2]
mov byte [esp + esi - 0x1e768128], al
inc esi
dec edx
cmp esi, 0x1e7681b2
jne 0x40d7f0
mov dword [esp], 0x9f9094be
mov esi, 0x6b94f9a
mov edi, 0x7946b065
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esp + esi - 0x6b94f9a]
lea edx, [esi - 0x6b94f00]
and edx, eax
mov ebp, esi
or ebp, eax
xor ebp, edx
or ebp, edi
lea eax, [eax + ebp*2]
add eax, esi
add eax, reloc.OLEAUT32.dll_SysReAllocString
mov edx, eax
xor edx, 3
and eax, 0x7c
add eax, eax
sub eax, edx
inc al
mov byte [esp + esi - 0x6b94f9a], al
inc esi
dec edi
cmp esi, 0x6b94f9e
jne 0x40d860
mov dword [esp + 0xc], 0x9a98d4d5
mov dword [esp + 0x10], 0x8686e8e4
mov dword [esp + 0x14], 0x83b688f5
mov dword [esp + 0x18], 0x8e8382b7
mov dword [esp + 0x1c], 0xfe8bbfbe
mov dword [esp + 0x20], 0x80d52321
mov dword [esp + 0x24], 0x85b38582
mov dword [esp + 0x28], 0xb2def880
mov dword [esp + 0x2c], 0x888d898f
mov dword [esp + 0x30], 0x90ab89b5
mov dword [esp + 0x34], 0xade6df92
mov dword [esp + 0x38], 0xe6a79397
mov dword [esp + 0x3c], 0xae9aa8ac
mov dword [esp + 0x40], 0x5260edd3
mov dword [esp + 0x44], 0x112b545d
mov dword [esp + 0x48], 0x5e565c5e
mov dword [esp + 0x4c], 0x551e261e
mov dword [esp + 0x50], 0x71475155
mov dword [esp + 0x54], 0x3a434c41
mov word [esp + 0x58], 0xe502
mov byte [esp + 0x5e], 0
mov dword [esp + 0x5a], 0
mov esi, 0x4a
mov edi, 0xb5
mov ecx, dword [esp + 0xa0]
nop
nop
movzx edx, byte [esp + esi - 0x3e]
mov eax, edi
xor eax, esi
and eax, edx
xor eax, esi
add al, 0x8e
mov byte [esp + esi - 0x3e], al
inc esi
dec edi
cmp esi, 0x9d
jne 0x40d960
add ecx, dword [esp + 4]
movzx eax, byte [esp + 0xc]
mov edx, ecx
test al, al
je 0x40d9ab
lea esi, [esp + 0xd]
mov edx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [esi]
inc esi
test al, al
jne 0x40d9a0
mov byte [edx], 0
movzx eax, byte [ebx]
test al, al
je 0x40d9cb
inc ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ebx]
inc ebx
test al, al
jne 0x40d9c0
mov dword [esp + 4], ecx
mov byte [edx], 0
movzx eax, byte [esp]
test al, al
je 0x40d9eb
lea ecx, [esp + 1]
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x40d9e0
mov byte [edx], 0
movzx eax, byte [esp + 0x60]
test al, al
je 0x40da0b
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 0x40da00
mov byte [edx], 0
mov ebx, dword [esp + 0xac]
mov ecx, ebx
shr ecx, 2
mov ebp, dword [esp + 0xa8]
mov eax, ebp
mov edi, edx
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
mov eax, ebx
and eax, 0xfffffffc
lea esi, [edx + eax]
add eax, ebp
mov ecx, ebx
shr ecx, 1
and ecx, 1
mov ebp, eax
mov edi, esi
xchg esi, ebp
rep movsw word es:[edi], word [esi]
xchg esi, ebp
test bl, 1
je 0x40da5b
mov ecx, dword [esp + 0xac]
and ecx, 2
movzx eax, byte [eax + ecx]
mov byte [esi + ecx], al
mov dword [esp + 0xc], 0x2032f2d
mov dword [esp + 0x10], 0x7e7a484a
mov dword [esp + 0x14], 0x36034c4c
mov dword [esp + 0x18], 0x3439313c
mov dword [esp + 0x1c], 0xc9c83431
mov dword [esp + 0x20], 0x55577439
mov word [esp + 0x24], 0x5755
mov byte [esp + 0x26], 0x5e
mov dword [esp + 0x27], 0
mov byte [esp + 0x2b], 0
xor ecx, ecx
xor esi, esi
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, ecx
and edi, 0x2c
mov eax, esi
xor eax, 0x36
add eax, edi
xor al, byte [esp + esi + 0xc]
add al, 0xf2
mov byte [esp + esi + 0xc], al
inc esi
add ecx, 2
cmp esi, 0x20
jne 0x40dab0
add edx, dword [esp + 0xac]
movzx eax, byte [esp + 0xc]
test al, al
je 0x40dafb
lea ecx, [esp + 0xd]
nop
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 0x40daf0
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