Function at 0xab95d8
Capabilities:
Encode data using xor

Disassembly:
setl cl
xor eax, 0x7099f8a5
dec ecx
lea eax, [eax + ecx - 0x40f3eaef]
rol edx, 0x5f
xor ebx, eax
add edi, eax
mov eax, 0x143b072c
jmp fcn.00a106d2
lea esi, [eax + esi + 2]
bswap eax
push eax
not dx
not cx
call fcn.00968092
mov dword [esp + ecx - 0xff01], 0x41d6f0f
bswap edx
bts ecx, ecx
neg al
bts ecx, 0xa6
inc edx
or word [esp + ecx*4 - 0x3fd0b], 0x833e
xor ebx, edx
sal word [esp + ecx - 0xff3b], 0x6e
xchg byte [esp + ecx*4 - 0x3fd03], cl
btc ecx, 0xd
add edi, edx
xchg dword [esp + ecx*2 - 0x1bf78], eax
movzx edx, byte [ebp + eax*2 - 0x52908606]
lea ebp, [ebp + eax - 0x29484306]
btr cx, ax
rol eax, 0xff
push eax
xor dl, bl
shl word [esp + ecx*2 - 0x1bf7c], 0x87
add ax, ax
and dword [esp + eax - 0x14a442fc], 0x723a4386
ror dl, 1
sal byte [esp + ecx*4 - 0x37efb], 0xa1
sub al, byte [esp + eax*4 - 0x52910bf8]
sbb dl, 0xb3
rol dl, 1
inc ecx
cwde
and al, ch
xor dl, 0x19
shl eax, 0xfa
dec al
pop eax
not dl
and eax, ecx
xor bl, dl
inc eax
setns byte [esp + eax - 0x179]
sal ecx, 0xe4
lea edx, [esp + edx + 0xc]
xor eax, eax
adc eax, dword [edx + eax]
add word [esp + ecx - 0xdfc0e], 0xf305
mov dword [esi + ecx*2 - 0x1bf822], eax
lea esi, [esi + ecx - 0xdfc12]
jne 0xa92675
push ebp
or dword [ebp + 0x648b8725], ebx
ret 0x681f
ror edx, 2
add dword [esp + eax*2 - 0x1ce], 0x2ebdcb39
sbb ax, ax
inc edx
shl eax, cl
xor ebx, edx
dec cx
lea esi, [esi + eax - 4]
jnp 0xb81a34
js 0x97681a
not eax
mov dword [esi], edx
pop eax
pop ecx
pop eax
jp fcn.00a106d2
sysenter
push edi
pushfd
mov edi, 0xd83db0ac
neg edi
mov edi, dword [esp + 4]
mov dword [esp + 4], 0xfe9acf49
push dword [esp]
popfd
lea esp, [esp + 4]
call fcn.00b6bc0f
neg dl
xor eax, ebx
bswap eax
neg ecx
dec edx
xor eax, 0x2e84759b
shr edx, cl
and ecx, ecx
lea eax, [eax + edx + 0x6da7b591]
jno 0x942b85
inc ecx
mov esi, 0x80e09a0
inc ecx
push esi
dec ebx
mov eax, dword [ecx + esi - 0x80e09a0]
dec ebx
mov esi, dword [ecx + esi*2 - 0x101c1338]
dec esi
lea ebp, [esi*4 + 0x792eb23f]
dec esi
lea ebx, [ebp*2 - 0x566c7bdf]
dec edx
lea ebp, [ebx*8 - 0x3bcc4872]
dec eax
add eax, esi
inc edx
not byte [esp + esi - 0x80e099b]
inc ecx
mov esp, 0x4c92fd06
dec ebx
mov dword [esi + ecx - 0x80e0998], eax
inc ebp
add ebp, esi
inc ebx
mov edx, dword [esi + edx - 0x80e09a4]
dec eax
not ebp
inc ebp
movsx edi, si
mov eax, 0xf2a8433a
dec edi
lea edx, [edx + esi - 0x80e09a4]
dec ecx
and eax, edi
inc esi
xchg byte [esp + esi - 0x80e099c], ch
xor edx, ebx
xor bl, byte [esi + esi*8 - 0xf]
test dword [ecx + 0x23], 0xac8646c7
lodsb al, byte [esi]
xor al, 0x64
div cl
div dword [ebx]
sal edi, cl
ror byte [edi], cl
retf 0xc042
not edx
bswap edx
inc edx
ror byte [esp + esi*2 - 0x101c133a], 0xa2
inc esi
and byte [esp + esi - 0x80e09a0], ch
inc cx
dec esp
xor edx, 0x7d97143d
inc ecx
push ebx
ror edx, 2
inc esi
sub dword [esp + esi*8 - 0x40704cf8], esp
inc sp
cmovle ebx, eax
neg edx
inc ebp
mov eax, esi
pop ebp
inc edx
lea edx, [edx + esi*2 + 0x6565aff9]
call fcn.00a19738
clc
arpl word [esp + edx*8 + 0xebd60cf], cx
cmpsd dword [esi], dword es:[edi]
loop 0xa408ec
test byte [ebp - 0x4e], al
ja 0xa408df
and dword [ebp + 0x78], ecx
xchg dword [ebp - 0x29], ebp
push 0xffffffffffffffbd
push ds
jp 0xa408d7
jmp 0xa408cd
movsx edx, cx
shl dl, 0x81
pop ecx
pop ecx
pop edx
jnp fcn.00a106d2
sbb ecx, ecx
sbb ecx, 0x5928bc17
xor edx, ebx
bswap edx
mov dword [esp + eax - 0xe7], ecx
lea edx, [edx + eax*8 - 0x3abf3bcd]
and cl, ch
jg 0xa407ef
test dword [eax + 0x56], ecx
dec dword [0xa6ae92f3]
xchg esp, eax
adc eax, 0xb8ae92f3
invalid
mov dword [esp + edx*8 - 0x3fffc], edx
mov dword [esp + edx - 0x8000], edi
ret 8