Function at 0x40d900
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xa0
cmp dword [ecx + 0x20], 0
je 0x40dda8
mov esi, ecx
movzx eax, byte [ecx]
lea ecx, [esp + 0x9c]
push 0xa
push 4
push ecx
push eax
call fcn.0040ddc0
add esp, 0x10
mov ebx, eax
lea eax, [esi + 0x10]
push eax
call fcn.0040a380
add esp, 4
mov ebp, dword [esi + 0x10]
mov eax, dword [esi + 0x58]
mov eax, dword [eax + 0x48]
mov dword [esp + 0x98], eax
lea eax, [ebp + 0x400]
push eax
call fcn.0040c4f0
add esp, 4
mov edi, eax
mov dword [esp + 0x10], 0x2b370230
mov byte [esp + 0x14], 0x8c
mov dword [esp + 0x15], 0
mov byte [esp + 0x19], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 9
ja 0x40d9b6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x10]
push dword [esp]
push eax
call fcn.0040e2b0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xa
jb 0x40d990
lea eax, [esp + 0x10]
mov ecx, esi
push 0x4561a4
push eax
push edi
call fcn.0040d320
mov dword [esp + 0x10], 0x3666870
mov word [esp + 0x14], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 5
ja 0x40da16
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x10]
push dword [esp]
push eax
call fcn.0040e330
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 6
jb 0x40d9f0
mov ecx, esi
push ebx
lea eax, [esp + 0x14]
push eax
push edi
call fcn.0040d320
mov ebx, dword [str.MeHdy4__pl10vrs6]
mov dword [esp + 0x10], 0x8f2a3034
mov byte [esp + 0x14], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 4
ja 0x40da76
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x10]
push dword [esp]
push eax
call fcn.0040e3b0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 5
jb 0x40da50
mov ecx, esi
push ebx
lea eax, [esp + 0x14]
push eax
push edi
call fcn.0040d320
mov dword [esp + 0x10], 0x8d988091
mov dword [esp + 0x14], 0x98859c89
mov dword [esp + 0x18], 0x9a9b9499
mov byte [esp + 0x1c], 0x30
mov dword [esp + 0x1d], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x10
ja 0x40dae6
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x10]
push dword [esp]
push eax
call fcn.0040e4a0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x11
jb 0x40dac0
mov dword [esp], 0x139eb2b1
mov word [esp + 4], 0
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 5
ja 0x40db39
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xc]
movzx eax, byte [esp + eax]
push dword [esp + 0xc]
push eax
call fcn.0040e420
add esp, 8
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 6
jb 0x40db10
mov ebx, esp
mov ecx, esi
lea eax, [esp + 0x10]
push eax
push ebx
push edi
call fcn.0040d320
mov dword [esp + 0x10], 0xb6a2a4aa
mov byte [esp + 0x14], 0xd0
mov dword [esp + 0x15], 0
mov byte [esp + 0x19], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 9
ja 0x40dba6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x10]
push dword [esp]
push eax
call fcn.0040e510
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xa
jb 0x40db80
mov ecx, esi
push ebp
push dword [esp + 0x9c]
lea eax, [esp + 0x18]
push eax
push edi
call fcn.0040d550
mov ebp, dword [esi + 0x60]
mov dword [esp + 0x10], 0xd9abdb81
mov dword [esp + 0x14], 0xddaadfaa
mov dword [esp + 0x18], 0xd1a0d3a7
mov dword [esp + 0x1c], 0xd5e5d7a4
mov dword [esp + 0x20], 0xe965eb80
mov dword [esp + 0x24], 0xed95ef98
mov dword [esp + 0x28], 0xe1c2e3a2
mov dword [esp + 0x2c], 0xe56de793
mov dword [esp + 0x30], 0xf98efb98
mov dword [esp + 0x34], 0xfd8eff87
mov dword [esp + 0x38], 0xf184f39b
mov dword [esp + 0x3c], 0xf5c7f784
mov dword [esp + 0x40], 0x97b0b8e
mov dword [esp + 0x44], 0xd7d0f7e
mov dword [esp + 0x48], 0x166033f
mov dword [esp + 0x4c], 0x5720767
mov dword [esp + 0x50], 0x19571b63
mov dword [esp + 0x54], 0x1d781f38
mov dword [esp + 0x58], 0x1199136d
mov dword [esp + 0x5c], 0x15721762
mov dword [esp + 0x60], 0x295c2b73
mov dword [esp + 0x64], 0x2d6d2fa7
mov dword [esp + 0x68], 0x2159234a
mov dword [esp + 0x6c], 0x256d2768
mov dword [esp + 0x70], 0x39413b40
mov dword [esp + 0x74], 0x3d413f73
mov dword [esp + 0x78], 0x3156334c
mov dword [esp + 0x7c], 0x35533741
mov dword [esp + 0x80], 0x49314b4b
mov dword [esp + 0x84], 0x4d384f3e
mov dword [esp + 0x88], 0x41754337
mov dword [esp + 0x8c], 0x45584753
mov word [esp + 0x90], 0x5b44
mov dword [esp + 0x92], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x85
ja 0x40dd18
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x10]
push dword [esp]
push eax
call fcn.0040e620
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x86
jb 0x40dcf0
mov dword [esp], 0x3757390b
mov dword [esp + 4], 0x334b3544
mov dword [esp + 8], 0x3130
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 0xb
ja 0x40dd69
mov eax, dword [esp + 0xc]
movzx eax, byte [esp + eax]
push dword [esp + 0xc]
push eax
call fcn.0040e570
add esp, 8
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 0xc
jb 0x40dd40
push 0x493e0
push ebp
push edi
push 0
push 0
lea eax, [esp + 0x24]
push eax
push ebx
call fcn.00410840
add esp, 0x1c
mov ebx, eax
push edi
call fcn.0040c500
add esp, 4
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x60]
mov edx, eax
and edx, ecx
xor eax, ecx
lea eax, [eax + edx*2]
mov dword [esi + 4], eax
mov dword [esi + 0x60], 0
jmp 0x40ddaa
mov bl, 1
mov eax, ebx
add esp, 0xa0
pop esi
pop edi
pop ebx
pop ebp
ret