Function at 0x47b434
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x529d32be
mov edi, 0x218b1e7b
mov ecx, 0xc54018d5
inc edi
popal
add ecx, 0x7b185a01
add edi, 0x2875c1ce
sub ecx, edi
mov edx, 0
mov ebx, eax
inc edi
or edi, edi
mov ecx, ebx
inc esi
mov esi, edi
mov eax, ecx
sub esi, edi
mov esi, 0x787e51e
inc edx
or esi, esi
not edi
cmp edx, 0x100daae
jne 0x47b459
mov edi, 0x93950999
or edi, edi
or esi, edi
sub edi, 0xd1d6d270
not ecx
mov esi, 0x47b21e
sub ebx, edi
sub ecx, 0xdfca963b
inc edi
mov edx, 0x47b412
and ecx, edi
not ecx
mov eax, dword [esi]
sub ebx, 1
not ecx
sub edi, 0x770cc480
and eax, 0xff
add edi, 0x5db8eabe
sub ebx, 1
and ecx, ebx
xor dword [edx], eax
or ecx, ecx
inc edi
add ebx, 0x94b80ae8
inc edx
dec ecx
sub ecx, 0x3c04ebe9
dec ecx
inc esi
inc ebx
mov edi, 0x4ae78f4c
cmp edx, entry0
jl 0x47b4a5
add ebx, 1
mov edi, 0x106b3278
not ebx
sub edi, ecx
add edi, 0x8bee40c0
mov ecx, 0x4dfe3852
sub ecx, edi
mov ebx, 0x47b416
or edi, esi
sub edi, 0xf1a547b7
mov ebx, dword [ebx]
dec ecx
or edx, edi
inc edi
mov ebx, dword [ebx]
not ecx
inc esi
add edi, edi
push ebx
not esi
mov edx, edi
mov ebx, 0x47b412
or edi, ecx
sub ecx, esi
dec ecx
mov ebx, dword [ebx]
and esi, edi
add esi, 0x30a4e18e
mov ebx, dword [ebx]
add edx, edx
sub edx, esi
sub esi, 1
push 0x47b41a
dec esi
sub esi, edx
or ecx, esi
call ebx
or esi, ecx
sub edx, 1
sub ecx, edx
pop ebx
not edi
and esi, ecx
push 0x47b427
or ecx, edi
sub edi, 0xca5fff92
or ecx, ecx
sub esp, 4
mov dword [esp], eax
add edx, 0xfc698e89
add edx, 1
add edi, esi
call ebx
sub edi, 0x80fc36d6
mov esi, ecx
mov edi, esi
push 0x40
not ecx
mov edi, edx
sub esp, 4
mov dword [esp], 0x3000
and esi, ecx
sub edx, ecx
and edi, ecx
push 0x200002c8
add edi, esi
inc ecx
push 0
or esi, edx
mov esi, 0x81312ce8
sub ecx, edi
call eax
add ecx, edi
and edi, edx
not ecx
add eax, 0x2000022b
add ecx, 0x57cade1a
sub esi, 0x1d96058c
mov ebx, 0x7f937d56
sub ecx, 0x3cd83d82
and ecx, esi
mov dword [eax], ebx
or esi, esi
inc edx
mov ebx, dword [eax]
sub esi, ecx
inc edi
cmp ebx, 0x7f937d56
je 0x47b604
mov ebx, 0
mov dword [ebx], edx
mov edx, 0xffc363d3
mov esi, 0xd1544caa
and edi, esi
not ecx
inc esi
mov ecx, edi
not edi
mov esi, section.UPX1
and ecx, edi
sub edi, 1
mov edx, 0x47b21d
mov ecx, edi
sub ecx, 0x2b77f6af
or ecx, edi
mov ebx, 0
inc edi
add edi, 0x38e0e1aa
mov eax, 0x47b21e
dec ecx
dec ecx
and edi, ecx
lea eax, [ebx + eax]
sub ecx, edi
mov ecx, edi
mov eax, dword [eax]
sub ecx, 0x710c6fc1
not ecx
inc edi
and eax, 0xff
and edi, ecx
mov edi, ecx
dec ecx
inc ebx
add edi, edi
mov edi, 0xdb350e95
cmp ebx, 0x1f4
jne 0x47b67a
mov ebx, 0
or ecx, ecx
sub edi, 1
add edi, ecx
sub ecx, edi
inc edi
mov edi, ecx
xor dword [esi], eax
mov edi, ecx
inc edi
add esi, 2
mov ecx, 0x6129a4ba
inc edi
cmp esi, edx
jl 0x47b63f
sub edi, 0x6c6dbe62
sub ecx, 0x9c337df3
dec edi
add edi, 0xe3b52fdf
mov ecx, section.UPX1
or edx, ebx
inc ebx
or ebx, ebx
mov edi, section.UPX1
add edx, ebx
and edx, ebx
mov esi, 0x47b21d
mov edx, 0x58c13e64
add edx, ebx
mov eax, 0
not edx
sub edx, ebx
add ebx, edx
mov al, byte [edi]
sub ebx, edx
sub edx, ebx
mov byte [ecx], al
dec ebx
mov edx, 0x9829a04a
add edx, 0x9cfa8c86
inc ecx
sub ebx, 0x2e9f9751
and edx, edx
add edi, 2
mov ebx, edx
and ebx, ebx
cmp edi, esi
jle 0x47b6df
not ebx
sub edx, 0x4da70ab8
add ebx, edx
inc ecx
mov edi, ecx
push 0x45e6a0
mov edi, 0xb63d939f
sub edi, ecx
ret