Function at 0x66c354
Capabilities:
Execute anti-debugging instructions

Disassembly:
pushal
mov dword [esp + 7], esi
add bx, 0x5376
cpuid
pop bx
lea esi, [eax + edx]
jmp 0x66c4ac
mov bl, bh
xchg dword [esp + 0x12], edi
popal
lea ebx, [esi + 0xd5]
lea eax, [edi*4]
inc cl
jmp 0x66c2c4
xchg dx, cx
push dword [esp + 8]
pushal
inc edi
push dword [esp + 0xc]
xchg ebx, eax
jmp 0x66c2df
inc cl
pop dword [esp + 2]
push word [esp + 0x17]
not ch
mov byte [esp + 8], dh
jmp 0x66c36e
cpuid
mov ch, byte [esp + 0x31]
push esp
bsf dx, ax
neg ch
lea esi, [ebx + edi]
jmp 0x66c31a
add esp, 5
pop ebp
mov al, 0x26
call 0x66c354
jnp 0x66c3a6
push dword [esp + 6]
popal
pop si
jmp 0x66c3d1
mov di, 0xd00b
pop word [esp + 0x19]
bsr bx, bp
neg ebp
mov bx, word [esp + 4]
jmp 0x66c347
cmc
sub esp, 0
not bh
sub esp, 0xc
rol bx, cl
setge bh
jmp 0x66c335
mov word [esp + 0xa], bx
mov bp, word [esp + 0x11]
cpuid
pop bp
pop ebp
setnp bh
mov byte [esp + 3], dh
jmp 0x66c418
pop dword [esp + 9]
mov bh, byte [esp + 0x10]
pop word [esp + 0xa]
mov ebp, dword [esp + 8]
xchg ch, dl
jmp 0x66c399
push edx
push dword [esp + 8]
push dword [esp + 0x17]
mov dword [esp + 1], ecx
add esp, 2
mov word [esp + 0x14], bx
jmp 0x66c3b8
bswap ecx
push esp
bswap ebp
inc esi
xchg edi, eax
xor dl, ch
jmp 0x66c44f
mov edx, eax
push word [esp + 6]
mov di, 0x2a87
mov cx, dx
xchg byte [esp], cl
jmp 0x66c3e8
mov bl, bh
mov edx, dword [esp + 0xe]
mov dx, 0xe22d
pop dword [esp + 8]
pop dword [esp + 5]
lea edi, [esi + 0x15]
jmp 0x66c401
sub esp, 0x18
lea esp, [esp + 0x49]
xchg bh, cl
mov ebp, 0x94a2737e
mov ax, 0xd50b
sub esp, 0xc
jmp 0x66c482
xchg ah, bl
rdtsc
and cl, bh
pushal
inc bl
lea ebx, [esp + edi]
jmp 0x66c42f
pop dword [esp + 0xe]
pop word [esp + 0x23]
add al, dh
lea ebx, [esi + 0xe5]
xchg si, ax
cmc
jmp 0x66c388
rdtsc
not ch
mov dh, byte [esp + 0xb]
lea ebp, reloc.RASAPI32.dll_RasHangUpA
cpuid
btc edx, ebx
jmp 0x66c551
lea ebp, [ebp + 0xbf]
neg bx
cmc
mov dword [esp + 0x2d], ecx
pop edx
mov word [esp + 0xc], bx
jmp 0x66c469
lea esp, [esp + 3]
sub edx, eax
xchg byte [esp + 2], bl
clc
lea eax, [ebx*4]
rdtsc
jmp 0x66c538
mov al, ah
add esp, 2
mov al, ah
lea eax, [esi + 0x5d]
lea esp, [esp + 0xb]
jmp 0x66c4c2
push word [esp + 0xd]
lea edi, [esp + ebx]
xor dl, ch
mov bx, dx
push word [esp + 0xb]
push word [esp + 0x10]
jmp 0x66c4ed
rdtsc
xchg word [esp + 0xb], ax
add esp, 1
mov esi, 0x47e8f3b4
xchg byte [esp + 0xa], al
xchg bh, cl
jmp 0x66c504
pop word [esp]
inc edi
add al, dh
sub esp, 0x1a
xchg word [esp + 7], di
lea esp, [esp + 0xc]
jmp 0x66c5cd
neg edi
mov bx, word [esp + 4]
mov eax, dword [esp + 1]
push dword [esp + 6]
mov dword [esp + 3], esi
xchg byte [esp + 6], al
jmp 0x66c521
pop si
xchg word [esp + 5], si
not cx
mov cx, word [esp + 4]
jmp 0x66c309
pushal
xchg ebx, edi
stc
xchg word [esp + 0x2a], ax
pop word [esp + 0xd]
lea esp, [esp + 2]
jmp 0x66c6a8
mov bh, byte [esp + 0xd]
lea ebx, [eax*4]
xchg dword [esp + 4], esi
lea edx, [ebp + 0xc7]
mov bx, 0xdbbb
pop ax
jmp 0x66c584
mov word [esp], dx
bswap eax
mov dh, byte [esp + 5]
lea ecx, [ecx - 0x1b]
cpuid
mov di, bx
jmp 0x66c5a8
mov si, word [esp + 5]
lea esp, [esp + 3]
lea esp, [esp + 0x14]
popal
sub esp, 0x10
pop dword [esp + 2]
jmp 0x66c630
mov esi, ebp
mov eax, dword [esp + 0x13]
add esp, 4
lea esi, [ebp*4]
xchg bh, cl
neg edi
jmp 0x66c5e1
lea esp, [esp + 4]
jmp 0x66c687
push word [esp + 0xb]
lea esp, [esp + 9]
mov dword [esp], ebp
lea esp, [esp + 1]
lea esp, [esp + 4]
popfd
jmp 0x66c618
inc di
pop edx
mov di, word [esp + 4]
mov eax, esi
sub esp, 0x16
rcr ecx, 3
jmp 0x66c602
call 0x66c661
mov cl, ch
xchg ah, bl
pop di
push esp
popal
pop dword [esp]
jmp 0x66c64f