Function at 0x408fc0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xb0
mov eax, dword [ebp + 8]
mov dword [esp + 0xc], ecx
add eax, dword [ecx + 0x60]
mov ecx, eax
mov dword [esp + 0x80], 0
mov word [esp + 0x94], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x84], 0
mov word [esp + 0x80], 0x3339
mov byte [esp + 0x82], 0x38
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x10]
cmp edx, 0x15
ja 0x40906d
nop
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x10]
add dl, 0xd7
xor dl, byte [esp + esi + 0x80]
add dl, 0x1f
mov esi, dword [esp + 0x10]
mov byte [esp + esi + 0x80], dl
inc dword [esp + 0x10]
mov edx, dword [esp + 0x10]
cmp edx, 0x16
jb 0x409040
mov dword [esp + 0x64], 0
mov word [esp + 0x7c], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x60], 0xa49aa6b4
mov word [esp + 0x64], 0x9d98
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x10]
cmp edx, 0x1d
ja 0x409114
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x10]
movzx esi, byte [esp + esi + 0x60]
lea edi, [edx + esi]
add edi, 0x2c183243
add edx, 0x2c183243
and edx, esi
add edx, edx
mov esi, edx
xor esi, edi
not edx
and edx, edi
add edx, edx
sub edx, esi
add dl, 0x2b
mov esi, dword [esp + 0x10]
mov byte [esp + esi + 0x60], dl
inc dword [esp + 0x10]
mov edx, dword [esp + 0x10]
cmp edx, 0x1e
jb 0x4090d0
mov dword [esp + 0x10], 0x80a3635
mov dword [esp + 0x14], 0x40c3a3a
mov dword [esp + 0x18], 0x7fcfa35
mov dword [esp + 0x1c], 0xfcff04fb
mov dword [esp + 0x20], 0xccff0b08
mov dword [esp + 0x24], 0xedda7a1
mov dword [esp + 0x28], 0x9f7010c
mov dword [esp + 0x2c], 0x10d4ca06
mov dword [esp + 0x30], 0x1e15151b
mov dword [esp + 0x34], 0x1e171d15
mov dword [esp + 0x38], 0xe1accb1c
mov dword [esp + 0x3c], 0xe41b171b
mov dword [esp + 0x40], 0xdc28dada
mov dword [esp + 0x44], 0xd02291f7
mov dword [esp + 0x48], 0x95ffd62d
mov byte [esp + 0x4c], 0xba
mov dword [esp + 0x4d], 0
mov dword [esp + 0x51], 0
mov dword [esp + 0x55], 0
mov dword [esp + 0x59], 0
mov byte [esp + 0x5d], 0
mov dword [esp + 8], 0
mov edx, dword [esp + 8]
cmp edx, 0x4d
ja 0x409222
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [esp + 8]
mov edx, dword [esp + 8]
movzx ebx, byte [esp + edx + 0x10]
lea edx, [edi + 0x130cbdf1]
mov esi, edx
and esi, ebx
xor edx, ebx
mov eax, 0xecf3420e
sub eax, edi
or eax, ebx
add eax, edi
add eax, esi
sub edx, eax
lea edx, [edx + esi*2]
add edx, 0xecf3420e
mov eax, edx
or eax, 0x68
and edx, 0x68
add edx, eax
inc dl
mov eax, dword [esp + 8]
mov byte [esp + eax + 0x10], dl
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0x4e
jb 0x4091d0
mov esi, dword [ebp + 0xc]
movzx ebx, byte [esp + 0x10]
mov edx, ecx
test bl, bl
je 0x40924b
lea edi, [esp + 0x11]
mov edx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [edi]
inc edi
test bl, bl
jne 0x409240
mov byte [edx], 0
movzx ebx, byte [esi]
test bl, bl
je 0x40926b
inc esi
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 0x409260
mov esi, dword [ebp + 0x10]
mov byte [edx], 0
movzx ebx, byte [esp + 0x60]
test bl, bl
je 0x40928b
lea edi, [esp + 0x61]
nop
nop
mov byte [edx], bl
inc edx
movzx ebx, byte [edi]
inc edi
test bl, bl
jne 0x409280
mov byte [edx], 0
movzx ebx, byte [esi]
test bl, bl
je 0x4092ab
inc esi
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 0x4092a0
mov byte [edx], 0
movzx ebx, byte [esp + 0x80]
test bl, bl
je 0x4092db
lea esi, [esp + 0x81]
nop
nop
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 0x4092d0
mov byte [edx], 0
sub edx, ecx
mov eax, dword [esp + 0xc]
add dword [eax + 0x60], edx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0xc