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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xec
mov dword [esp + 0xc], 0x33f3311d
mov dword [esp + 0x10], 0x3fce3dcc
mov dword [esp + 0x14], 0x3bdb39f4
mov dword [esp + 0x18], 0xc727c538
mov dword [esp + 0x1c], 0xc3c2c1ed
lea eax, [esp + 0x20]
mov word [esp + 0x20], 0
mov ecx, 0x7d495af4
mov edx, 0x82b6a50b
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + ecx - 0x7d495ae8]
lea ebx, [edx + 0x7d495b00]
xor ebx, ecx
and ebx, esi
xor ebx, ecx
not ebx
and ebx, ecx
mov edi, ebx
and edi, 2
mov ebp, ebx
or ebx, 2
imul ebx, edi
xor edi, 2
and ebp, 0x7d495bfd
imul ebp, edi
add ebx, ebp
mov edi, ebx
not edi
and edi, ecx
and ebx, edx
sub ebx, edi
mov edi, ebx
xor edi, esi
not ebx
and ebx, esi
add ebx, ebx
sub ebx, edi
add bl, 0x3c
mov byte [esp + ecx - 0x7d495ae8], bl
inc ecx
dec edx
cmp ecx, 0x7d495b0a
jne 0x42c070
lea esi, [esp + 0xa6]
lea ebx, [esp + 0xc]
mov edx, ebx
mov edi, esi
mov ecx, 5
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xba]
xor ecx, ecx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
lea edi, [esp + 0x4c]
push edi
push 0
push 0
push 9
push esi
push 0
call dword [0x452b70]
mov ebp, dword [esp + 0x4c]
test ebp, ebp
jns 0x42c118
mov eax, 0xffffffff
jmp 0x42c11f
lea eax, [ebp*2]
push eax
call fcn.0040c820
add esp, 4
push edi
push ebp
mov dword [esp + 0x44], eax
push eax
push 9
push esi
push 0
call dword [0x452b70]
mov dword [esp + 0xc], 0x63fb61a4
mov dword [esp + 0x10], 0x67c565f7
mov dword [esp + 0x14], 0x5bc859c7
mov dword [esp + 0x18], 0x5f5e5df8
lea eax, [esp + 0x1c]
mov word [esp + 0x1c], 0
mov byte [esp + 0x1e], 0
mov ecx, 0xe7
nop
movzx esi, byte [ebx]
lea edi, [ecx - 0x6c693c00]
or edi, esi
and esi, ecx
lea edx, [edi + edi]
not edx
add edx, edi
or edx, esi
add dl, 0x88
mov byte [ebx], dl
inc ebx
dec ecx
cmp ecx, 0xd4
jne 0x42c170
lea ebp, [esp + 0x96]
lea edx, [esp + 0xc]
mov edi, ebp
mov ecx, 4
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xa6]
xor ecx, ecx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0xc], 0x4fd7498c
mov dword [esp + 0x10], 0x43a54ddb
mov dword [esp + 0x14], 0x47d041d3
mov dword [esp + 0x18], 0x7bbd45a0
mov dword [esp + 0x1c], 0x7fec7999
mov dword [esp + 0x20], 0x73e47d9d
mov dword [esp + 0x24], 0x777671f9
lea esi, [esp + 0x28]
mov dword [esp + 0x28], 0
mov edi, 0x12
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + edi - 6]
mov ebx, edx
and ebx, edi
mov eax, ebx
or al, 0xfd
inc al
mov ecx, ebx
and cl, 0x3d
mul cl
mov ecx, eax
add cl, dl
mov eax, ebx
shr al, 1
and al, 1
or bl, 2
mul bl
add al, al
sub cl, al
movzx eax, cl
add eax, edi
add al, 0xa6
mov byte [esp + edi - 6], al
inc edi
cmp edi, 0x32
jne 0x42c210
lea eax, [esp + 0xd0]
lea edx, [esp + 0xc]
mov edi, eax
mov ecx, 7
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xec]
xor ecx, ecx
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
mov dword [esp + 0xc], 0x4fd7490c
mov dword [esp + 0x10], 0x43e54ddb
mov dword [esp + 0x14], 0x47d041d3
mov dword [esp + 0x18], 0xbb0a45e0
mov dword [esp + 0x1c], 0xbff8b90c
lea ebx, [esp + 0x20]
mov word [esp + 0x20], 0xbdbc
mov dword [esp + 0x22], 0
mov byte [esp + 0x26], 0
mov ecx, 0x915d9cf2
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx + 0x6ea2631a]
xor edx, ecx
mov esi, 0x2c
sub esi, edx
add edx, 0x53
and esi, 0x8d
and edx, 0x72
sub edx, esi
mov byte [esp + ecx + 0x6ea2631a], dl
inc ecx
cmp ecx, 0x915d9d0d
jne 0x42c2c0
lea esi, [esp + 0xba]
lea edx, [esp + 0xc]
mov ecx, 5
mov edi, esi
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xce]
mov ecx, 1
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
mov dword [esp + 0x80], ebp
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], esi
mov eax, dword [esp + 0x3c]
add eax, 2
mov dword [esp + 0x50], eax
xor ecx, ecx
mov dword [esp + 0x58], 0
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x44eb10]