Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x66eda1db
inc ecx
and edi, ecx
popal
mov edi, 0x23beb1af
sub edi, 1
add edi, 1
mov esi, 0
mov eax, ecx
or edx, edx
not edx
sub ebx, edx
mov edi, eax
dec ebx
or edx, edx
add ebx, ebx
mov ecx, edi
or ebx, edx
mov edx, 0xdf5e997d
not edx
inc esi
add edx, 0x2328e965
dec edx
not edx
cmp esi, 0x1004d25
jne 0x47afd8
sub ebx, 1
add ebx, ebx
cmp esi, 0x1004d25
je 0x47b01f
mov edx, 0
mov cl, byte [edx]
sub edx, ebx
mov edx, 0x4ab07fa8
not edi
dec ecx
mov eax, 0x47ada2
add ecx, ecx
add ecx, ecx
add ebx, 0x9fc60e50
mov esi, 0x47af96
add ecx, 0x23dc37c3
and ebx, ecx
add ebx, ebx
mov edi, dword [eax]
inc ecx
or edx, edx
and edi, 0xff
dec ecx
add ecx, 0xf267fa1c
xor dword [esi], edi
sub ebx, 0xd046a9e5
not edx
inc esi
add ebx, edx
mov edx, 0x43b08589
not ecx
inc eax
dec ebx
sub edx, ecx
add ebx, 0xdd145559
cmp esi, entry0
jl 0x47b047
inc ecx
sub ebx, edx
and ecx, ebx
and ecx, ecx
and esi, ecx
mov edi, 0x5b1e9c61
mov edx, 0x47af9a
sub edi, ebx
inc esi
sub ebx, 0x6c5baf7a
mov edx, dword [edx]
add edi, 0x1c3f7d7e
or edi, ebx
add ebx, ebx
mov edx, dword [edx]
dec edi
mov edi, 0x3d0e7092
push edx
dec edi
mov ebx, edi
mov edx, 0x47af96
mov ecx, 0xc5ece65d
sub edi, 0xd4981970
add ebx, 0xa7cff93
mov edx, dword [edx]
add ecx, ecx
dec edi
mov edx, dword [edx]
add edi, 0xb5457929
add edi, 0x45ef289c
sub edi, 1
push 0x47af9e
sub ecx, 0x2177a93b
sub ebx, 0x655acaf8
inc esi
call edx
mov ebx, 0x442b236
add ebx, 0x9ed7d36
inc esi
mov edx, dword [esp]
add esp, 4
or ebx, ebx
add ecx, esi
push 0x47afab
inc ebx
inc edi
push eax
and esi, esi
or ebx, ebx
call edx
mov ebx, esi
sub edi, 0xa7ab2389
sub edi, 0x3302f37
sub esp, 4
mov dword [esp], 0x40
and ebx, edi
or ecx, esi
add ecx, esi
sub esp, 4
mov dword [esp], 0x3000
dec edi
sub ecx, 0x4ca94648
sub ebx, 0x698da8e
push 0x2000070b
or esi, edi
mov ebx, 0x39a4109b
add ebx, esi
sub esp, 4
mov dword [esp], 0
inc edi
dec ecx
not ecx
call eax
inc ebx
dec ecx
inc edi
add eax, 0x20000651
sub ebx, ecx
sub edi, ecx
add esi, 1
mov edx, 0xb3b4b771
inc ebx
inc edi
mov esi, ecx
mov dword [eax], edx
not esi
add esi, 0x4ebfe07a
mov edx, dword [eax]
add ebx, esi
sub ebx, 0xeabe8fd8
cmp edx, 0xb3b4b771
je 0x47b1b0
mov edx, 0
mov ecx, dword [edx]
mov edi, ecx
mov ecx, 0x63bec28b
dec edi
and esi, esi
not ecx
or edi, edi
sub ecx, edi
mov eax, section.UPX1
add ecx, ecx
dec ecx
not ecx
mov edx, 0x47ada1
or edi, edi
add ecx, edi
mov ecx, 0x14dbdbf4
mov esi, 0
and ecx, edi
mov edi, ecx
mov ebx, 0x47ada2
inc edi
add edi, edi
lea ebx, [ebx + esi]
and ecx, edi
sub ecx, 0xb9a450b6
mov ebx, dword [ebx]
mov ecx, edi
add edi, edi
and ebx, 0xff
mov edi, ecx
sub ecx, 1
sub edi, ecx
inc esi
mov ecx, 0x5e17386f
add ecx, 1
cmp esi, 0x1f4
jne 0x47b223
mov esi, 0
sub edi, ecx
mov edi, 0x5f7c7deb
add edi, 0x4b228b5
and edi, edi
sub edi, 0x256ef357
xor dword [eax], ebx
sub ecx, edi
add ecx, 0x8f80ef29
add edi, edi
add eax, 2
inc edi
inc ecx
cmp eax, edx
jl 0x47b1e1
inc ecx
mov edi, ecx
or ecx, ecx
sub edi, ecx
and edi, edi
mov eax, section.UPX1
sub edi, 1
sub edi, ebx
and ebx, ebx
mov edx, section.UPX1
sub ebx, edi
and edi, ebx
sub edi, 0x4c7e7a4
mov esi, 0x47ada1
sub ebx, 0x498fdbf2
and ebx, ebx
not ebx
mov ecx, 0
sub ebx, 0x8a660919
and edi, ebx
mov cl, byte [edx]
not ebx
add ebx, 0x89664e68
mov byte [eax], cl
or ebx, edi
sub ebx, 0xc40b8c41
mov ebx, 0xdf7d5f38
inc eax
add edi, 0x19fe3c71
and ebx, ebx
add edx, 2
sub edi, ebx
add ebx, ebx
or ebx, edi
cmp edx, esi
jle 0x47b297
dec edi
add edi, ebx
and ecx, edi
add ecx, 0x65235e5e
inc ecx
push 0x45e6a0
add edi, 0xe57641dd
add ecx, edi
mov edi, ecx
ret