Function at 0x660aaa
Capabilities:
Execute anti-debugging instructions

Disassembly:
push eax
push edx
push edx
jae 0x5c315b
pop edx
push edi
push ebx
pop ebx
pop edi
rdtsc
push eax
push edx
push eax
push edx
rdtsc
pop edx
pop eax
pushal
popal
rdtsc
jle 0x5c3174
push ecx
pop ecx
pop edx
pop eax
pop edx
pop eax
jmp 0x5c3186
push eax
mov dword [esp], 0x47db74ee
mov dword [esp], ebp
mov dword [esp], eax
mov dword [esp], 0x69fe1e05
inc dword [esp]
dec dword [esp]
shl dword [esp], 5
sub dword [esp], 0xea4ce5d4
push esi
push eax
mov eax, 0x3947a383
sub eax, 0x39f44b87
add eax, 0x5b47d7c1
push eax
xor dword [esp], 0x7fa52d85
pop esi
xor esi, 0x7fa52d85
pop eax
xor dword [esp + 4], esi
pop esi
push 0x59dff171
mov dword [esp], eax
mov eax, 0xffffffff
add dword [esp + 4], eax
pop eax
push esi
mov dword [esp], eax
mov eax, 0x35371179
xor dword [esp + 4], eax
pop eax
xor dword [esp], 0x5e2b0c96
shl dword [esp], 2
push edi
push esi
mov esi, 0x7ce783fb
add esi, 0x53a06f89
mov edi, esi
pop esi
add dword [esp + 4], edi
mov edi, dword [esp]
push ecx
mov ecx, esp
add ecx, 4
add ecx, 4
xchg dword [esp], ecx
mov esp, dword [esp]
mov dword [esp], eax
push eax
push 0x5d9b4b70
mov dword [esp], eax
push esi
push 0x3bffd3b1
pop esi
sub esi, 0xc2c9c710
mov eax, esi
mov esi, dword [esp]
add esp, 4
mov dword [esp + 4], eax
mov eax, dword [esp]
push edx
mov edx, esp
add edx, 4
push ecx
push edi
push ecx
mov ecx, 0x7bf93d4b
shl ecx, 3
xchg ecx, edi
not edi
xchg ecx, edi
push edi
mov edi, 0x7f351c5e
shl edi, 4
not edi
dec edi
and edi, 0x3bffac7a
not edi
xor edi, 0xd8ae0956
sub ecx, edi
pop edi
or ecx, 0x7be78b02
add ecx, 0x3b30167b
mov edi, ecx
pop ecx
add edi, 0xc8d82993
push edx
mov edx, edi
mov ecx, edx
pop edx
mov edi, dword [esp]
push edx
mov edx, esp
add edx, 4
add edx, 4
xchg dword [esp], edx
pop esp
sub edx, 0x77fdea22
add edx, ecx
add edx, 0x77fdea22
pop ecx
push edx
push dword [esp + 4]
pop edx
pop dword [esp]
mov esp, dword [esp]
mov dword [esp], ecx
push esi
push ebp
mov dword [esp], 0x76b6d0db
push esp
pop dword [esp]
add dword [esp], 4
pop esi
push ebp
push edi
mov edi, 0x2e3faed0
mov ebp, 0xd1c05134
add ebp, edi
pop edi
add esi, ebp
push dword [esp]
pop ebp
add esp, 4
push edx
push esp
pop edx
add edx, 4
sub edx, 4
xor edx, dword [esp]
xor dword [esp], edx
xor edx, dword [esp]
pop esp
mov dword [esp], eax
push ebp
mov ebp, 0x67f7eb1e
not ebp
xor ebp, 0x5fbf7f17
shr ebp, 6
not ebp
xor ebp, 0x824e1481
mov eax, ebp
pop ebp
and eax, 0x1ffd9e0a
neg eax
xchg esi, eax
neg esi
xchg esi, eax
or eax, 0x7f57f5b5
add eax, 0x8000084f
sub esi, eax
pop eax
push esi
push dword [esp + 4]
pop esi
pop dword [esp]
mov esp, dword [esp]
mov dword [esp], ebp
mov dword [esp], edx
push ebp
mov dword [esp], 0x675c64c1
push ecx
mov ecx, 0x7fdd9dca
or dword [esp + 4], ecx
pop ecx
sub dword [esp], 0x3d7afa2f
mov dword [esp], eax
mov dword [esp], 0xbcfcab0
mov dword [esp], ecx
mov dword [esp], 0x3bff1bc0
inc dword [esp]
push ebp
mov ebp, 0x5fdd5760
and dword [esp + 4], ebp
pop ebp
sub dword [esp], 0x5ecf3700
inc dword [esp]
shr dword [esp], 5
add dword [esp], 0x3752ac08
xor dword [esp], 0x26176e54
neg dword [esp]
sub dword [esp], 0x5fbf33d0
xchg dword [esp], ebx
not ebx
xchg dword [esp], ebx
add dword [esp], 0x7febfc91
push ebp
mov ebp, 0xd03c2528
sub dword [esp + 4], ebp
pop ebp
mov dword [esp], ebx
mov dword [esp], 0x2dfe475a
inc dword [esp]
not dword [esp]
xor dword [esp], 0xfdfa472f
and dword [esp], 0x76e50291
xor dword [esp], 0x652e4db8
xchg dword [esp], edx
not edx
xchg dword [esp], edx
sub dword [esp], 0x9970cdae
mov dword [esp], edx
mov dword [esp], ebx
sub esp, 4
mov dword [esp], eax
mov dword [esp], esi
mov dword [esp], edx
mov dword [esp], 0x77ba3b90
dec dword [esp]
xor dword [esp], eax
xor eax, dword [esp]
xor dword [esp], eax
not eax
xchg dword [esp], eax
push ecx
mov ecx, 0x77e2d8e4
sub dword [esp + 4], ecx
pop ecx
push ecx
mov dword [esp], 0x19e072e
mov dword [esp], edx
mov edx, 0x5febb8ba
sub dword [esp + 4], edx
pop edx
push edi
push esi
mov esi, 0x7e9a7f6d
neg esi
sub esi, 0x7f4f4b37
dec esi
and esi, 0x3b7fa8bd
sub esi, 0x3de3a8d9
push ebp
mov ebp, 0x6cc1a712
inc ebp
shl ebp, 5
shr ebp, 8
xor ebp, 0x44e2fcbd
sub esi, ebp
pop ebp
mov edi, esi
mov esi, dword [esp]
add esp, 4
add dword [esp + 4], 0x7fbf0598
add dword [esp + 4], edi
push ebp
mov ebp, 0x7fbf0598
sub dword [esp + 8], ebp
pop ebp
pop edi
add dword [esp], 0x2f6cc815
xor dword [esp], 0x183bbd5
mov dword [esp], ebx
push 0x6a74f500
mov dword [esp], edx
push edx
mov dword [esp], esp
add dword [esp], 4
mov edx, dword [esp]
add esp, 4
add edx, 4
push 0x5956df00
mov dword [esp], ecx
push ebp
mov ebp, 4
mov ecx, ebp
pop ebp
sub edx, ecx
push dword [esp]
pop ecx
add esp, 4
push edx
mov dword [esp], ecx
mov dword [esp], edx
push dword [esp + 4]
push dword [esp]
pop edx
push esi
mov esi, esp
add esi, 4
add esi, 4
xchg dword [esp], esi
pop esp
pop dword [esp]
mov esp, dword [esp]
mov dword [esp], eax
mov dword [esp], ebx
mov dword [esp], ebp
push ecx
mov dword [esp], edi
mov dword [esp], ebp
mov dword [esp], eax
mov dword [esp], edi
push esp
mov edi, dword [esp]
add esp, 4
push 0x67bad700
mov dword [esp], ecx
mov ecx, 0x3f3edf41
or ecx, 0x1feb6d42
not ecx
push eax
mov dword [esp], edx
mov edx, 0x75bc5d14
sub ecx, edx
pop edx
shl ecx, 3
neg ecx
push edx
mov edx, 0x521d1d44
push eax
mov eax, 0x7ddec478
sub ecx, eax
pop eax
add ecx, edx
push edx
mov edx, 0x7ddec478
add ecx, edx
pop edx
mov edx, dword [esp]
add esp, 4
add edi, ecx
pop ecx
sub edi, 4
xor edi, dword [esp]
xor dword [esp], edi
xor edi, dword [esp]
mov esp, dword [esp]
mov dword [esp], ebx
mov dword [esp], esi
push ecx
push esi
mov dword [esp], esp
push ebp
mov ebp, 4
add dword [esp + 4], ebp
pop ebp
mov ecx, dword [esp]
add esp, 4
push edx
push eax
mov eax, 0x749559e5
sub eax, 0x749559e1
mov edx, eax
pop eax
add ecx, edx
pop edx
sub esp, 4
mov dword [esp], edx
mov edx, 0x6fedff3b
sub esp, 4
mov dword [esp], ecx
push ebp
push 0x133fa291
pop ebp
sub ebp, 0x7dfd712b
add ebp, 0x7fff4e3f
sub ebp, 0x99664280
mov ecx, ebp
pop ebp
sub edx, ecx
mov ecx, dword [esp]
push edi
mov edi, esp
add edi, 4
add edi, 4
xchg dword [esp], edi
pop esp
and edx, 0x3eba7ada
push esi
mov esi, 0x3412420e
sub edx, esi
pop esi
sub ecx, 0x77f6e43
sub ecx, edx
add ecx, 0x77f6e43
pop edx
xor ecx, dword [esp]
xor dword [esp], ecx
xor ecx, dword [esp]
mov esp, dword [esp]
mov dword [esp], ebx
mov dword [esp], edi
call fcn.005c3653
and al, 0x51
mov ecx, esp
add ecx, 4
add ecx, 4
xchg dword [esp], ecx
mov esp, dword [esp]
add esp, 4
jmp 0x5c3152
cmp al, byte [eax]
pushfd
or ebx, dword [ebx + edx*2 - 0x38dbf377]
add al, 0x24
xchg ebp, eax
mov ebx, 0xb9515ff5
jp 0x6609cc
cmc
pop edi
add dword [esp + 4], 0x6adc177f
sub dword [esp + 4], ecx
sub dword [esp + 4], 0x6adc177f
pop ecx
push ecx
push edx
sub esp, 4
mov dword [esp], edi
mov edi, 0x7ddbbd60
mov edx, edi
pop edi
mov dword [esp + 4], edx
pop edx
or dword [esp], 0x43bfe205
xor dword [esp], 0x7fda1828
push ebx
mov dword [esp], 0x76f562c1
not dword [esp]
xchg dword [esp], esi
not esi
xchg dword [esp], esi
neg dword [esp]
or dword [esp], 0x2fbfc333
and dword [esp], 0x7ddd20c3
add dword [esp], 0x101412fb
mov dword [esp], eax
sub esp, 4
mov dword [esp], ecx
mov ecx, esp
push 0x2c0ddeb1
mov dword [esp], eax
mov eax, 4
add ecx, eax
pop eax
sub ecx, 4
xchg dword [esp], ecx
pop esp
mov dword [esp], ebx
push dword [esp + 0x10]
mov eax, dword [esp]
push ebp
mov ebp, esp
add ebp, 4
add ebp, 4
xor ebp, dword [esp]
xor dword [esp], ebp
xor ebp, dword [esp]
mov esp, dword [esp]
push dword [esp + 8]
mov ebx, dword [esp]
push ecx
mov ecx, esp
push edi
mov edi, 0x22379352
shl edi, 2
sub edi, 0x63dfbc08
sub edi, 0x24fe913c
add ecx, edi
pop edi
add ecx, 4
push ecx
push dword [esp + 4]
pop ecx
pop dword [esp]
pop esp
mov dword [esp + 8], eax
mov dword [esp + 0x10], ebx
push dword [esp]
pop ebx
push ebp
push esp
pop ebp
add ebp, 4
add ebp, 4
xchg dword [esp], ebp
mov esp, dword [esp]
mov eax, dword [esp]
sub esp, 4
mov dword [esp], ecx
push esp
pop ecx
add ecx, 4
add ecx, 4
xor ecx, dword [esp]
xor dword [esp], ecx
xor ecx, dword [esp]
pop esp
jmp 0x5c3152