Function at 0x40d830
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, 0x84
mov dword [esp], ecx
mov edx, dword [ecx + 0x80]
mov dword [esp + 0x14], 0xffe4e633
mov dword [esp + 0x18], 0x3ae2fbf1
mov dword [esp + 0x1c], 0xf6fae004
mov dword [esp + 0x20], 0xeb07452e
mov dword [esp + 0x24], 0xfb0100ec
mov dword [esp + 0x28], 0x13080009
mov dword [esp + 0x2c], 0xccf11cf
mov dword [esp + 0x30], 0xf40b0ff6
mov dword [esp + 0x34], 0xa6a8a41c
mov dword [esp + 0x38], 0x8db6
mov byte [esp + 0x3c], 0
mov esi, 0x91ffa76c
mov ebp, 0x93
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esp + esi + 0x6e0058a8]
mov edi, ebp
and edi, 0x9a
mov eax, esi
and eax, 0x65
or eax, edi
xor eax, esi
xor eax, 0x65
and eax, ebx
xor eax, esi
add al, 0xe4
mov byte [esp + esi + 0x6e0058a8], al
inc esi
dec ebp
cmp esi, 0x91ffa795
jne 0x40d8b0
mov dword [esp + 0xc], 0xc1ccf0e6
mov byte [esp + 0x10], 0
mov esi, 0x110575d1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esp + esi - 0x110575c5]
mov edi, esi
and edi, eax
lea ebx, [esi - 0x11057500]
or ebx, eax
lea eax, [edi + edi]
not eax
add eax, edi
and eax, ebx
add al, 0xeb
mov byte [esp + esi - 0x110575c5], al
inc esi
cmp esi, 0x110575d6
jne 0x40d900
mov dword [esp + 0x44], 0x44a9efed
mov dword [esp + 0x48], 0x414f7946
mov dword [esp + 0x4c], 0x7692847c
mov dword [esp + 0x50], 0x44797d43
mov dword [esp + 0x54], 0x747f4571
mov dword [esp + 0x58], 0x79a28376
mov dword [esp + 0x5c], 0xaa6b4f73
mov dword [esp + 0x60], 0x7a567c60
mov dword [esp + 0x64], 0x7664b99f
mov dword [esp + 0x68], 0xad976861
mov dword [esp + 0x6c], 0x929a686a
mov dword [esp + 0x70], 0x914a6a52
mov dword [esp + 0x74], 0x959b9d91
mov dword [esp + 0x78], 0x669f9085
mov word [esp + 0x7c], 0x215e
mov dword [esp + 0x7e], 0
mov word [esp + 0x82], 0
mov esi, 0x56
mov edi, 0xa9
mov ecx, dword [esp + 0x98]
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esp + esi - 0x12]
lea eax, [edi - 0x80]
and eax, 0x26
mov ebp, esi
and ebp, 0xd9
or ebp, eax
xor ebp, 0xd9
and ebp, ebx
or ebx, edi
not ebx
add ebx, ebp
add bl, 0x52
mov byte [esp + esi - 0x12], bl
inc esi
dec edi
cmp esi, 0x96
jne 0x40d9d0
add ecx, edx
mov word [esp + 4], 0x5455
mov byte [esp + 6], 0x3e
mov word [esp + 7], 0
xor edx, edx
nop
nop
nop
nop
nop
mov eax, edx
add al, 0xa
xor al, byte [esp + edx + 4]
add al, 0xce
mov byte [esp + edx + 4], al
inc edx
cmp edx, 5
jne 0x40da20
movzx ebx, byte [esp + 4]
mov edx, ecx
test bl, bl
je 0x40da5b
lea esi, [esp + 5]
mov edx, ecx
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 0x40da50
mov byte [edx], 0
mov eax, dword [esp]
movzx ebx, byte [eax + 0x60]
test bl, bl
je 0x40da8d
lea esi, [eax + 0x61]
mov eax, dword [esp + 0x9c]
nop
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 0x40da80
jmp 0x40da94
mov eax, dword [esp + 0x9c]
mov byte [edx], 0
movzx ebx, byte [esp + 0x44]
test bl, bl
je 0x40dabb
lea esi, [esp + 0x45]
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 0x40dab0
mov byte [edx], 0
movzx ebx, byte [eax]
test bl, bl
mov dword [esp + 0x40], ecx
je 0x40dadb
inc eax
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [eax]
inc eax
test bl, bl
jne 0x40dad0
mov byte [edx], 0
movzx ecx, byte [esp + 0xc]
test cl, cl
je 0x40dafb
lea esi, [esp + 0xd]
nop
nop
nop
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x40daf0
mov byte [edx], 0
movzx ecx, byte [esp + 0x14]
test cl, cl
je 0x40db1b
lea esi, [esp + 0x15]
nop
nop
nop
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x40db10
mov byte [edx], 0
mov esi, dword [esp + 0xa4]
mov ecx, esi
shr ecx, 2
mov ebp, dword [esp + 0xa0]
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
and eax, 3
mov ecx, eax
shr ecx, 1
mov ebp, ebx
mov edi, esi
xchg esi, ebp
rep movsw word es:[edi], word [esi]
xchg esi, ebp
mov ecx, dword [esp + 0xa4]
test cl, 1
je 0x40db6c
movzx ecx, byte [ebx + eax - 1]
mov byte [esi + eax - 1], cl
mov dword [esp + 0x44], 0x27392537
mov byte [esp + 0x48], 0x28
mov dword [esp + 0x49], 0
mov byte [esp + 0x4d], 0
mov ecx, 0x99f26bc7
nop
nop
nop
nop
nop
movzx eax, byte [esp + ecx + 0x660d947d]
mov ebx, eax
and ebx, ecx
add bl, bl
sub al, bl
movzx eax, al
add eax, ecx
add al, 0x1d
mov byte [esp + ecx + 0x660d947d], al
inc ecx
cmp ecx, 0x99f26bd1
jne 0x40db90
mov dword [esp + 0x14], 0x92937775
mov byte [esp + 0x18], 0x4c
mov dword [esp + 0x19], 0
mov byte [esp + 0x1d], 0
mov ecx, 0x92
mov esi, 0x6d
nop
nop
nop
nop
nop
movzx edi, byte [esp + ecx - 0x7e]
mov eax, esi
xor eax, ecx
and eax, edi
xor eax, ecx
add al, 0x26
mov byte [esp + ecx - 0x7e], al
inc ecx
dec esi
cmp ecx, 0x9c
jne 0x40dbe0
add edx, dword [esp + 0xa4]
movzx ecx, byte [esp + 0x14]
test cl, cl
je 0x40dc2d
lea esi, [esp + 0x15]
mov eax, dword [esp]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x40dc20
jmp 0x40dc30
mov eax, dword [esp]
mov byte [edx], 0
movzx ecx, byte [eax + 0x60]
test cl, cl
je 0x40dc4b
lea esi, [eax + 0x61]
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x40dc40
mov byte [edx], 0
movzx ecx, byte [esp + 0x44]
test cl, cl
je 0x40dc6b
lea esi, [esp + 0x45]
nop
nop
nop
nop
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x40dc60
mov byte [edx], 0
sub edx, dword [esp + 0x40]
add dword [eax + 0x80], edx
add esp, 0x84
pop esi
pop edi
pop ebx
pop ebp
ret 0x10