Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xa2bfafff
mov ecx, edx
sub ecx, 0x4fe734a5
popal
sub ecx, 0xd0551a34
add edx, 1
or edx, ecx
mov ebx, 0
mov ecx, eax
not edx
mov edx, esi
inc esi
mov edi, ecx
not edx
add esi, esi
mov eax, edi
dec esi
add esi, 0xe33bf909
inc ebx
mov esi, edx
mov esi, edx
cmp ebx, 0x10010fe
jne 0xa789ce
sub edx, 0xccedb89d
not edx
or edx, esi
and ecx, ecx
inc ecx
mov eax, 0xa78796
not ebx
dec esi
or esi, ebx
mov ecx, 0xa7898a
sub esi, 0x76f987c0
dec edx
mov edi, dword [eax]
sub ebx, esi
dec ebx
or ebx, ebx
and edi, 0xff
add esi, 0xfec07de
sub esi, ebx
xor dword [ecx], edi
sub ebx, esi
or edx, ebx
inc ecx
mov esi, edx
add ebx, ebx
inc eax
add esi, edx
and ebx, ebx
and ebx, ebx
cmp ecx, entry0
jl 0xa78a18
add ebx, ebx
add edx, ebx
or edx, esi
not edx
mov edx, 0x7ff58bbe
sub esi, edx
dec esi
mov edi, 0xa7898e
or edx, esi
add ecx, edx
add ebx, 1
mov edi, dword [edi]
add esi, 0x8a13f5f2
or ebx, ebx
mov edi, dword [edi]
sub ebx, edx
dec esi
sub esp, 4
mov dword [esp], edi
add ecx, 0xc3ff43f8
add esi, 0xc456dfe2
add ecx, 1
mov edi, 0xa7898a
inc esi
add ebx, esi
mov edx, ebx
mov edi, dword [edi]
inc esi
add ecx, edx
mov edi, dword [edi]
inc edx
sub esi, 1
add esi, 0xf1c790e2
push 0xa78992
inc edx
sub edx, 0x5b2a1ea2
or edx, edx
call edi
dec edx
add ecx, 0x763ebd7
or esi, ebx
pop edi
inc edx
mov edx, ecx
push 0xa7899f
not ebx
or ebx, ecx
add esi, esi
push eax
add ecx, 0xde752888
add ebx, 0x349be987
add ebx, 0xa05ceb4f
call edi
dec edx
not ebx
add edx, 0x39f1209c
sub esp, 4
mov dword [esp], 0x40
sub edx, 0xc2f3eec5
sub esi, ecx
push 0x3000
add ebx, ecx
sub ebx, edx
push 0x2000044f
mov edx, esi
dec ebx
sub ecx, ebx
push 0
and ebx, ebx
and edx, edx
call eax
sub ecx, esi
and ecx, esi
add eax, 0x20000393
add esi, 0xbe5d34cf
mov esi, 0x8b9d13f0
sub edx, 0xd0262733
mov edi, 0xae6a34d8
sub ebx, ecx
mov esi, ecx
mov ebx, ecx
mov dword [eax], edi
and ecx, esi
mov esi, edx
inc esi
mov edi, dword [eax]
add edx, edx
mov edx, 0xaea5efa8
cmp edi, 0xae6a34d8
je 0xa78b6a
mov edx, 0
mov ecx, dword [edx]
mov ecx, ebx
sub ebx, esi
sub esi, 0x58dc80fc
mov edx, 0xc9fecb87
or edx, ebx
mov ecx, edx
sub ecx, 0x1ab29ae9
mov esi, section..reltc
add ecx, edx
dec edx
mov eax, 0xa78795
mov ecx, 0x2725199f
add ecx, 0x83afa1c9
and ecx, edx
mov edi, 0
add ecx, ecx
dec edx
mov ebx, 0xa78796
or ecx, edx
add ecx, edx
sub ecx, edx
lea ebx, [ebx + edi]
inc ecx
mov ecx, 0x643cff19
mov ebx, dword [ebx]
inc edx
mov edx, 0x295bc70a
and ebx, 0xff
not edx
and ecx, edx
add edi, 1
mov edx, 0x8bc47849
add ecx, edx
sub ecx, 1
cmp edi, 0x1f4
jne 0xa78beb
mov edi, 0
add edx, 0x36b00df5
add edx, edx
add ecx, 0x79fd7aeb
not edx
and edx, ecx
mov ecx, 0x19ed4b78
xor dword [esi], ebx
sub ecx, 0xf07479b9
sub edx, 0x907ad571
sub edx, ecx
add esi, 2
and ecx, edx
and ecx, edx
cmp esi, eax
jl 0xa78ba5
mov edx, 0xa9807277
not edx
mov edx, ecx
or ecx, edx
sub ecx, 0xbc625cb0
mov ebx, section..reltc
sub ecx, esi
and ecx, esi
add ecx, 1
mov edx, section..reltc
sub ecx, esi
and ecx, esi
mov edi, 0xa78795
sub esi, 0xfa8b9ca1
mov ecx, 0x1e6645ac
mov eax, 0
sub esi, ecx
sub esi, ecx
mov al, byte [edx]
mov esi, 0x752d6ade
inc esi
and esi, esi
mov byte [ebx], al
sub esi, 0x742168d6
dec esi
inc ebx
add ecx, esi
sub esi, ecx
add esi, esi
add edx, 2
sub ecx, 0x430a08f0
sub ecx, 0x46ed4b15
and ecx, ecx
cmp edx, edi
jle 0xa78c66
sub ecx, esi
and ecx, ecx
inc ecx
mov edx, ecx
push 0x8dc6a0
dec edx
sub ecx, edx
add ecx, 1
ret