Function at 0x66fc67
Capabilities:
Encode data using xor

Disassembly:
adc esi, 1
push 0xc1a23e29
rol byte [esp + 2], 0x24
jb 0x667278
and al, cl
call fcn.00645bb6
mov eax, dword [esp + 0x20]
call fcn.005b7f19
xor al, bl
mov dword [esp], 0x40aba933
sal dword [esp], 0xa4
inc al
push 0x299e930f
ror al, 1
inc al
rol dword [esp + 4], 0x5f
call fcn.00632fd5
jle 0x68ee1c
inc sp
mov dword [edx], edi
dec eax
lea esp, [esp + 0x30]
jae fcn.005fcc55
not byte [esp + 1]
mov dword [esp], eax
popfd
push 0x78831905
lea esp, [esp + 4]
jmp fcn.005ac4a6
inc al
mov dword [esp + 0x14], 0x304e3a
ror al, 1
dec dword [esp + 0xc]
push 0xb77610
call fcn.0063f5de
mov ecx, 0x6e24459b
mov eax, ecx
movzx ax, byte [esi + eax - 0x6e24459b]
inc cx
add cl, 0x8e
mov cl, byte [ecx + esi - 0x6e244528]
jo 0x619066
mov ebx, eax
jo 0x5f2bbc
bt ax, bx
mov ebx, edx
sbb ax, 0x6e20
mov edx, ebx
ror eax, 0x47
shl edx, 2
add ax, 0x9888
mov eax, ebp
call fcn.005a917c
mov esi, dword [ebp]
mov ecx, 0xf0269727
inc esp
mov esp, dword [ebp + 4]
bswap ecx
or cl, ch
mov cl, byte [ebp + ecx*2 - 0x4f2e4de4]
jl 0x67119c
mov edx, 0xe2acc193
inc esp
movzx ebx, dx
inc si
mov ebx, dword [ebp + ebx - 0xc193]
and dx, dx
dec eax
adc ebp, 2
dec eax
btr edx, edx
sal dl, 0x43
inc ecx
movzx edx, word [ecx]
push 0x12b31396
dec ecx
adc ecx, 2
sal word [esp + 5], 0xa2
jp 0x7b652d
mov dword [esp], 0xe5274806
neg al
neg dword [esp + 3]
push 0x801dd516
xor al, 0x3b
mov dword [esp + 0xc], 0x190cd20
and dword [esp + 2], 0xd3bd5807
jge 0x63b263
invalid
inc ecx
xchg dword [ebx], edx
pop ebx
test byte [eax + 0x6f03b172], 0xb7
out 0x46, eax
cmp byte [edx - 0xe4a18c7], al
dec esp
xor esi, dword [esp + edx*4 - 0x283399fa]
push eax
loopne 0x66fc8d
bound eax, qword [ebp - 0x74acdc2f]
mov esp, 0xffde070c
dec dword [edi]
mov bh, 0xd9
mov dword [esp + ebx*2 - 0x4442], ecx
add cl, byte [esp + ecx - 0x221b]
bswap edi
jne 0x6804a0
jmp 0x6202fa
call fcn.005617f8
mov word [ecx], si
lea esp, [esp + 8]
jmp fcn.0057135a
neg edi
btc ecx, ecx
btr cx, 0xb3
shr cx, 5
inc edi
xadd word [esp + ecx - 0x1000110], cx
and cl, 0xa0
xor edi, 0x82307790
not dword [esp + ecx*4 - 0x3fffffc]
add edi, esi
sal word [esp + ecx*8 - 0x7fffffc], 0xe
lea edx, [ebx*2 - 0x4402ef5]
mov dword [esp + ecx - 0xffffdc], ebp
add word [esp + ecx - 0x1000000], cx
mov dword [esp + ecx - 0xffffd8], eax
xor ecx, 0xff30233a
lea ebp, [esp + ebx*2 - 0x443a]
call fcn.0061e320
jbe 0x55e1c3
adc ch, ch
push ss
cdq
or eax, 0x68173131
cmc
push ss
std
mov dl, 0xcb
in al, 0x17
or dword [esi + 0x64], 0xffffff90
punpcklwd mm5, dword [esi + 0x6244d13d]
insd dword es:[edi], dx
mov esp, dword [edi + 0x24]
xchg ecx, eax
lahf
jo 0x68eea3
push edx
leave
mov ebp, 0x7019b188
sbb al, 0x4c
pushal
je 0x68ee77
imul ebx, dword [edi + 0x28], 0x1c
dec esp
popal
xchg esp, eax
enter 0x17b9, 0x4f
sbb cl, byte [esi + 0x3152e500]
xlatb
rcl byte [ecx - 0x2b9a5a2c], cl
mov ecx, 0xe740f356
sbb ecx, eax
push esi
popal
jg 0x68ee9b
sbb ch, cl
mov dh, 0x88
lodsd eax, dword [esi]
ret 0x8ca4
and cl, byte [edi - 0x41b39e83]
mov esp, dword [0x6ecb714a]
dec edx
jno 0x68ee71
outsb dx, byte [esi]
jmp 0x60a0497e
inc cx
xor edx, ebp
push 0xeead5c8e
sar dword [esp + 0xa], 0xc1
jle fcn.005c80b8
sbb dx, 0xfcb2
jmp fcn.00673faf