Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x44e8dcc
mov edi, 0xe3a8cc36
not edi
add esi, 0xce9f3c4a
popal
add edi, 1
add esi, edi
mov esi, 0
mov edx, ebx
or eax, ecx
or ecx, ecx
mov eax, ecx
mov edi, edx
add ecx, 0x834a4571
not ecx
mov ebx, edi
not eax
sub ecx, 0x379b12ee
inc esi
or eax, eax
or ecx, ecx
cmp esi, 0x1006251
jne 0x47afd9
or ecx, ecx
mov ecx, eax
not eax
cmp esi, 0x1006251
je 0x47b01b
mov ecx, 0
mov byte [ecx], dl
sub eax, ecx
and eax, eax
and esi, edi
not esi
mov ebx, 0x47ada2
mov edi, edx
not esi
mov eax, 0x47af96
add edx, edx
sub edi, esi
sub esi, 0x9c676753
mov ecx, dword [ebx]
mov esi, 0x7cb95232
or esi, edx
and ecx, 0xff
add edi, 0x116d9801
add edx, 0xfcf745c3
and esi, edi
xor dword [eax], ecx
or esi, esi
add edx, 0x502bcc41
inc eax
not edi
sub edi, edx
inc ebx
mov edx, 0xa12e1575
add edx, 0x26c751b9
or esi, edx
cmp eax, entry0
jl 0x47b03b
mov edx, 0x1228d1a5
add esi, edi
add edx, 0x3b9e8916
and esi, edi
or edi, esi
add ebx, 0x9b406af
mov ebx, esi
sub esi, 0xe96cef77
mov ecx, 0x47af9a
not esi
inc edx
mov ecx, dword [ecx]
add edi, edx
or edi, edx
mov ecx, dword [ecx]
not esi
mov edx, 0xa811c3f0
push ecx
not edx
add esi, 0x97394193
dec edi
mov ecx, 0x47af96
and edx, esi
dec ebx
mov ecx, dword [ecx]
and edx, edi
add esi, ebx
mov ecx, dword [ecx]
mov ebx, 0xfc7f1d58
sub ebx, 0x901702f3
push 0x47af9e
sub edx, edi
and esi, esi
call ecx
mov esi, edx
add ebx, 0x629737a7
add ebx, 0xb0d55f00
pop ecx
dec esi
not edx
push 0x47afab
and esi, ebx
sub edi, ebx
sub edx, 0x90d973d8
push eax
sub esi, 0xf553264d
mov esi, 0xf6a7c9c4
call ecx
mov esi, 0x65739883
not esi
push 0x40
mov edx, esi
and ebx, ebx
sub edi, esi
push 0x3000
add ebx, 0x33d2b6a8
sub ebx, edi
sub esp, 4
mov dword [esp], 0x20000e18
mov esi, 0x38d1af9
dec esi
mov edx, ebx
push 0
add edx, edx
not edx
and esi, esi
call eax
dec edx
mov esi, edi
or edx, ebx
add eax, 0x20000d8b
add esi, edx
mov edi, edx
mov ecx, 0x693a06bb
and edx, edx
or ebx, esi
mov dword [eax], ecx
sub edi, esi
add edx, esi
add edx, ebx
mov ecx, dword [eax]
or edi, edi
sub esi, 0x8a31f5fb
cmp ecx, 0x693a06bb
je 0x47b18d
mov ecx, 0
mov dword [ecx], ebx
add edx, 1
and ebx, esi
sub edi, 1
add esi, edx
add edi, 0xf87fe0c5
add edi, 0xb8aab51
add edi, 0x7ed9acf3
mov edx, section.UPX1
sub edi, esi
dec edi
add esi, edi
mov ecx, 0x47ada1
mov esi, 0x324f962d
add esi, esi
mov ebx, 0
sub esi, edi
or esi, esi
mov edi, esi
mov eax, 0x47ada2
sub esi, 0xe1b2e754
not esi
lea eax, [ebx + eax]
sub edi, esi
inc edi
mov eax, dword [eax]
sub esi, edi
add esi, edi
and eax, 0xff
sub edi, esi
not esi
inc ebx
sub esi, edi
and esi, esi
cmp ebx, 0x1f4
jne 0x47b205
mov ebx, 0
add edi, esi
mov edi, 0x1c95d2f4
not esi
inc edi
dec esi
xor dword [edx], eax
mov esi, edi
add edi, 1
add edi, 1
add edx, 2
or esi, edi
mov edi, esi
inc edi
cmp edx, ecx
jl 0x47b1d0
add edi, 0xe332bbcf
add edi, esi
mov edi, 0x4a6037c0
add edi, 0x292b9078
mov edi, 0xf1a1fb5c
mov ecx, section.UPX1
dec edi
dec edi
and edx, edi
mov esi, section.UPX1
sub edi, 0xd66cf12c
mov edi, 0x923aecb5
mov eax, 0x47ada1
and edi, edx
add edi, 0x247f3ce2
sub edx, 0xaaad3b65
mov ebx, 0
add edx, 0x68b0588e
sub edi, 0xbdf54770
not edi
mov bl, byte [esi]
mov edi, edx
or edx, edx
mov byte [ecx], bl
sub edx, 0x8637c2e1
add edx, 0x34c1abfc
inc ecx
add edi, edx
or edi, edi
add esi, 2
mov edx, edi
add edi, 1
cmp esi, eax
jle 0x47b28a
add edx, edi
or edi, edi
sub edi, 0x6e4968f7
mov esi, 0x9fc18a7f
sub esi, edi
push 0x45e6a0
or edi, esi
add esi, edi
or edi, esi
ret