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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x8c
mov eax, dword [esp + 0xa8]
mov ebx, dword [esp + 0xa4]
mov ecx, dword [eax + 4]
mov eax, 0xfffffffe
cmp word [ecx + eax + 2], 0
lea eax, [eax + 2]
jne 0x424200
sar eax, 1
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebx + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x424220
add eax, 0x21
sar ecx, 1
mov edx, ecx
and edx, eax
xor ecx, eax
lea eax, [ecx + edx*2]
add eax, 0x1e
test eax, eax
jns 0x424247
mov eax, 0xffffffff
jmp 0x424251
lea eax, [ecx + edx*2]
lea eax, [eax*2 + 0x3c]
push eax
call fcn.0040c8b0
add esp, 4
mov esi, eax
mov dword [esp + 0x4c], 0xf76b09aa
mov dword [esp + 0x50], 0xf35ff56b
mov dword [esp + 0x54], 0xff31f16e
mov dword [esp + 0x58], 0xfb68fd6f
mov dword [esp + 0x5c], 0xe74bf964
mov dword [esp + 0x60], 0xe37ee57c
mov dword [esp + 0x64], 0xef42e129
mov dword [esp + 0x68], 0xeb36ed29
mov dword [esp + 0x6c], 0xd70fe936
mov dword [esp + 0x70], 0xd30bd508
mov dword [esp + 0x74], 0xdf05d10a
mov dword [esp + 0x78], 0xdb03dd02
mov dword [esp + 0x7c], 0xc762d905
mov dword [esp + 0x80], 0xc36ec56d
mov dword [esp + 0x84], 0xcfcec16e
mov word [esp + 0x88], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xfe
xor cl, byte [esp + eax + 0x4c]
add cl, 0xa
mov byte [esp + eax + 0x4c], cl
inc eax
cmp eax, 0x3e
jne 0x4242f0
mov dword [esp], 0x39a73b98
mov dword [esp + 4], 0x25b727a4
mov dword [esp + 8], 0x218d23ba
mov dword [esp + 0xc], 0x2d852f89
mov dword [esp + 0x10], 0x29862b88
mov dword [esp + 0x14], 0x15bc1783
mov dword [esp + 0x18], 0x118913bb
mov dword [esp + 0x1c], 0x1d821f84
mov dword [esp + 0x20], 0x19891bb8
mov dword [esp + 0x24], 0x5800789
mov dword [esp + 0x28], 0x1a90357
mov dword [esp + 0x2c], 0xd920f98
mov dword [esp + 0x30], 0x9980ba7
mov dword [esp + 0x34], 0x75e17795
mov dword [esp + 0x38], 0x71e073e5
mov dword [esp + 0x3c], 0x7d2b7f25
mov dword [esp + 0x40], 0x797a7b29
mov eax, 0xeee0c98b
mov edi, 0x74
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebp, byte [esp + eax + 0x111f3675]
mov ecx, edi
and ecx, 0x88
mov edx, eax
and edx, 0x77
or edx, ecx
xor edx, eax
xor edx, 0x77
and edx, ebp
xor edx, eax
mov ecx, edx
and ecx, 0x48
xor edx, 0x48
lea ecx, [edx + ecx*2]
inc cl
mov byte [esp + eax + 0x111f3675], cl
inc eax
dec edi
cmp eax, 0xeee0c9cf
jne 0x4243a0
mov edi, dword [esp + 0xa8]
mov ecx, dword [edi + 4]
movzx edx, word [ecx]
mov eax, esi
test dx, dx
je 0x424411
add ecx, 2
mov eax, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x424400
mov word [eax], 0
movzx ecx, word [esp]
test cx, cx
je 0x424441
lea edx, [esp + 2]
nop
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 0x424430
mov word [eax], 0
movzx ecx, word [ebx]
test cx, cx
je 0x424471
add ebx, 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 [ebx]
add ebx, 2
test cx, cx
jne 0x424460
mov word [eax], 0
movzx ecx, word [esp + 0x4c]
test cx, cx
je 0x4244a1
lea edx, [esp + 0x4e]
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 0x424490
mov word [eax], 0
mov eax, dword [esp + 0xac]
mov ebx, dword [eax]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebx + eax + 2], 0
lea eax, [eax + 2]
jne 0x4244c0
sar eax, 1
mov edx, dword [edi]
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edx + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x4244e0
add eax, 0xa
sar ecx, 1
mov edx, ecx
and edx, eax
add edx, edx
mov ebp, dword [edi + 8]
mov edi, 0xfffffffe
nop
nop
cmp word [ebp + edi + 2], 0
lea edi, [edi + 2]
jne 0x424500
xor ecx, eax
sar edi, 1
add ecx, edx
lea eax, [edi + ecx]
inc eax
mov ebp, 0xffffffff
test eax, eax
mov dword [esp + 0x48], esi
jns 0x424529
mov eax, 0xffffffff
jmp 0x424532
add ecx, edi
lea eax, [ecx*2 + 2]
push eax
call fcn.0040c8b0
add esp, 4
mov dword [esp + 0x44], eax
mov dword [esp], 0x9333912f
mov dword [esp + 4], 0x9f0a9d08
mov dword [esp + 8], 0x9b069935
mov dword [esp + 0xc], 0x87518517
mov word [esp + 0x10], 0x8180
mov dword [esp + 0x12], 0
mov byte [esp + 0x16], 0
xor edi, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + edi]
mov ecx, ebp
or ecx, 0x9f434e4
add ecx, edi
mov eax, edi
xor eax, 0x9f434e4
lea ecx, [eax + ecx*2]
add ecx, 2
mov eax, edx
xor eax, 0x98ca0c4d
mov esi, ecx
xor esi, 0x4d
xor edx, 0x6735f3b2
and edx, esi
xor ecx, 0x6735f3b2
and ecx, eax
or ecx, edx
mov eax, 0xd6
sub eax, ecx
add ecx, 0x29
and eax, 0x9d
and ecx, 0x62
sub ecx, eax
mov byte [esp + edi], cl
lea eax, [edi + 1]
dec ebp
mov edi, eax
cmp eax, 0x17
jne 0x424580
movzx ecx, word [esp]
mov ebp, dword [esp + 0x44]
mov eax, ebp
test cx, cx
je 0x424601
lea edx, [esp + 2]
mov eax, ebp
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4245f0
mov word [eax], 0
movzx ecx, word [ebx]
test cx, cx
mov esi, dword [esp + 0xa8]
je 0x424631
add ebx, 2
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x424620
mov word [eax], 0x5f
add eax, 2
mov ecx, dword [esi]
movzx edx, word [ecx]
test dx, dx
je 0x424661
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x424650
mov word [eax], 0x5f
add eax, 2
mov ecx, dword [esi + 8]
movzx edx, word [ecx]
test dx, dx
je 0x424691
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x424680
mov word [eax], 0
mov dword [esp], 0x939291fa
mov byte [esp + 4], 0
mov eax, 0x7dc9e524
mov ecx, 0xdb
nop
nop
nop
nop
movzx edx, byte [esp + eax - 0x7dc9e524]
mov esi, ecx
xor esi, eax
and esi, edx
xor esi, eax
lea edx, [esi + 0x4b]
mov edi, 0xb4
sub edi, esi
or edi, 1
add edi, esi
or edx, 1
add edx, edi
add dl, 0x4c
mov byte [esp + eax - 0x7dc9e524], dl
inc eax
dec ecx
cmp eax, 0x7dc9e529
jne 0x4246b0
mov eax, esp
push 0
push 1
push 0
push eax
mov esi, dword [esp + 0x58]
push esi
push ebp
push dword [esp + 0xb8]
call fcn.00424990
add esp, 0x1c
mov ebx, eax
jmp dword [0x44b978]