Function at 0x47b434
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x649b1b07
add eax, eax
not edi
popal
sub eax, edi
or edi, edi
mov edx, 0
mov esi, ecx
and eax, eax
sub edi, 1
mov ebx, esi
mov eax, 0xc76b9e59
or edi, edi
mov ecx, ebx
dec edi
sub eax, 0xe7115efd
inc edx
sub eax, 1
add edi, edi
cmp edx, 0x1002a06
jne 0x47b448
sub edi, 1
mov eax, 0xb9141d0b
dec eax
add eax, 0xcb11bb7d
mov edx, 0x47b21e
add eax, 1
inc esi
mov edi, 0x47b412
add ebx, 1
not eax
mov ecx, dword [edx]
add esi, eax
inc ebx
and ecx, 0xff
sub esi, 0xdb8db78
or eax, eax
xor dword [edi], ecx
add esi, eax
and ebx, ebx
add edi, 1
or eax, ebx
and eax, eax
sub eax, esi
inc edx
dec esi
sub ebx, 0xe134b902
cmp edi, entry0
jl 0x47b4a4
add ebx, 1
inc ebx
sub ebx, esi
sub eax, ebx
inc ebx
sub ebx, 1
dec ecx
mov edi, 0x47b416
mov ecx, edx
add ecx, 0x30021c78
mov edi, dword [edi]
sub edx, 0x436bc21
mov edx, 0xe7202c01
mov edi, dword [edi]
sub edx, ecx
and ebx, esi
push edi
sub ebx, esi
not edx
add esi, 1
mov edi, 0x47b412
or ebx, ecx
dec ebx
mov edi, dword [edi]
add ecx, 0x9856dbba
or edx, ebx
dec ebx
mov edi, dword [edi]
not ebx
add ecx, ebx
not esi
push 0x47b41a
not esi
add edx, ecx
mov esi, 0xdb3c3962
call edi
mov edx, 0x575e3ed0
mov ebx, ecx
dec ecx
pop edi
and ebx, esi
mov ecx, 0x6b7705ad
push 0x47b427
and ecx, edx
dec edx
push eax
or ecx, ecx
mov ecx, 0x4122cc91
add esi, edx
call edi
add edx, 0x315e170b
mov esi, 0xe87ffc58
or esi, ecx
push 0x40
add ebx, 0xe6489d34
not edx
push 0x3000
and ebx, edx
sub edx, 0x132fea32
push 0x20000def
inc edx
sub esi, 0x7921e1b3
add ecx, esi
push 0
mov ecx, 0xf84dac28
or esi, esi
and ebx, esi
call eax
sub ecx, esi
add esi, 0x270b127a
sub edx, esi
add eax, 0x20000d5e
sub esi, 0x1c4be5fa
mov ecx, 0x6e32f2ac
add ebx, esi
mov edi, 0x516c4ebd
add esi, ecx
add ecx, 0x2729d559
mov dword [eax], edi
or ebx, ebx
and ebx, esi
mov edi, dword [eax]
dec ebx
or ecx, edx
cmp edi, 0x516c4ebd
je 0x47b5f3
mov edx, 0
mov ebx, dword [edx]
sub edx, ebx
mov edx, 0x647fd9e1
sub esi, 0x14f56530
sub edx, 0xf54b0541
mov edx, ebx
sub ecx, ebx
dec edi
inc eax
sub edi, eax
mov esi, section.UPX1
mov eax, edi
sub eax, 0x45867b1c
mov ebx, 0x47b21d
not eax
sub eax, edi
mov edx, 0
not eax
inc edi
and edi, edi
mov ecx, 0x47b21e
sub edi, 1
sub edi, 0x46fdbeeb
lea ecx, [ecx + edx]
dec edi
add edi, 0xd4124167
mov ecx, dword [ecx]
mov edi, 0x1af41ad4
add edi, 0x88dbfe25
and ecx, 0xff
dec edi
not eax
inc edx
not edi
dec eax
cmp edx, 0x1f4
jne 0x47b670
mov edx, 0
and eax, edi
not eax
not edi
mov eax, 0x46e6cac7
xor dword [esi], ecx
not edi
add edi, edi
add esi, 2
mov eax, edi
dec eax
cmp esi, ebx
jl 0x47b62e
add eax, 0x8e33d46e
and edi, eax
sub eax, edi
and eax, edi
inc eax
mov edx, section.UPX1
mov ecx, esi
add esi, 0xe60d3d5
add esi, 0xf6a21eb8
mov ebx, section.UPX1
or esi, esi
add ecx, 0x3c8e949f
add esi, ecx
mov edi, 0x47b21d
sub esi, 0x612920a
dec ecx
mov eax, 0
mov esi, ecx
or ecx, esi
add esi, ecx
mov al, byte [ebx]
sub ecx, esi
add ecx, 1
add esi, 1
mov byte [edx], al
or ecx, ecx
not esi
mov ecx, esi
inc edx
add ecx, 1
not esi
add ebx, 2
sub ecx, 0x15c30683
add ecx, esi
cmp ebx, edi
jle 0x47b6d8
or esi, ecx
or ecx, ecx
sub edi, eax
and eax, eax
sub edi, 0x2638bb84
push 0x45e6a0
and eax, edi
sub eax, edi
ret