Function at 0x4c472c
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xb1081706
and ecx, ecx
and edi, ecx
popal
add edi, ecx
add edi, ecx
mov edx, 0
mov eax, esi
add ecx, ecx
add ecx, 0xacfe9b81
mov edi, eax
sub ebx, ecx
or ebx, ebx
add ebx, ecx
mov esi, edi
dec ebx
sub ecx, 0x8eccef1b
inc edx
add ecx, 0x83894c34
inc ebx
cmp edx, 0x10053f4
jne 0x4c4740
mov ecx, ebx
add ecx, 0xd512c012
sub ecx, 0x8bfe9aee
mov edi, 0xbddb4614
not edi
mov ebx, 0x4c4516
not edi
add edi, edi
mov eax, 0x4c470a
mov edi, edx
mov ecx, 0x39d9b7d4
inc ecx
mov esi, dword [ebx]
add ecx, edx
sub edi, edx
and esi, 0xff
sub ecx, 0xe0085b16
or edx, edx
xor dword [eax], esi
add edi, 1
dec ecx
mov edx, edi
inc eax
and edi, edx
mov edx, edi
inc ebx
sub edi, edx
mov ecx, 0x31be16ce
cmp eax, entry0
jl 0x4c479a
dec ecx
sub ecx, 1
mov ecx, edx
sub ecx, 0x5895fd55
sub edx, 0x616efc82
not ebx
mov edi, 0x4c470e
mov esi, 0x8c77bf72
add ecx, 0xa8d2287d
mov edi, dword [edi]
add ebx, 1
add edx, 0x68688483
mov edi, dword [edi]
and esi, edx
sub edx, esi
or edx, edx
push edi
add esi, edx
not esi
mov edi, 0x4c470a
mov esi, 0x8041558a
mov esi, 0x9a1824cc
not esi
mov edi, dword [edi]
inc edx
sub edx, 0x23542bb1
mov edx, ebx
mov edi, dword [edi]
sub ebx, 0x9803ece9
add ebx, 0x116077a9
and ecx, edx
push 0x4c4712
mov esi, edx
add ecx, esi
call edi
mov ecx, ebx
sub esi, edx
mov edi, dword [esp]
add esp, 4
or esi, esi
sub edx, 0x5a180b9b
push 0x4c471f
or edx, ebx
inc ecx
mov ecx, 0x402b6500
sub esp, 4
mov dword [esp], eax
add ecx, ebx
mov ebx, edx
call edi
sub esi, ebx
sub ecx, 0x70d6cd3a
push 0x40
sub ebx, 0xa1b8e6e1
sub ebx, ecx
mov ecx, ebx
push 0x3000
dec ebx
dec ebx
dec esi
push 0x20000a27
mov esi, ecx
add esi, 0xb54c4eec
add esi, 0xcc662c03
push 0
sub ebx, 0x73a1ddf0
mov ebx, edx
call eax
mov ebx, ecx
not edx
add eax, 0x2000099e
add edx, 0xa6808e74
inc esi
mov edi, 0x9b1ee9b8
add edx, 0xe12e7d3e
sub ecx, 0x2872f7c5
sub ebx, 1
mov dword [eax], edi
sub esi, 0xbbbd2409
not ecx
add ebx, 1
mov edi, dword [eax]
inc ebx
or edx, esi
sub ebx, ecx
cmp edi, 0x9b1ee9b8
je 0x4c4905
mov eax, 0
mov ebx, dword [eax]
or esi, edx
sub edx, 0xccb48950
not ecx
mov esi, ebx
not esi
add edx, edx
mov edi, 0xb0d87541
and ecx, ecx
inc ecx
mov edx, section.UPX1
not ecx
sub edi, 0xdd7e17e9
mov esi, 0x4c4515
mov ecx, edi
add edi, ecx
sub edi, 0xcb9cacb8
mov ebx, 0
sub edi, 0xaad91a
not ecx
mov eax, 0x4c4516
or edi, ecx
sub ecx, edi
lea eax, [ebx + eax]
sub ecx, edi
sub edi, ecx
add edi, 0xd9af83ff
mov eax, dword [eax]
mov ecx, edi
not edi
and eax, 0xff
dec ecx
and ecx, edi
add ecx, 1
inc ebx
and edi, edi
sub edi, ecx
or ecx, edi
cmp ebx, 0x1f4
jne 0x4c4985
mov ebx, 0
mov ecx, 0x1a4c2dc6
or edi, ecx
mov edi, 0xa4f18def
sub edi, ecx
add edi, 1
add ecx, ecx
xor dword [edx], eax
and ecx, edi
dec ecx
sub edi, ecx
add edx, 2
sub ecx, 0x4a383fee
not edi
cmp edx, esi
jl 0x4c4946
mov ecx, 0x927c2951
mov ecx, edi
and ecx, edi
sub ecx, edi
mov edx, section.UPX1
sub ebx, edi
and ebx, ebx
sub edi, ebx
mov eax, section.UPX1
mov ebx, 0xf82136b3
or edi, edi
mov esi, 0x4c4515
add ebx, 0xf6ba40ea
mov ebx, edi
mov ecx, 0
add ebx, ebx
inc edi
add ebx, 0xd2c86450
mov cl, byte [eax]
mov ebx, 0xf6b8072
mov edi, 0x3c4d4f61
sub edi, 0x18638dc5
mov byte [edx], cl
and edi, edi
inc edi
add edx, 1
inc edi
not edi
add eax, 2
inc ebx
not ebx
add edi, edi
cmp eax, esi
jle 0x4c49f5
or edi, ebx
mov edi, ebx
inc ecx
or ecx, edi
push 0x4956a0
not ecx
sub edi, 0xdf9b5aa9
not edi
ret