Function at 0x81eaaa
Capabilities:
Execute anti-debugging instructions

Disassembly:
pushal
lea esp, [esp + 4]
xchg dword [esp + 0x30], ebx
call fcn.0081eb32
push 0xf080ff40
jmp 0x81ec3f
add eax, 0xfab2afb1
call fcn.0081f3cb
cmp al, 0xf
xchg esi, eax
add eax, eax
pushfd
mov byte [esp + 9], dl
lea ebx, [ebx + 0x6f]
jmp 0x81ea71
mov eax, ebp
rdtsc
rol cl, 6
jnp 0x81ecb7
jp 0x81eca1
add ecx, 0x5122a626
jmp 0x8236d7
add ecx, 0xa39aabad
jmp 0x823733
bswap ecx
jmp 0x81ecb9
bswap ecx
mov esi, dword [esp + 0x2c]
rdtsc
pushal
xchg ebx, eax
jmp 0x81ecde
lea esp, [esp + 2]
sub esp, 0xa0
jmp 0x81ecec
lea edi, [esp + 0x20]
bswap ebx
mov ecx, edx
push di
bswap ebx
jmp 0x81ecc4
mov ebp, esp
mov ah, byte [esp]
inc bl
jo 0x81f2a6
jno 0x81ee6b
les esi, [edi + 0x5e]
test eax, 0x8d606bc8
pushal
lea esp, [esp + 0xa]
mov dword [esp + 0x10], edx
call fcn.0081ebed
xchg ecx, eax
call fcn.0081ed47
xchg ecx, eax
add byte [esi + 0x29b000f1], dl
mov ebp, 0x77c7342d
or al, 0x9f
out 0x11, al
neg ax
not al
push ecx
jmp 0x81ed13
not ecx
jmp 0x81ed29
lea esp, [esp + 4]
inc esi
mov dl, 0x34
xchg dx, cx
jmp 0x81edeb
lea eax, reloc.MSVFW32.dll_DrawDibDraw
pushal
add eax, 0xd0ae0d80
jne 0x81ed43
not ecx
neg ax
not al
push ecx
xchg ecx, eax
jmp 0x81ed5d
xchg cx, dx
lea esp, [esp + 2]
jmp 0x81ee0f
mov edx, dword [esp]
mov dx, word [esp]
push ax
clc
jl 0x81edd5
jge 0x81ee3e
jmp 0x81ee47
sub esi, 0x332dde1e
xchg dx, cx
mov al, bh
btr eax, ebp
jp 0x81edf9
setl al
mov dh, byte [esp]
mov cl, dl
neg eax
jmp 0x81f005
xchg cx, dx
lea esp, [esp + 2]
jmp 0x81ee0f
setl al
mov dh, byte [esp]
mov cl, dl
jmp 0x81ee55
neg eax
jmp 0x81f005
mov ch, bh
lea ebx, [esi + ebp]
jmp 0x81f2ab
movzx edx, byte [esi]
mov ch, 0x5b
bt ax, dx
jmp 0x81f1de
mov cx, 0x9c71
sub esp, 0xc
bswap ecx
setge ch
bswap eax
mov ax, word [esp]
jmp 0x81f065
xor esi, 0x7edf0fc5
call fcn.0081eebb
bswap eax
mov cl, dl
lea eax, reloc.MSVFW32.dll_DrawDibDraw
mov ax, 0x6e72
jmp 0x81f044
jmp 0x81f010
sub ax, bp
mov al, 0x82
jmp 0x81f098
push edi
not ah
lea eax, [ecx + ecx]
clc
jle 0x81f02e
jg 0x81f0df
push esp
retf
mov ax, 0x532a
xchg al, ah
sub dl, bl
btc ax, di
jle 0x81f02c
bswap eax
jmp 0x81f012
cmc
lea eax, [ecx + edi]
jmp 0x81f0aa
sub esp, 0
jmp 0x81f0fc
bsf eax, ebx
mov ax, word [esp]
jmp 0x81f109
rol cl, 0
mov ax, dx
mov al, ah
mov ax, word [esp]
btc ax, bp
jmp 0x81f0c4
lea esp, [esp + 4]
dec cl
bts eax, ecx
jle 0x81f07d
sub esp, 0
lea eax, [ebx + ebp]
bsf eax, esp
jmp 0x81f082
jg 0x81f077
cmc
lea eax, [ecx + edi]
jmp 0x81f07b
sub ax, bp
mov al, 0x82
jmp 0x81f098
lea eax, [ebx + ebp]
bsf eax, esp
bsf eax, ebx
mov ax, word [esp]
xor cl, 0x7e
not eax
call fcn.0081f0e6
bsr eax, eax
jmp 0x81f13b
lea esp, [esp + 4]
xor cl, 0x23
xchg al, ah
mov ax, bx
sub esp, 3
jmp 0x81f162
bswap ecx
setge ch
bswap eax
jmp 0x81eff6
jno 0x81f178
lea esp, [esp + 3]
jmp 0x81f17c
lea esp, [esp + 3]
add cl, 0x97
lea eax, [ebp*4]
jmp 0x81f1a9
not ah
not ah
jmp 0x81f1b6
not ah
sbb eax, ebp
mov ax, 0x7dc1
jmp 0x81f1bc
mov ax, word [esp]
shl ax, cl
je 0x81f188
not ah
jmp 0x81f192
sbb eax, ebp
mov ax, 0x7dc1
sub bl, cl
jmp 0x81f1c4
sub esp, 8
jg 0x81f206
xchg byte [esp + 4], cl
xchg ah, al
neg cx
jmp 0x81f224
js 0x81efe8
mov cx, 0x9c71
sub esp, 0xc
jmp 0x81f156
neg cx
jmp 0x81f224
xchg byte [esp + 4], cl
xchg ah, al
jmp 0x81f1f0
bswap eax
jmp 0x81f271
inc esi
stc
jg 0x81f20e
bswap eax
mov al, cl
mov eax, dword [esp]
xchg ecx, eax
mov eax, dword [esp]
jmp 0x81f24f
shl cx, cl
jnp 0x81f258
mov ax, 0x295e
bts cx, sp
jmp 0x81f28f
mov eax, dword [esp]
bsf ecx, edx
mov al, 0x98
dec dl
jmp 0x81f235
mov ax, 0x295e
bts cx, sp
jmp 0x81f28f
mov al, cl
mov eax, dword [esp]
xchg ecx, eax
jmp 0x81f24c
xor dl, 0x84
mov ecx, 0x71f7eaa5
xchg ecx, eax
mov ax, 0xb61f
bswap ecx
call fcn.0081f279
jno 0x81f316
mov ch, bh
lea ebx, [esi + ebp]
mov ebx, esi
mov ebx, esi
mov edx, dword [esp]
mov ax, 0x221f
jmp 0x81ed90
xchg ecx, eax
setle al
sub esp, 1
jmp 0x81f338
lea esp, [esp + 1]
ror dl, 0
or cx, 0xdf0
jmp 0x81f39a
scasb al, byte es:[edi]
js 0x81f2aa
sub al, 0x66
bsf eax, ecx
not al
jmp 0x81f2ea
sete cl
mov eax, esp
jmp 0x81f363
jb 0x81f2f8
lea esp, [esp + 1]
jmp 0x81f2fc
mov ch, bh
jmp 0x81f348
mov ecx, 0x9f7181ce
mov ecx, 0xe2a3242
jmp 0x81f37d
mov eax, edx
neg cx
jno 0x81f340
mov ch, bh
mov ecx, 0x9f7181ce
mov ecx, 0xe2a3242
jmp 0x81f37d
shl eax, 2
lea ecx, [ecx*4]
dec cx
jbe 0x81f3c3
ja 0x81f3a3
xchg byte [eax], dl
xchg cl, ah
adc byte [edx + 0x641d8d18], ah
xchg edi, eax
and ebx, dword [ecx + esi*2 - reloc.MSVFW32.dll_DrawDibDraw]
jno 0x81f322
sete cl
mov eax, esp
jmp 0x81f363
rcr ecx, 0x18
jmp 0x81ea9b
rcr ecx, 0x18
jmp 0x81ea9b
call fcn.00823701
rol byte [edx + ebx*8 - 0x43], 1
dec esp
invalid
mov dx, 0xd579
btr dx, dx
jns 0x8236c1
js 0x8236c1
jmp 0x823710
jmp 0x82374d
mov dl, dh
xchg byte [esp + 7], dh
lea esp, [esp + 1]
jmp 0x81ec63
lea esp, [esp + 2]
mov ecx, dword [ecx - reloc.MSVFW32.dll_DrawDibDraw]
sub esp, 0x19
je 0x8236e5
mov byte [esp + 0x14], dh
jmp 0x8236e7
mov edx, dword [esp]
jmp 0x823776
mov byte [esp + 0x14], dh
mov dl, dh
xchg byte [esp + 7], dh
lea esp, [esp + 1]
jmp 0x81ec63
mov esp, ebp
sub esp, 3
jmp 0x823785
mov edx, 0x6c9a4508
sbb edx, 0xaf74526d
jb 0x823760
jae 0x823760
jge 0x82379b
lea edx, reloc.MSVFW32.dll_DrawDibDraw
lea esp, [esp + 3]
jmp 0x8237a5
lea edx, reloc.MSVFW32.dll_DrawDibDraw
lea esp, [esp + 3]
jmp 0x823893
push ecx
ret
jmp 0x86829b
bt cx, di
je 0x8682ba
bswap eax
jmp 0x8682bc
bswap eax
call 0x8682c2
xchg esi, eax
add ecx, eax
jmp 0x8686a2
lea edx, [ebp + 0x50]
xchg al, ah
pushal
bsf ax, bp
jmp 0x868486
bt dx, ax
jmp 0x8683b8
mov dh, byte [esp]
dec ecx
jns 0x8682ec
bt dx, ax
jmp 0x8683b8
call fcn.00868311
mov dh, 0x22
jmp 0x868346
sub eax, ecx
lea edx, [eax + edx]
push dx
mov word [esp], sp
jmp 0x868357
sub esp, 0x11
jnp 0x868392
lea esp, [esp + 3]
jmp 0x868396
pushal
call fcn.0086839b
mov dh, 0xa1
loopne 0x8683a9
pop ss
dec esp
outsd dx, dword [esi]
ret
lea esp, [esp + 3]
lea edx, [edi - 0x80]
jmp 0x86837c
pop edi
aaa
mov esp, 0xf8ebf61
inc edx
invalid
mov ecx, ebp
inc dx
jb 0x868327
jae 0x868327
lea esp, [esp + 3]
jmp fcn.008683ef
jp 0x868531
jnp 0x868531
invalid
cmp edi, edx
ja 0x81efd9
mov ch, cl
jmp 0x868302
jge 0x8682ca
jl 0x8682ca
push ss
add dword [eax + 3], 0x613077b5
fadd dword [ebx]
mov ebp, 0x67e86de2
or dword [edi + reloc.MSVFW32.dll_DrawDibDraw], ebp
pop ebx
cmc
jnp 0x86871f
std
add dh, bl
mov ch, 0x1e
and edi, edi
aam 0x32
jno 0x8686f3
push ecx
xor dword [edi], ecx
invalid
mov edx, 0xa0b70495
cmp al, 0x3f
rep stosd dword es:[edi], eax
mov dword es:[0x358aaad6], eax
jno 0x8686c1
xchg byte [eax + 0x63], ah
lahf
jmp 0x8686cf
salc
sar dword [ebx + 0x72], 1
mov dh, 0x66
xchg ebx, eax
stc
jmp 0x8689e3
pushal
pop word [esp + 0x11]
lea esp, [esp + 2]
jmp 0x868915
mov eax, dword [esi]
lea ebx, [ebx*4]
jmp 0x8689b0
lea esp, [esp + 2]
jmp 0x868915
stc
mov bl, byte [esp]
sub esi, 2
jmp 0x86893e
cmc
jl 0x868973
inc bh
mov ebx, 0xc7325d53
jmp 0x86895d
mov bh, byte [esp]
jmp 0x868931
rol eax, cl
mov ebx, edi
mov ebx, dword [esp]
call fcn.00868992
xor byte [edx + ebp + 0x2179bc4d], dh
pushal
mov dword [reloc.MSVFW32.dll_DrawDibDraw], eax
push ebx
pop ebp
xor al, bh
inc bh
mov ebx, 0xc7325d53
jmp 0x86895d
mov cl, byte [esi + 4]
btr bx, si
je 0x868958
mov bh, byte [esp]
stc
mov bl, byte [esp]
jmp 0x868935
jb 0x868730
pushal
pop word [esp + 0x11]
jmp 0x86892b