Function at 0x41f1c0
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, 0xfffffff8
sub esp, 0x120
mov dword [esp + 8], 0x43fe4d29
mov dword [esp + 0xc], 0x47e141d3
mov dword [esp + 0x10], 0xbb2645e5
mov dword [esp + 0x14], 0xbf2eb9f9
mov dword [esp + 0x18], 0xb3f6bd2c
mov dword [esp + 0x1c], 0xb722b111
mov dword [esp + 0x20], 0xabcfb515
lea eax, [esp + 0x24]
mov dword [esp + 0x24], 0xa9a8
mov byte [esp + 0x28], 0
mov ecx, 0x56312009
mov edx, 0xa9cedff6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + edx + 0x56312012]
mov edi, esi
not edi
mov ebx, edi
and ebx, 0xc12ad70f
or edi, 0x3ed528f0
add esi, edi
inc esi
or esi, ebx
mov edi, ecx
and edi, 0xc12a4500
mov ebx, edx
and ebx, 0x920f
or ebx, edi
mov edi, edx
and edi, 0x3ed528f0
or edi, 0x920f
xor edi, ebx
xor edi, esi
mov dword [esp + 0xb0], edi
mov ebx, dword [esp + 0xb0]
add bl, 0x46
mov byte [esp + edx + 0x56312012], bl
dec ecx
inc edx
cmp ecx, 0x56311fe8
jne 0x41f230
lea ebx, [esp + 0xfe]
lea edx, [esp + 8]
mov ecx, 7
mov edi, ebx
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0x11a]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
lea esi, [esp + 0x68]
push esi
push 0
push 0
push 0xe
push ebx
push 0
call dword [0x44c2c4]
mov edi, dword [esp + 0x68]
test edi, edi
jns 0x41f2e1
mov eax, 0xffffffff
jmp 0x41f2e4
lea eax, [edi + edi]
push eax
call fcn.00408a60
add esp, 4
push esi
push edi
mov dword [esp + 8], eax
push eax
push 0xe
push ebx
push 0
call dword [0x44c2c4]
mov dword [esp + 8], 0x6312611c
mov dword [esp + 0xc], 0x67056505
mov dword [esp + 0x10], 0x6b0b6903
mov dword [esp + 0x14], 0x6f0b6d0b
mov dword [esp + 0x18], 0x93929103
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0
mov ecx, 0x1b8484f1
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx - 0x1b8484e9]
lea esi, [ecx - 1]
xor esi, edx
mov dword [esp + 0xb0], esi
mov edx, dword [esp + 0xb0]
add dl, 0x70
mov byte [esp + ecx - 0x1b8484e9], dl
movzx edx, byte [esp + ecx - 0x1b8484e8]
xor edx, ecx
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0xb0]
add dl, 0x70
mov byte [esp + ecx - 0x1b8484e8], dl
add ecx, 2
cmp ecx, 0x1b848509
jne 0x41f340
lea edi, [esp + 0x9c]
lea edx, [esp + 8]
mov ecx, 5
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xb0]
xor ecx, ecx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, dword [esp + 0x68]
mov ecx, eax
add ecx, 9
jns 0x41f3c8
mov eax, 0xffffffff
jmp 0x41f3cd
add eax, eax
add eax, 0x12
push eax
call fcn.00408a60
add esp, 4
mov esi, eax
mov eax, dword [esp]
movzx ecx, word [eax]
mov eax, esi
test cx, cx
je 0x41f401
mov eax, dword [esp]
lea edx, [eax + 2]
mov eax, esi
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x41f3f0
mov word [eax], 0
movzx ecx, word [esp + 0x9c]
test cx, cx
je 0x41f431
lea edx, [esp + 0x9e]
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x41f420
mov word [eax], 0
lea eax, [esp + 0x78]
push eax
push esi
call fcn.0043f9d0
add esp, 8
not eax
shr eax, 0x1f
mov dword [esp + 4], esi
jmp dword [eax*4 + 0x4479ac]