Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x16d0c746
mov ecx, 0x481c98c9
mov ebx, 0x65c75588
dec ecx
popal
not ebx
or ebx, ecx
sub ebx, ecx
mov esi, 0
mov ecx, eax
or ebx, edx
or ebx, ebx
mov edi, ecx
and edx, edx
inc ebx
dec edx
mov eax, edi
mov ebx, edx
mov ebx, 0x1056788e
and ebx, edx
inc esi
and ebx, edx
inc ebx
or edx, edx
cmp esi, 0x100234e
jne 0x47afd5
and ebx, ebx
not ebx
cmp esi, 0x100234e
je 0x47b011
mov eax, 0
mov ecx, dword [eax]
add edx, ebx
and edx, edx
add edx, ebx
and ebx, ebx
mov ebx, 0x2de644e9
mov ecx, 0x47ada2
not edx
mov esi, edx
sub esi, edx
mov eax, 0x47af96
mov esi, edi
sub esi, edi
mov ebx, dword [ecx]
add esi, edi
inc esi
sub edi, esi
and ebx, 0xff
or edi, edx
or esi, esi
xor dword [eax], ebx
mov edi, 0xcb1ba77c
sub edx, 0x32443b55
add eax, 1
inc esi
add edx, 0xbfd75812
sub edi, 0x501a17c9
add ecx, 1
mov edx, 0x4b2037c0
add edx, edi
cmp eax, entry0
jl 0x47b032
inc edi
add edi, edi
mov esi, edi
or edx, esi
and edi, esi
not edx
or edi, esi
mov ebx, edi
and ebx, edi
mov ecx, 0x47af9a
sub edi, 0x4d4ac1c3
mov edi, 0xacd67928
mov esi, edi
mov ecx, dword [ecx]
not ebx
sub ebx, edi
mov ecx, dword [ecx]
add esi, ebx
add ebx, edx
push ecx
inc ebx
not ebx
add edx, edx
mov ecx, 0x47af96
mov edx, ebx
and esi, ebx
and edx, esi
mov ecx, dword [ecx]
add ebx, 0x805cb239
dec edx
mov ecx, dword [ecx]
and esi, ebx
and esi, ebx
and ebx, esi
push 0x47af9e
or edx, edx
mov esi, 0xa2038ef7
mov ebx, esi
call ecx
not edi
mov ebx, edi
mov ebx, 0x4544174a
pop ecx
sub edi, esi
add edi, 0xd4385b9b
sub esp, 4
mov dword [esp], 0x47afab
or ebx, ebx
or edx, ebx
or ebx, edx
push eax
or ebx, esi
mov edi, 0xa562b164
mov esi, 0xd1c26690
call ecx
mov edi, 0x7a8f4851
mov edi, 0xa46b355e
add ebx, 0x4ef6eb3b
push 0x40
mov esi, 0x8135582a
add esi, 1
or ebx, edi
push 0x3000
add ebx, 0x83328a52
dec esi
sub esp, 4
mov dword [esp], 0x20000dc4
mov edx, 0x588e0c5d
add ebx, edx
push 0
add edx, 0x47df394e
or ebx, esi
call eax
mov edi, edx
mov edi, 0x482bf47
add eax, 0x20000d2e
and edi, esi
or ebx, esi
or edi, ebx
mov ecx, 0x265e1586
and edx, ebx
add ebx, edx
mov dword [eax], ecx
mov edx, edi
add edx, 0xfd30f2f6
and ebx, esi
mov ecx, dword [eax]
inc edx
dec edx
and edi, esi
cmp ecx, 0x265e1586
je 0x47b199
mov ecx, 0
mov dword [ecx], ebx
sub edi, 0x87feb370
sub edx, esi
not esi
add edi, 1
and ebx, ecx
add ecx, 1
mov edi, section.UPX1
inc ebx
sub ebx, ecx
mov eax, 0x47ada1
and ebx, ebx
and ecx, ecx
add ecx, ecx
mov esi, 0
sub ebx, 0xdb8e651b
dec ebx
inc ecx
mov edx, 0x47ada2
inc ebx
add ebx, 0xa4b902b8
lea edx, [edx + esi]
dec ebx
add ecx, ebx
mov edx, dword [edx]
not ecx
not ebx
and edx, 0xff
sub ebx, ecx
or ecx, ecx
inc esi
and ebx, ecx
sub ebx, ecx
add ecx, ebx
cmp esi, 0x1f4
jne 0x47b207
mov esi, 0
mov ebx, 0x34a896b1
not ecx
mov ecx, ebx
add ebx, 0x94a588c9
sub ebx, 0x3f68d7ed
xor dword [edi], edx
mov ecx, ebx
dec ecx
add edi, 2
add ebx, ebx
or ecx, ebx
cmp edi, eax
jl 0x47b1d1
add ebx, ebx
add ebx, 0x43f99131
add ebx, ebx
or ebx, ebx
or ecx, ebx
mov edx, section.UPX1
add eax, eax
add ebx, eax
mov edi, section.UPX1
mov eax, 0x32179f08
mov eax, ebx
sub ebx, eax
mov esi, 0x47ada1
sub eax, ebx
add ebx, 0xa7750006
mov ecx, 0
sub eax, 0xd45be926
inc ebx
mov cl, byte [edi]
sub ebx, 1
inc ebx
mov byte [edx], cl
dec eax
sub eax, ebx
and eax, eax
inc edx
or eax, ebx
sub ebx, 0xf26ded13
sub eax, 0xb379e010
add edi, 2
inc ebx
not ebx
cmp edi, esi
jle 0x47b271
mov eax, ebx
add ebx, 0x4e4c0ca3
mov ebx, eax
mov ecx, ebx
and ecx, ecx
and ecx, ebx
push 0x45e6a0
dec ecx
mov ebx, ecx
ret