Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x61388f36
or esi, esi
add esi, 0x3a0c8bd5
sub ecx, 0xae403736
popal
not esi
inc ecx
dec ecx
mov ecx, 0
mov eax, edi
add ebx, 0x170b218a
dec ebx
add esi, 0xcfe6334e
mov edx, eax
dec ebx
or esi, esi
mov edi, edx
or esi, ebx
or ebx, esi
or ebx, esi
inc ecx
sub ebx, esi
mov esi, 0x251ba9e4
cmp ecx, 0x100bda9
jne 0x47afd6
not ebx
or esi, ebx
cmp ecx, 0x100bda9
je 0x47b019
mov edx, 0
mov dword [edx], eax
mov esi, ebx
add esi, 1
sub esi, 0x736a78c8
mov esi, ecx
mov ecx, 0x47ada2
add edi, edi
sub esi, edx
add edx, 1
mov ebx, 0x47af96
mov edx, esi
dec edx
sub esi, 0x1df18c8e
mov eax, dword [ecx]
inc esi
or edi, edx
add edi, 0xa31518b8
and eax, 0xff
or edx, edx
sub edi, esi
or esi, edx
xor dword [ebx], eax
mov edi, 0x26a5db9e
sub edx, 0x7c1c6705
inc ebx
mov edx, 0xbad70859
not edi
add esi, 0xeb0e7850
add ecx, 1
add esi, esi
mov edx, 0x19b55dea
not esi
cmp ebx, entry0
jl 0x47b046
inc edx
not esi
add edi, 0x7ba5f31c
not edx
add esi, 0x728c403e
or edx, edx
add ebx, 1
mov edi, 0x47af9a
mov ebx, edx
add esi, 0x4087d707
mov edi, dword [edi]
sub ecx, ebx
not ecx
mov edi, dword [edi]
add ecx, ebx
sub ebx, 0x4a63aa56
push edi
dec ebx
mov ebx, edx
sub ecx, 0x9d2eebfd
mov edi, 0x47af96
sub ebx, 0xfb73fe7c
not esi
not esi
mov edi, dword [edi]
dec edx
inc esi
add ecx, edx
mov edi, dword [edi]
dec edx
mov esi, 0x2bc87541
sub ebx, 1
push 0x47af9e
mov ecx, esi
inc ecx
mov esi, 0x979805c3
call edi
sub esi, edx
not ecx
mov ebx, 0x558bffc5
mov edi, dword [esp]
add esp, 4
mov ecx, 0x41bb61f5
dec esi
inc ebx
push 0x47afab
or ebx, edx
not ebx
not ebx
sub esp, 4
mov dword [esp], eax
sub ebx, esi
not ebx
add esi, 0xffeec7b3
call edi
not edx
sub esi, 0xa573e166
push 0x40
add edx, 0x7f50bf20
sub edx, 0x9174e4d4
push 0x3000
and esi, ecx
sub ecx, 0xf951d766
push 0x20000438
or esi, ebx
add esi, ebx
push 0
add ecx, 0xe535d44a
mov esi, edx
inc edx
call eax
sub ebx, 1
mov ebx, 0xb5a4f915
add eax, 0x200003be
add edx, 0x36c961ef
and ebx, ecx
mov edi, 0x3dd222d8
mov edx, 0x6dab23
inc esi
mov dword [eax], edi
not esi
inc ecx
add esi, 0xee87cb6d
mov edi, dword [eax]
sub esi, 0x56fb29c4
sub ebx, 0x3d04e0ca
sub ebx, 0x52eac25a
cmp edi, 0x3dd222d8
je 0x47b1c9
mov edx, 0
mov al, byte [edx]
and edx, esi
sub edx, esi
mov edx, 0xa8a5dfe8
dec esi
dec ecx
or esi, ebx
add ecx, ecx
add ecx, ecx
add ecx, ecx
mov eax, section.UPX1
and ecx, ecx
sub ecx, esi
not esi
mov edx, 0x47ada1
sub esi, ecx
sub esi, ecx
mov ebx, 0
add esi, ecx
sub esi, ecx
add esi, esi
mov edi, 0x47ada2
not esi
mov ecx, 0xa8b9cc91
lea edi, [edi + ebx]
sub esi, ecx
inc esi
sub ecx, esi
mov edi, dword [edi]
sub esi, ecx
sub esi, 0x7397694f
and edi, 0xff
sub ecx, esi
sub esi, ecx
inc ebx
sub ecx, esi
or esi, esi
cmp ebx, 0x1f4
jne 0x47b235
mov ebx, 0
or esi, esi
inc esi
and esi, ecx
sub esi, 0xb733b1d
inc esi
xor dword [eax], edi
inc ecx
add ecx, 0x316d6ccf
mov ecx, esi
add eax, 2
not esi
add esi, 0x92c2d454
cmp eax, edx
jl 0x47b1fb
or ecx, esi
mov esi, 0xf4fda9f5
add esi, 0x7889b93e
add ecx, ecx
mov edi, section.UPX1
or eax, eax
mov ebx, eax
add ebx, 0xdad41712
mov edx, section.UPX1
sub eax, 1
add ebx, 1
mov esi, 0x47ada1
mov eax, ebx
add ebx, 0x1c46d46d
add eax, ebx
mov ecx, 0
or ebx, ebx
inc ebx
mov eax, 0x3f8551d2
mov cl, byte [edx]
inc ebx
sub eax, 0xc69d67a6
not ebx
mov byte [edi], cl
sub eax, ebx
and ebx, eax
and ebx, ebx
inc edi
dec ebx
inc eax
mov ebx, 0xe47b534e
add edx, 2
inc eax
add eax, ebx
mov eax, 0x5bce4ca6
cmp edx, esi
jle 0x47b2ad
mov eax, ebx
or ebx, eax
mov esi, ecx
mov ecx, esi
sub esi, 0xe652afbe
push 0x45e6a0
and ecx, ecx
not esi
ret