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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x4c
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0x64]
mov edi, dword [eax + 4]
mov edx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, edx
cmp word [edi + edx + 2], 0
lea edx, [edx + 2]
jne 0x41db40
mov esi, dword [ecx + 4]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [esi + eax + 2], 0
lea eax, [eax + 2]
jne 0x41db60
sar edx, 1
sar eax, 1
lea ecx, [edx + eax]
mov dword [esp + 4], eax
add eax, edx
add eax, 0x1b
test eax, eax
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], ecx
jns 0x41db8e
mov eax, 0xffffffff
jmp 0x41db95
lea eax, [ecx*2 + 0x36]
push eax
call fcn.00408250
add esp, 4
mov dword [esp], eax
mov dword [esp + 0xc], 0x398e3b98
mov dword [esp + 0x10], 0x258b27a9
mov dword [esp + 0x14], 0x21b6238b
mov dword [esp + 0x18], 0x2de52fc0
mov dword [esp + 0x1c], 0x29b62bb4
mov dword [esp + 0x20], 0x15841783
mov dword [esp + 0x24], 0x11851389
mov dword [esp + 0x28], 0x1d8c1f81
mov dword [esp + 0x2c], 0x19a71bfc
mov dword [esp + 0x30], 0x59a07b3
mov dword [esp + 0x34], 0x1950398
mov dword [esp + 0x38], 0xda70f92
mov dword [esp + 0x3c], 0x9ae0b91
mov dword [esp + 0x40], 0xf708
lea eax, [esp + 0xc]
xor ecx, ecx
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
mov ebp, ecx
and ebp, 0x6a
mov ebx, edx
xor ebx, 0xca
sub ebx, ebp
inc bl
xor bl, byte [eax]
add bl, 9
mov byte [eax], bl
inc eax
dec edx
add ecx, 0xfffffffe
cmp edx, 0xffffffc8
jne 0x41dc20
movzx ecx, word [edi]
mov edx, dword [esp]
mov eax, edx
test cx, cx
je 0x41dc71
add edi, 2
mov eax, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0x41dc60
mov word [eax], 0
movzx ecx, word [esp + 0xc]
test cx, cx
je 0x41dca1
lea edx, [esp + 0xe]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x41dc90
mov word [eax], 0
movzx ecx, word [esi]
test cx, cx
je 0x41dcd1
add esi, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [esi]
add esi, 2
test cx, cx
jne 0x41dcc0
mov word [eax], 0
mov eax, dword [esp + 0x64]
mov ebx, dword [eax]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebx + eax + 2], 0
lea eax, [eax + 2]
jne 0x41dcf0
mov ecx, dword [esp + 0x64]
mov ebp, dword [ecx + 8]
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebp + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x41dd10
mov edx, dword [esp + 0x68]
mov edi, dword [edx]
mov edx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edi + edx + 2], 0
lea edx, [edx + 2]
jne 0x41dd30
sar eax, 1
sar ecx, 1
sar edx, 1
add ecx, eax
lea eax, [edx + ecx]
add eax, 0x13
test eax, eax
jns 0x41dd54
mov eax, 0xffffffff
jmp 0x41dd5d
add ecx, edx
lea eax, [ecx*2 + 0x26]
push eax
call fcn.00408250
add esp, 4
mov esi, eax
movzx eax, word [ebx]
mov dword [esp + 8], esi
test ax, ax
je 0x41dd91
add ebx, 2
mov esi, dword [esp + 8]
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ebx]
add ebx, 2
test ax, ax
jne 0x41dd80
mov word [esi], 0x2f
mov dword [esp + 0xc], 0x4387416f
mov dword [esp + 0x10], 0x47d245dc
mov dword [esp + 0x14], 0x4ba449ad
mov dword [esp + 0x18], 0x4fa74ddf
mov dword [esp + 0x1c], 0x739c719f
mov dword [esp + 0x20], 0x775975e7
mov word [esp + 0x24], 0x7978
mov dword [esp + 0x26], 0
mov eax, 0x30a2910
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax - 0x30a2904]
mov edx, ecx
and edx, eax
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, eax
add cl, 0xb0
mov byte [esp + eax - 0x30a2904], cl
inc eax
cmp eax, 0x30a292e
jne 0x41dde0
add esi, 2
movzx eax, word [ebp]
test ax, ax
mov ebx, dword [esp + 0x68]
je 0x41de32
add ebp, 2
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ebp]
add ebp, 2
test ax, ax
jne 0x41de20
mov word [esi], 0
movzx eax, word [esp + 0xc]
test ax, ax
je 0x41de63
lea ecx, [esp + 0xe]
mov ebp, dword [esp]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41de50
jmp 0x41de66
mov ebp, dword [esp]
mov word [esi], 0
movzx eax, word [edi]
test ax, ax
je 0x41de91
add edi, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [edi]
add edi, 2
test ax, ax
jne 0x41de80
mov word [esi], 0
mov dword [esp + 0xc], 0x919e9f46
mov word [esp + 0x10], 0
mov eax, 0x65
mov ecx, 0x1a
nop
mov edi, ecx
and edi, 0x19
mov edx, eax
and edx, 0x66
or edx, edi
xor dl, byte [esp + eax - 0x59]
xor dl, 0x19
add dl, 7
mov byte [esp + eax - 0x59], dl
inc eax
dec ecx
cmp eax, 0x6b
jne 0x41deb0
lea eax, [esp + 0xc]
push 0
push 0
push 0xc00000
push eax
push ebp
push dword [esp + 0x1c]
push dword [esp + 0x78]
call fcn.00421d10
add esp, 0x1c
mov byte [esp], al
jmp dword [0x446ea8]