Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x6a8aaa23
mov edi, 0xae9f0299
and ebx, ebx
popal
and ebx, ebx
sub edi, 0x6e534c02
mov ecx, 0
mov eax, ebx
add esi, 0x3493fa1
and esi, esi
and edi, edi
mov edx, eax
mov edi, 0x5c2341d1
and edi, esi
sub esi, edi
mov ebx, edx
or esi, esi
dec esi
add ecx, 1
and edi, esi
sub edi, 0x56737579
add edi, 0x8e5e4b7
cmp ecx, 0x10030b5
jne 0x47afd3
mov edi, 0x7330b992
mov esi, 0x31f23bf5
cmp ecx, 0x10030b5
je 0x47b028
mov ecx, 0
mov dword [ecx], ebx
mov edi, 0x11a655da
inc esi
inc edi
or ebx, edi
mov edi, 0x47ada2
sub eax, 0xb4e78ded
dec edx
add ebx, edx
mov esi, 0x47af96
mov eax, edx
not ebx
mov ecx, dword [edi]
add ebx, 1
mov ebx, 0x4ed8d3ee
inc eax
and ecx, 0xff
or ebx, edx
or edx, edx
and ebx, edx
xor dword [esi], ecx
dec ebx
sub edx, ebx
inc esi
add eax, edx
sub eax, edx
add ebx, 1
inc edi
and edx, edx
sub eax, ebx
cmp esi, entry0
jl 0x47b048
mov eax, edx
add edx, ebx
inc ebx
dec eax
mov eax, ebx
add esi, esi
sub ecx, 1
sub edi, 0xb146e670
mov ebx, 0x47af9a
mov esi, ecx
mov esi, edx
add esi, ecx
mov ebx, dword [ebx]
not edx
add edi, 0x6483cab4
inc edi
mov ebx, dword [ebx]
or edx, edi
mov ecx, edi
sub esi, edi
push ebx
sub edx, ecx
not ecx
sub edi, 0x766eef85
mov ebx, 0x47af96
not edx
add edx, 0xa18c14fc
mov ebx, dword [ebx]
add edi, 0x70674985
sub esi, 0x9e60cc8a
mov ebx, dword [ebx]
mov edx, esi
add ecx, edx
add ecx, edi
push 0x47af9e
sub ecx, 0x6221d8b3
dec edx
call ebx
inc ecx
inc ecx
pop ebx
dec edi
or edi, edi
add edi, ecx
push 0x47afab
sub edx, edi
and ecx, esi
dec edi
sub esp, 4
mov dword [esp], eax
or ecx, esi
inc esi
mov edi, 0x78315bc6
call ebx
sub ecx, 0x71488e05
dec edx
sub edx, 0x2cecf1a
push 0x40
sub esi, 0x584c648a
or ecx, edi
add edi, 0xf1831274
push 0x3000
sub edx, ecx
or ecx, edi
sub esp, 4
mov dword [esp], 0x2000044b
sub edi, 0xb807a3fa
sub ecx, edx
inc edx
push 0
sub ecx, 0xb7ba1bd9
sub esi, 0x1a4c75f6
call eax
sub esi, 0x3a0344c3
sub ecx, edi
add edi, edi
add eax, 0x200003a9
dec edx
and ecx, edx
mov ebx, 0x820aa4c4
sub edx, 0xb707a52e
add esi, 1
mov dword [eax], ebx
sub edx, 1
mov esi, 0x4a6c2030
mov ebx, dword [eax]
not edi
not edi
not edx
cmp ebx, 0x820aa4c4
je 0x47b1ac
mov ecx, 0
mov byte [ecx], dl
add esi, 0x3eaf27b6
not esi
mov edx, 0xb98f258f
sub edi, 0x196be6da
and ecx, ecx
and esi, ecx
not edi
mov edi, ebx
mov esi, section.UPX1
dec ebx
inc ebx
mov eax, 0x47ada1
sub edi, ebx
inc edi
add edi, 0x93ecb3cb
mov ecx, 0
add edi, ebx
not edi
mov edi, 0x76246b31
mov edx, 0x47ada2
not edi
add ebx, ebx
lea edx, [edx + ecx]
add ebx, edi
not ebx
mov edx, dword [edx]
not edi
dec edi
mov ebx, edi
and edx, 0xff
inc ebx
and ebx, ebx
sub edi, 0xddb40d66
inc ecx
mov ebx, 0x8bcbeebc
inc ebx
cmp ecx, 0x1f4
jne 0x47b224
mov ecx, 0
sub edi, 1
not edi
add ebx, 0x976ecdd5
mov ebx, edi
and edi, ebx
xor dword [esi], edx
not edi
and edi, ebx
add ebx, 0xf7b84fe5
add esi, 2
dec edi
sub ebx, 0x6eae4445
cmp esi, eax
jl 0x47b1ea
mov ebx, 0xffaa7bc3
and edi, ebx
mov edi, ebx
mov ebx, 0x42757c52
inc edi
and edi, edi
mov edi, section.UPX1
and ecx, ecx
dec ecx
mov ebx, section.UPX1
dec edx
mov ecx, 0xb2f023d2
dec edx
mov esi, 0x47ada1
or edx, ecx
add ecx, ecx
sub edx, 0xb88ef7fc
mov eax, 0
not ecx
mov ecx, edx
mov al, byte [ebx]
mov ecx, 0xec42443c
add edx, 0xf4b465ad
mov ecx, 0xdf47008b
mov byte [edi], al
add edx, edx
mov edx, ecx
add edi, 1
not ecx
not edx
or ecx, edx
add ebx, 2
mov ecx, edx
sub edx, 0xd96d9577
cmp ebx, esi
jle 0x47b294
add edx, edx
mov edx, ecx
not ebx
sub ebx, 0x42bdce01
or edi, ebx
sub esp, 4
mov dword [esp], 0x45e6a0
inc ebx
sub ebx, edi
mov edi, ebx
ret