Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x35dbc1ab
add esi, edi
add edi, 0x862fe334
popal
and esi, edi
and esi, esi
mov ebx, 0
mov ecx, eax
mov edx, 0x40855973
or edx, esi
sub edx, esi
mov edi, ecx
or edx, esi
sub edx, esi
mov eax, edi
mov esi, 0xb91294d
and edx, esi
dec esi
inc ebx
not esi
mov edx, 0x45885c45
mov esi, 0xb638eb90
cmp ebx, 0x10093ff
jne 0x47afd0
sub edx, 0x6e691eeb
add esi, 0x1a038af0
mov esi, 0x9684dceb
cmp ebx, 0x10093ff
je 0x47b024
mov edx, 0
mov bl, byte [edx]
add esi, 0x4121fa13
sub esi, edx
add edx, 0x591ed357
add edi, 0x2346bfc2
mov esi, edi
sub edi, 0x8d21ed94
mov edx, 0x47ada2
inc eax
mov ebx, eax
mov ecx, 0x47af96
or edi, ebx
inc eax
not eax
mov esi, dword [edx]
mov edi, eax
and ebx, edi
and esi, 0xff
dec edi
mov edi, 0x9a3e2057
xor dword [ecx], esi
sub ebx, edi
add edi, ebx
add ecx, 1
add eax, 0x44832f69
mov ebx, 0x9a9fec45
not ebx
inc edx
add eax, 1
or ebx, eax
cmp ecx, entry0
jl 0x47b052
not eax
and ebx, eax
add edi, ebx
mov eax, edi
add ebx, edx
inc edi
or edi, ebx
mov ecx, 0x47af9a
mov edi, 0xb98cb891
mov edx, 0x530b680b
mov ecx, dword [ecx]
mov ebx, 0x37900a93
add edi, 0xdd8833dd
mov ecx, dword [ecx]
add edx, 0x3ce57788
sub ebx, edx
dec esi
sub esp, 4
mov dword [esp], ecx
and edx, edx
add edi, 0x48603baf
add edx, edi
mov ecx, 0x47af96
add edx, edi
not edi
mov ebx, edx
mov ecx, dword [ecx]
inc edx
mov ebx, 0x87e9c50d
mov ecx, dword [ecx]
mov esi, 0xa936be30
sub esi, 0xeb1cae06
and ebx, edi
sub esp, 4
mov dword [esp], 0x47af9e
and edi, ebx
not edx
call ecx
not edi
and edi, esi
mov edi, edx
pop ecx
inc edx
add edx, ebx
add edx, 0xf4fd50fb
push 0x47afab
not esi
sub ebx, 1
sub esp, 4
mov dword [esp], eax
inc edi
sub edi, 0xb5abd9a4
call ecx
not esi
mov edi, edx
push 0x40
and edi, esi
sub ebx, esi
sub esi, edx
sub esp, 4
mov dword [esp], 0x3000
and edx, esi
sub ebx, 0xbe124162
sub esp, 4
mov dword [esp], 0x2000031a
mov edx, ebx
sub ebx, 0x53437d2c
push 0
add edi, 0xfcc519e2
and ebx, esi
call eax
mov edi, 0x383e6146
dec edi
not edx
add eax, 0x200002ad
not edx
add edi, 0x680437f7
add esi, ebx
mov ecx, 0x61d17d67
add ebx, 1
not ebx
mov dword [eax], ecx
inc edx
sub ebx, 0x55d22d81
and ebx, ebx
mov ecx, dword [eax]
mov ebx, edi
add edi, 0x5eb1e475
cmp ecx, 0x61d17d67
je 0x47b1bf
mov ecx, 0
mov edx, dword [ecx]
add edi, ebx
add edi, esi
mov edx, 0x7941aee1
and ebx, edx
mov edx, 0x97f5f124
and edi, esi
sub edi, 1
not edi
mov eax, section.UPX1
sub esi, edi
or edi, esi
mov ebx, 0x47ada1
or esi, esi
mov edi, esi
mov esi, edi
mov ecx, 0
mov esi, 0xca3745d0
sub esi, 0x5ca09943
mov edx, 0x47ada2
or esi, esi
mov edi, esi
lea edx, [ecx + edx]
add edi, edi
mov edi, esi
mov edx, dword [edx]
or esi, edi
mov esi, edi
and edx, 0xff
not esi
mov edi, 0xeea90bee
add edi, esi
inc ecx
not esi
not esi
dec edi
cmp ecx, 0x1f4
jne 0x47b235
mov ecx, 0
not esi
sub esi, 0x12b55358
dec edi
mov edi, esi
sub esi, edi
xor dword [eax], edx
mov edi, 0xfcb3555e
add edi, edi
or esi, edi
add eax, 2
sub esi, edi
mov edi, 0xb2ee714a
cmp eax, ebx
jl 0x47b1fd
add edi, esi
and esi, esi
sub esi, 0x7989c983
or esi, edi
mov esi, 0xcff7f2b5
sub edi, 1
mov edi, section.UPX1
sub eax, 0xfe5e75d6
add eax, edx
mov edx, eax
mov ecx, section.UPX1
and edx, edx
add eax, 0xc8e5e693
mov esi, 0x47ada1
sub edx, 0xd8380198
sub edx, 0x64529d40
mov edx, eax
mov ebx, 0
inc eax
not edx
mov bl, byte [ecx]
sub edx, 1
sub eax, 0xb831a352
sub eax, edx
mov byte [edi], bl
sub edx, 1
mov edx, 0x6f364a48
inc edi
add eax, 0x884cf9e
sub edx, 0x70d96f58
mov eax, 0x6b4ff611
add ecx, 2
mov eax, edx
inc edx
inc eax
cmp ecx, esi
jle 0x47b2b0
sub edx, eax
not eax
sub esi, edi
add esi, 0x71d50b45
push 0x45e6a0
mov esi, edi
sub edi, 0x93470bb7
ret