Function at 0xa2e69f
Capabilities:
Execute anti-debugging instructions

Disassembly:
pushfd
jmp 0xa71a56
lea esp, [esp + 0x24]
call fcn.004958d0
mov si, di
mov esi, dword [ebp - 0x4c4]
shl cl, cl
mov ecx, edx
pushal
or ecx, ebx
or esi, eax
mov byte [esp + 0x14], cl
rcl ah, 3
or ebx, edx
movzx cx, cl
and esi, 0xffffff
sub cx, 0x1f71
aam 1
bsf edx, ebp
and ebx, 0
rdtsc
pushfd
mov ecx, 0x10
mov dl, 0xcd
mov eax, dword [ebp - 0x4a0]
push edx
jmp 0x9ef865
mov edx, dword [ebp - 0x49c]
jmp 0xa00f32
push ecx
mov byte [esp + 8], ch
jmp 0xa8e02d
lea esp, [esp + 0x44]
call fcn.004958d0
bts esi, edi
cmc
shl esi, 9
sets ch
mov esi, dword [ebp - 0x4c8]
sbb ch, 0xae
or cl, 0x46
cmc
or esi, eax
or ecx, edx
aaa
bts cx, bp
inc al
mov dword [ebp - 0x4d4], esi
add ch, 0x3b
sal si, cl
adc ch, 0x51
mov cx, dx
mov esi, dword [ebp - 0x4cc]
adc ah, 0xd8
shrd cx, di, 9
or cl, 0x66
or cx, 0xc7fe
or esi, edx
push esp
setno dl
cwde
mov ecx, 0x24
lahf
pop edx
mov edx, dword [ebp - 0x4d4]
pushfd
jmp 0xa9a8c9
lea esp, [esp + 0x38]
jno 0xabcaae
call fcn.00496d50
setg ch
pushfd
pushal
mov ecx, 0x30
pushal
mov byte [esp + 4], ah
jmp 0xa12c83
lea edx, [ecx - 0x5e5307e]
rdtsc
movzx ax, bl
mov edx, dword [ebp - 0x4d4]
movzx ax, al
lahf
mov ah, ch
mov eax, edx
not dl
pushfd
mov edx, esi
pushal
lea esp, [esp + 0x24]
call fcn.004958d0
bts ecx, 0x16
mov esi, dword [ebp - 0x4c4]
rcl cx, 8
btc cx, 5
or ecx, esp
or esi, eax
btc cx, 2
or ebx, edx
das
cdq
sal cl, cl
not dx
and esi, 0xffffff
shl dx, 0xe
cdq
pushal
mov cl, cl
and ebx, 0
rdtsc
pushal
setnp ah
mov ecx, 0x10
mov eax, dword [esp]
sets al
mov eax, dword [ebp - 0x4a0]
not edx
bswap dx
pushfd
mov edx, dword [ebp - 0x49c]
call fcn.00acf8bc
fisttp word [edx]
jb 0xa4ce41
jp 0xa4ce45
adc dh, byte [edi + 0x57ee2c76]
in al, 0x97
xchg ebx, eax
retf 0x2673
and byte [ecx - 0x52], cl
adc al, 0x99
cdq
xchg bh, ah
sbb al, 0x3f
cmpsb byte [esi], byte es:[edi]
add dword [eax], 0xa
ja 0xa4cea3
adc ebx, edi
and esp, dword [eax - 0x476d5597]
ror dword [edx - 7], cl
invalid
outsd dx, dword [esi]
pop ds
invalid
pushfd
call fcn.00a38586
pushfd
mov dword [esp + 4], 0xd6aea631
pushfd
jmp 0xa87f5e
mov dword [esp + 4], 0xd8803200
push ebp
pushfd
lea esp, [esp + 0xc]
jmp fcn.00406869
jmp 0xa73e49
lea esp, [esp + 0x2c]
call fcn.004958d0
bswap cx
mov ch, 0x11
setge cl
mov ecx, 0x10
push 0xe1530f81
mov word [esp], sp
call fcn.00a1fd3d
push ebx
pushal
mov word [esp], dx
lea esp, [esp + 0x24]
ja 0x97f0cf
push 0xd6aea631
jle 0xa535a1
pushal
mov byte [esp + 8], al
mov dword [esp + 0x1c], 0xd8803200
pushfd
pushfd
mov byte [esp], 0xf4
lea esp, [esp + 0x24]
jmp fcn.00406869
movsx eax, cl
bswap ax
mov eax, edx
mov byte [esp], cl
mov edx, esi
pushfd
pushal
call fcn.009f8c62
pushal
lea esp, [esp + 0x20]
call fcn.00496d50
not ch
setl cl
pushfd
mov ecx, 0x30
pushal
lea esp, [esp + 0x24]
call fcn.004958d0
test al, ch
rol ch, cl
mov esi, dword [ebp - 0x4c8]
adc ch, cl
or esi, eax
sal ah, cl
shrd cx, bp, cl
cwde
mov dword [ebp - 0x4d4], esi
lahf
bswap si
bsr si, dx
mov esi, dword [ebp - 0x4cc]
sar ax, 1
or esi, edx
xchg ch, ah
xchg ch, dh
mov ecx, 0x24
jle 0xa4cda0
mov eax, esp
mov edx, dword [ebp - 0x4d4]
pushal
bswap ax
lea eax, [ebx + 0x5560e8ea]
mov eax, edx
setae dh
movsx dx, bl
mov edx, esi
pushfd
jmp 0x9c72b6