Function at 0x40dcf0
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xcb8
mov ecx, dword [edx]
inc esp
cmp byte [eax + eax - 0x39], al
test byte [eax + eax*8], ah
add byte [eax], al
add byte [edi - 0x68], dl
outsb dx, byte [esi]
xor al, 0xc6
test byte [esp + eax*8], ah
add byte [eax], al
add byte [eax], al
mov dword [esp + 0x1c0], 0
mov eax, dword [esp + 0x1c0]
cmp eax, 4
ja 0x40dd7e
nop
mov eax, dword [esp + 0x1c0]
mov edx, dword [esp + 0x1c0]
movzx edx, byte [esp + edx + 0xc0]
add eax, 0x851c8d01
xor eax, edx
mov dword [esp + 0x2a8], eax
mov eax, dword [esp + 0x2a8]
add al, 0xd0
mov edx, dword [esp + 0x1c0]
mov byte [esp + edx + 0xc0], al
inc dword [esp + 0x1c0]
mov eax, dword [esp + 0x1c0]
cmp eax, 5
jb 0x40dd30
mov edx, dword [0x443840]
mov dword [esp + 0x2a8], 0x4078181b
mov dword [esp + 0x2ac], 0x68636a74
mov dword [esp + 0x2b0], 0x786b6e7c
mov dword [esp + 0x2b4], 0x687b7c63
mov dword [esp + 0x2b8], 0x6bba6665
mov dword [esp + 0x2bc], 0xad55657b
mov dword [esp + 0x2c0], 0x69b2a3a4
mov dword [esp + 0x2c4], 0x995d7377
mov word [esp + 0x2c8], 0
mov dword [esp + 0x20], 0
mov eax, dword [esp + 0x20]
cmp eax, 0x21
ja 0x40de3f
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x20]
movzx esi, byte [esp + esi + 0x2a8]
add eax, 0x240f963e
xor eax, esi
mov dword [esp + 0x1c0], eax
mov eax, dword [esp + 0x1c0]
add al, 0x3c
mov esi, dword [esp + 0x20]
mov byte [esp + esi + 0x2a8], al
inc dword [esp + 0x20]
mov eax, dword [esp + 0x20]
cmp eax, 0x22
jb 0x40de00
movzx ebx, byte [esp + 0x2a8]
lea eax, [esp + 0x1c0]
test bl, bl
je 0x40de6b
lea esi, [esp + 0x2a9]
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], bl
inc eax
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x40de60
mov byte [eax], 0
movzx ebx, byte [edx]
test bl, bl
je 0x40de8b
inc edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], bl
inc eax
movzx ebx, byte [edx]
inc edx
test bl, bl
jne 0x40de80
mov byte [eax], 0
movzx edx, byte [esp + 0xc0]
test dl, dl
je 0x40debb
lea esi, [esp + 0xc1]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [esi]
inc esi
test dl, dl
jne 0x40deb0
mov byte [eax], 0
movzx edx, byte [ecx]
test dl, dl
je 0x40dedb
inc ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [ecx]
inc ecx
test dl, dl
jne 0x40ded0
mov byte [eax], 0
mov dword [esp + 0x2a8], 0x29bf2fed
mov dword [esp + 0x2ac], 0x25a82bbc
mov dword [esp + 0x2b0], 0x21b627bb
mov dword [esp + 0x2b4], 0xdd0923ae
mov dword [esp + 0x2b8], 0xd951df32
mov dword [esp + 0x2bc], 0xd549db4a
mov dword [esp + 0x2c0], 0xd1f0d71c
mov dword [esp + 0x2c4], 0xcd5cd333
mov dword [esp + 0x2c8], 0xc95ccf5e
mov dword [esp + 0x2cc], 0xc527cb53
mov dword [esp + 0x2d0], 0xc14cc727
mov dword [esp + 0x2d4], 0xfd6bc35b
mov dword [esp + 0x2d8], 0xf92fff68
mov dword [esp + 0x2dc], 0xf521fb72
mov dword [esp + 0x2e0], 0xf17ff779
mov dword [esp + 0x2e4], 0xed39f37d
mov dword [esp + 0x2e8], 0xe97fef70
mov dword [esp + 0x2ec], 0xe571eb78
mov dword [esp + 0x2f0], 0xe16de733
mov dword [esp + 0x2f4], 0x9d08e370
mov dword [esp + 0x2f8], 0x990e9f03
mov dword [esp + 0x2fc], 0x95039b79
mov dword [esp + 0x300], 0x910a970a
mov dword [esp + 0x304], 0x8db9930e
mov dword [esp + 0x308], 0x89888fb4
mov byte [esp + 0x30c], 0
lea ecx, [esp + 0x1c0]
mov dword [esp + 0x20], 0
mov edx, dword [esp + 0x20]
cmp edx, 0x64
ja 0x40e061
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x20]
movzx esi, byte [esp + esi + 0x2a8]
add edx, 0xe37c5172
xor edx, esi
mov dword [esp + 0xc0], edx
mov edx, dword [esp + 0xc0]
add dl, 0xa4
mov esi, dword [esp + 0x20]
mov byte [esp + esi + 0x2a8], dl
inc dword [esp + 0x20]
mov edx, dword [esp + 0x20]
cmp edx, 0x65
jb 0x40e020
sub eax, ecx
mov dword [esp + 0xc0], 0x25c52bfd
mov dword [esp + 0xc4], 0x21b927b6
mov dword [esp + 0xc8], 0x2322
mov byte [esp + 0xcc], 0
mov dword [esp + 0x240], 0
mov edx, dword [esp + 0x240]
cmp edx, 0xc
ja 0x40e0fa
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 0x240]
mov esi, dword [esp + 0x240]
movzx esi, byte [esp + esi + 0xc0]
add edx, 0xe4de4ef6
xor edx, esi
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x20]
add dl, 0x24
mov esi, dword [esp + 0x240]
mov byte [esp + esi + 0xc0], dl
inc dword [esp + 0x240]
mov edx, dword [esp + 0x240]
cmp edx, 0xa
jb 0x40e0b0
lea edx, [esp + 0xb8]
lea esi, [esp + 0xa8]
lea ebx, [esp + 0x2a8]
lea edi, [esp + 0xc0]
push edx
push esi
push eax
push ecx
push ebx
push edi
push 0x448658
call fcn.0040cc80
add esp, 0x1c
movzx eax, al
jmp dword [eax*4 + 0x444184]