Function at 0x47b434
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x98f00f5d
dec eax
mov eax, 0x117a6cb2
inc eax
popal
mov eax, 0x5bd9568e
add eax, 0x34b6acb6
mov ecx, 0
mov edx, edi
sub esi, eax
add esi, eax
mov ebx, edx
or eax, esi
sub eax, 1
mov edi, ebx
add esi, esi
or eax, eax
inc ecx
and eax, esi
sub eax, esi
cmp ecx, 0x1008471
jne 0x47b452
mov esi, 0xdb7a8aa3
add esi, esi
dec eax
mov eax, 0xbecd0bd2
and ecx, ecx
mov edx, 0x47b21e
sub ebx, esi
not esi
mov eax, 0x47b412
not esi
add esi, 0x9666af
mov ecx, dword [edx]
add edi, edi
sub esi, 0x6138f966
add edi, 0x3ea0036b
and ecx, 0xff
add ebx, edi
dec edi
xor dword [eax], ecx
or ebx, edi
mov ebx, edi
add eax, 1
add ebx, ebx
sub esi, edi
inc edx
and esi, ebx
sub ebx, 0x1e5f45b7
cmp eax, entry0
jl 0x47b49e
mov edi, ebx
mov edi, 0x537aa367
sub esi, edi
add edi, esi
mov esi, 0xf530b069
add esi, 0x87836c3e
add ebx, esi
mov ecx, 0x47b416
add edx, 1
and ebx, edx
dec ebx
mov ecx, dword [ecx]
not esi
sub ebx, 1
mov ecx, dword [ecx]
mov ebx, edi
add edx, edx
mov edx, edi
push ecx
or edi, edi
not edx
mov esi, 0xfefba04c
mov ecx, 0x47b412
mov ebx, edx
mov edx, 0xe678b1c2
mov ecx, dword [ecx]
mov esi, 0xa76591b5
sub ebx, edx
mov ecx, dword [ecx]
dec edx
inc edx
push 0x47b41a
sub edx, ebx
mov edx, 0xb8fd950e
call ecx
and esi, edi
and esi, ebx
mov ecx, dword [esp]
add esp, 4
add esi, edi
mov edx, esi
mov esi, 0x1a7ed322
sub esp, 4
mov dword [esp], 0x47b427
mov esi, edi
or edx, ebx
sub esi, 1
push eax
and edi, esi
add edi, 0x6c4ec07d
call ecx
mov edx, ebx
dec esi
push 0x40
sub esi, 0x23fd833a
and edx, esi
push 0x3000
mov esi, edi
add edx, 0xd6279b55
or ebx, edx
push 0x20000d54
or ebx, edx
mov edi, 0xd120955c
add edx, ebx
sub esp, 4
mov dword [esp], 0
sub ebx, esi
and edx, edi
call eax
and edx, edi
add ebx, ebx
add edi, 0x179d5cf5
add eax, 0x20000ca6
sub edi, 0xffb12148
and ebx, edi
mov ecx, 0x71c4b94d
inc edi
add edi, 0x37859db1
not ebx
mov dword [eax], ecx
inc edi
not edx
mov ecx, dword [eax]
mov esi, edi
mov ebx, edx
and edx, ebx
cmp ecx, 0x71c4b94d
je 0x47b5f6
mov eax, 0
mov cl, byte [eax]
mov edx, edi
or esi, esi
add edi, 0x1e3820c2
add esi, esi
add esi, 0xe4efbef1
or ecx, ecx
sub ecx, 0x690cbb6e
not ecx
mov ebx, section.UPX1
or ecx, eax
mov eax, 0xc0873f50
and eax, eax
mov edi, 0x47b21d
mov ecx, 0x8a93b460
add ecx, eax
add ecx, eax
mov edx, 0
add eax, eax
and ecx, ecx
inc ecx
mov esi, 0x47b21e
or ecx, ecx
dec eax
or eax, ecx
lea esi, [edx + esi]
add eax, 0xc2c1b4f0
mov ecx, eax
or eax, ecx
mov esi, dword [esi]
mov ecx, eax
add ecx, eax
and esi, 0xff
sub ecx, 1
mov ecx, eax
add ecx, ecx
inc edx
mov eax, ecx
and eax, ecx
cmp edx, 0x1f4
jne 0x47b677
mov edx, 0
or ecx, ecx
add ecx, ecx
mov ecx, eax
and ecx, ecx
mov eax, 0x94da31c9
xor dword [ebx], esi
inc ecx
dec eax
sub eax, 0x314b2e8c
add ebx, 2
add ecx, 0x7b4b06bd
not eax
cmp ebx, edi
jl 0x47b638
sub ecx, eax
sub ecx, eax
not ecx
inc eax
mov edi, section.UPX1
or edx, eax
sub edx, 1
mov ebx, section.UPX1
mov eax, edx
add edx, 0xddb1e62d
sub eax, 0x1406ff5a
mov esi, 0x47b21d
sub edx, 0xbf940096
and eax, eax
sub eax, 0xcab14c42
mov ecx, 0
inc eax
not edx
sub edx, eax
mov cl, byte [ebx]
or eax, edx
sub eax, edx
or edx, eax
mov byte [edi], cl
or eax, edx
mov eax, edx
not eax
inc edi
and edx, eax
or eax, edx
add ebx, 2
or eax, edx
add eax, 0x74a3a5df
cmp ebx, esi
jle 0x47b6e8
or edx, eax
add edx, 1
sub ecx, 0x160a19d
mov eax, 0xa0f3b78
dec ecx
push 0x45e6a0
mov ecx, eax
dec ecx
sub ecx, 0x68abc287
ret