Function at 0x697209
Capabilities:
Execute anti-debugging instructions

Disassembly:
lea edx, [eax + 8]
jmp 0x685170
push word [esp + 3]
mov dword [esp], ebx
lea esp, [esp + 2]
lea esp, [esp + 4]
je 0x6850db
jne 0x68512e
pop ss
pushfd
jmp 0x6cf203
jmp 0x6850f1
mov dword [ecx], edi
jmp 0x6850db
test edx, edx
call fcn.00685149
shl dword [ecx], 1
mov byte [0x13a25730], al
popal
out 0x77, eax
adc ah, cl
pop eax
lcall 0x8b31, 0xc8de4f5
or al, 0x28
call fcn.006970f2
lea esp, [esp + 1]
jmp 0x69718a
mov ch, byte [esp]
jmp 0x697198
cmp dh, 0x92
jns 0x697174
mov ch, byte [esp]
jmp 0x697225
bsf eax, esi
lea edx, [ebp + 0x50]
dec ecx
je 0x6971ea
jne 0x6971c8
cmp al, bl
push ebx
lds esi, ss:[ecx]
test byte [edx], bl
jge 0x69713a
dec eax
mov cl, 0xb0
mov bl, 0xaa
invalid
mov al, 0xfc
jmp 0x6971ec
adc ah, bh
jl 0x6971f1
jge 0x6971f1
jmp 0x69722d
push sp
lea esp, [esp + 1]
bsf cx, dx
lea esp, [esp + 1]
jmp 0x69729e
mov al, 0xfc
call 0x697209
call fcn.00697243
push ds
cdq
or dword [eax - 0x65], ebp
pop ebp
jo 0x6971f8
push 0x523bfa0f
fisttp word [edi + 0x2a]
fst dword [ebp - 0x4e]
lea esp, [esp]
cmp edi, edx
ja 0x696380
jbe 0x6971cc
cmpsd dword [esi], dword es:[edi]
sub eax, 0x8337c4bd
mov bh, 0x3e
lodsb al, byte [esi]
retf
bsf eax, esi
jmp 0x69719b
mov eax, ebp
bsf edx, ecx
jo 0x6971d4
push sp
jmp 0x69724c
lea esp, [esp + 1]
bsf cx, dx
lea esp, [esp + 1]
jmp 0x69729e
sub edx, eax
mov ecx, 0xca79b60b
bswap ecx
mov cx, 0xe549
lea ecx, [edi - 0x80]
jmp 0x6972f9
lea edx, [ebp + 0x40]
lea ecx, [ebx*4]
mov cx, bp
mov ecx, eax
jmp 0x697278
jmp 0x6972d7
and cl, 0xfc
sub esp, 0x1d
jae 0x6972af
push dword [esp + 0x19]
call fcn.00697314
cwde
push dword [esp + 0x19]
push dword [esp + 9]
lea esp, [esp + 1]
sub ecx, edx
jmp 0x6973ab
cmc
js 0x6972c5
jns 0x6972c5
push bp
sub esp, 0x14
push word [esp + 4]
lea ecx, [ecx + 0x5d]
clc
cmc
jmp 0x697349
xchg dword [esp + 0x20], ecx
pushfd
push ax
lea esp, [esp + 3]
add esp, 0
mov word [esp], dx
jmp 0x69761b
lea esp, [esp + 1]
jmp 0x69738d
stc
lea esp, [esp + 1]
mov esp, ecx
pushfd
jmp 0x6974d1
push ecx
jmp 0x69747a
push ecx
add esp, 3
ja 0x697388
stc
jmp 0x697372
popal
jmp 0x697410
jg 0x697407
lea esp, [esp + 2]
lea esp, [esp + 0x14]
jmp 0x6973b4
mov dword [esp], ecx
popal
jmp 0x6973ef
jmp 0x6973d7
mov ecx, edx
cld
jmp 0x697449
lea esp, [esp + 2]
lea esp, [esp + 0x14]
popal
pushal
mov al, cl
stc
jb 0x6973ed
mov dword [esp], ecx
popal
jmp 0x6973ef
jle 0x697432
mov edi, dword [esp]
stc
jmp 0x69744f
mov edi, dword [esp]
stc
cmc
lea esp, [esp + 4]
jmp 0x69745a
rep movsb byte es:[edi], byte [esi]
pop ecx
cmc
jmp 0x69741c
cmc
lea esp, [esp + 4]
jmp 0x69745a
pop esi
popfd
jmp 0x697462
movzx eax, byte [esi]
jmp 0x6974a3
pushal
mov si, dx
setl bh
mov dword [esp + 4], eax
sub esp, 0x16
jmp 0x6973cb
bswap edx
mov dx, 0x52ec
mov edx, 0xf33c8442
mov edx, edi
jmp 0x69753e
mov dh, 0xb9
rcr ecx, cl
js 0x69748d
bswap edx
jmp 0x6974b1
mov dx, 0x52ec
mov edx, 0xf33c8442
mov edx, edi
lea ecx, [ebx*4]
jmp 0x697545
lea ebp, [ecx + edx - 0x40]
push esi
push edi
jmp 0x697395
call fcn.00697578
lea edx, [eax - 0x67]
mov dh, 0xf6
lea edx, [edx - 0x449]
inc cl
lea edx, [edx*4]
neg dx
jbe 0x697558
clc
mov dh, 0x31
mov dx, word [esp]
jmp 0x6975f9
not cl
mov dx, bp
mov edx, 0x99fcc6f1
mov cl, al
shl dx, cl
jmp 0x69751c
jno 0x6974dc
jo 0x6974dc
jge 0x6974e1
lea edx, [eax - 0x67]
mov dh, 0xf6
jmp 0x697550
lea ecx, [ebx*4]
not dx
add al, bl
mov dx, 0x2696
jmp 0x697507
lea edx, [edx - 0x449]
jmp 0x6974ec
jmp 0x6975ed
lea edx, [ecx + edi]
jmp 0x697605
clc
mov dh, 0x31
mov dx, word [esp]
call fcn.0069759e
or dx, 0xfd41
mov dl, dh
jmp 0x697564
ror cl, 0
mov dl, 0xf6
mov dx, 0xfc85
sub esp, 0x10
jmp 0x697626
lea esp, [esp + 3]
push dword [esp + 0x20]
ret 0x24
jp 0x69763c
lea edx, [edx*4]
jmp 0x697643
lea edx, [edx*4]
lea esp, [esp + 0x10]
inc cl
jmp 0x6977e5
lea esp, [esp + 1]
ror cl, 0
xchg dl, dh
lea edx, [ecx*4]
call fcn.00697670
mov dh, byte [esp]
bswap ecx
bsf cx, sp
jmp 0x69770e
sub esp, 0x1d
push dword [esp + 4]
mov edx, 0x4fbb71f5
jmp 0x69768d
cmc
jmp 0x69771b
inc esi
btc edx, eax
jo 0x6976f8
cmc
jmp 0x697758
mov edx, dword [esp]
lea ecx, [edi + 0xa874]
sete cl
lea edx, [edi - 0xb8]
lea ecx, [edx*4]
jmp 0x6977a8
lea edx, [edi - 0xb8]
jmp 0x69772d
mov edx, dword [esp]
lea ecx, [edi + 0xa874]
sete cl
jmp 0x697742
xchg dl, dh
jmp 0x6976ea
clc
jo 0x6977cc
mov cx, dx
neg dh
jmp 0x6977b6
mov dx, 0x4968
setbe dl
mov dh, dl
sub esp, 2
jmp 0x697804
bswap edx
lea edx, [esp + ebx]
mov cl, bl
mov cl, byte [esp]
not al
jmp 0x69777d
mov dx, 0x4968
setbe dl
mov dh, dl
jmp 0x697794
mov cx, dx
neg dh
jmp 0x69778b
not dl
mov edx, ecx
rol dh, cl
ja 0x697776
xchg dl, dh
sub esp, 0x1d
push dword [esp + 4]
mov edx, 0x4fbb71f5
lea esp, [esp + 1]
jmp 0x697691
neg cx
jg 0x69781a
lea esp, [esp + 2]
jmp 0x698837
lea esp, [esp + 2]
call fcn.006981ef
inc edi
push esi
lea ecx, [edi*4]
add esp, 3
jmp 0x6979ca
bswap ecx
mov dl, byte [esp]
neg dx
jmp 0x69789d
mov dh, 0x1b
bsf ecx, edi
dec cl
jmp 0x69791f
add ecx, 0x2d32caf8
jmp 0x6979ec
not cl
lea esp, [esp + 1]
jmp 0x697adc
dec cl
jmp 0x69791f
not cx
jmp 0x6978bc
not al
neg edx
jb 0x697952
btc edx, eax
mov ch, 0x39
jmp 0x69796a
jnp 0x697854
mov dh, 0x1b
bsf ecx, edi
jmp 0x697878
add ecx, 0x980c8296
jmp 0x697a38
neg cl
mov ch, byte [esp]
not cx
call fcn.006978a6
test dword [esi + 0xf], esp
mov bl, 0xd1
pushal
lea ecx, [edi*4]
lea esp, [esp + 0x1e]
lea esp, [esp + 2]
jmp 0x697907
mov ecx, 0x3a40a181
push edi
xchg dword [esp + 4], ebx
lea ecx, [eax + 0xa6b5]
jmp 0x697994
lea ebx, [ebx - 0x45]
lea ecx, [0x67c6bc5c]
cmc
jmp 0x6978f1
ror al, 0
bt cx, ax
jns 0x69787f
not cx
neg cl
mov ch, byte [esp]
not cx
jmp 0x697884
btc edx, eax
mov ch, 0x39
mov ecx, 0x8be22b9e
jmp 0x697954
jmp 0x69793c
mov ecx, eax
neg edx
jle 0x697971
not dh
lea edx, [ecx + 0xc8]
jmp 0x6979a3
mov ecx, 0x8be22b9e
jmp 0x697954
not dh
jmp 0x697979
lea edx, [ecx + 0xc8]
lea edx, [eax + eax]
jmp 0x697a09
bswap ecx
lea ecx, [0xe94b3800]
push dword [esp + 4]
ret 8
lea edx, [eax + eax]
jmp 0x697a09
mov dx, word [esp]
lea edx, [0xe8729b3a]
jmp 0x697860
jbe 0x697aca
sbb dx, 0x87e4
lea edx, [ecx*4]
jmp 0x69786d
lea edx, [0xe8729b3a]
jmp 0x697860
lea edx, [ecx + edx]
rcl dl, 0
jne 0x697a56
je 0x697a56
push 0xf0684d50
jmp 0x6985dd
shl ecx, 2
jge 0x6979a8
mov dx, word [esp]
jmp 0x6979e1
mov dl, al
bt dx, ax
jmp 0x6978ae
cmc
jnp 0x697a14
mov dl, al
bt dx, ax
jmp 0x6978ae
jmp 0x697a74
bswap edx
btc dx, di
jmp 0x697a5e
mov ecx, dword [ecx - 0x2cc96762]
jmp 0x697a2a
btr dx, bp
jmp 0x697aa0
add eax, 0xa0470b85
jmp 0x698f73
bt dx, ax
js 0x697a3a
bswap edx
btc dx, di
btr dx, bp
call 0x697a8a
dec ecx
pushal
pop dword [esp + 0x13]
bsf edx, esi
push dword [esp + 2]
sub esp, 0x1c
jmp 0x697b82
mov esp, ebp
lea edx, [edx + edi]
setnp dl
mov edx, dword [esp]
jmp 0x697ab1
bswap edx
push ecx
ret
sbb dx, 0x87e4
lea edx, [ecx*4]
not cl
lea esp, [esp + 1]
not al
mov dl, byte [esp]
jmp 0x697846
xchg dword [esp + 0x3c], esi
mov dx, word [esp]
stc
ror dx, 1
clc
call fcn.00697b39
mov ecx, dword [esp + 6]
neg ecx
jns 0x697bb2
js 0x697c2f
pop ebp
xlatb
inc edi
and dl, cl
sbb ecx, edx
sub esp, 0x12
call 0x697b94
lea esp, [esp + 2]
lea esp, [esp + 0x18]
xor al, 0x64
xchg cx, dx
mov dl, byte [esp]
jmp 0x697bf0
lea esp, [esp + 0x20]
neg al
neg cl
jle 0x697c18
jg 0x697c02
pop ebp
int 0x5d
and al, 0xd7
pop ss
int 0x5e
int3
lea ecx, [esp + ebp]
mov dh, 9
mov cx, di
pushal
mov dh, byte [esp + 1]
mov dx, bp
jmp 0x697bd2
mov cl, byte [esp]
lea edx, [edx*4]
sete dh
jmp 0x697c62
mov cl, byte [esp]
lea edx, [edx*4]
sete dh
sub esp, 5
jmp 0x697c4b
lea esp, [esp + 2]
jmp 0x697bb6
lea esp, [esp + 4]
not al
mov dl, 0x31
bsr dx, sp
jmp 0x697c69
inc dh
lea esp, [esp + 1]
jmp 0x697c35
sub esp, 5
inc dh
jmp 0x697c4d
jno 0x697c83
bswap ecx
call fcn.00697cd1
cld
push 0xda6899fe
adc al, byte [ebp + 0x328f7c15]
mov ah, 0xa7
into
pop ecx
mov eax, 0xe083c90f
cmp al, 0x66
mov edx, 0xca0f07fe
bswap ecx
and eax, 0x3c
mov dx, 0x7fe
bswap edx
lea edx, [edi + ebp]
jmp 0x697d2e
mov dx, sp
mov edx, edi
mov ecx, dword [edx]
setge dl
jmp 0x697fc3
mov edx, dword [esp]
jmp 0x697f7c
mov dword [eax + ebp], ecx
xor cx, 0x3349
jb 0x697d61
mov edx, dword [esp]
jmp 0x697f7c
setp dh
mov dl, 0x34
jmp 0x697d77
btc edx, ebp
call 0x697dce
sub esp, 0x1f
lea esp, [esp + 3]
jmp 0x697eac
mov dx, word [esp]
dec dx
jo 0x697e96
setb dl
jmp 0x697f2c
movzx eax, byte [esi]
bsf cx, cx
jp 0x697e45
btc edx, ebp
jmp 0x697e48
setb dl
not edx
xchg dl, dh
bsr dx, bp
sub esp, 0x1c
jmp 0x697ece
add al, bl
mov cx, word [esp]
mov ch, cl
mov cl, al
jmp 0x697e6e
jmp 0x697e88
pop dword [esp + 5]
lea esp, [esp + 0x18]
add cl, 0x2c
shl dh, cl
je 0x697f10
mov dl, byte [esp]
shr dl, cl
jmp 0x697f12
sub esp, 0x1c
jmp 0x697ece
mov dl, byte [esp]
shr dl, cl
call fcn.00697f4c
and byte [edx + 0x3970b445], ch
sbb byte [ebx + 0x52], bh
int 0x5c
jmp 0x697efa
jmp 0x697f92
rcr dx, cl
mov dh, byte [esp]
dec dx
bsf dx, ax
cmp edx, edx
rol edx, 0x19
jmp 0x698051
not edx
xchg dl, dh
bsr dx, bp
jmp 0x697ef5
add edi, 4
mov ax, word [esp]
not dx
lea edx, [ebx + esi]
mov eax, dword [esp]
jmp 0x697ecc
inc cl
mov dh, byte [esp]
lea edx, [ebp*4]
dec dx
jmp 0x697fec
rol dl, 6
jp 0x697d9e
setp dh
mov dl, 0x34
jmp 0x697d77
dec dx
bsf dx, ax
cmp edx, edx
jmp 0x697f22
jnp 0x697f14
rcr dx, cl
mov dh, byte [esp]
jmp 0x697fd6
clc
lea edx, [ebx*4]
neg dh
jmp 0x69803a
clc
lea edx, [ebx*4]
neg dh
mov byte [esp + 3], dl
lea esp, [esp + 2]
lea esp, [esp + 0x10]
inc cl
jmp 0x69805d
mov byte [esp + 3], dl
lea esp, [esp + 2]
jmp 0x698022
ror cl, 0
bswap edx
sub esp, 0x12
jg 0x698010
jle 0x697ffa
rol dh, 1
jns 0x6980c0
mov edx, ebp
jmp 0x6980c2
lea edx, [eax + 0x9378]
mov dl, cl
mov dl, 0xb2
lea edx, [esp + ebp]
sub esp, 0x16
jmp 0x69810d
mov edx, ebp
call fcn.00698069
ja 0x6980a7
lea edx, [eax + 0x9378]
mov dl, cl
jmp 0x698197
jmp 0x698169
not ecx
mov cl, byte [esp]
rcl edx, 2
jge 0x698137
setns cl
mov ch, 0xf2
inc cx
jmp 0x698152
pop word [esp + 0x11]
add bl, cl
bswap ecx
btr cx, sp
js 0x6980ea
sub esp, 0xc
jmp 0x69816c
mov ch, 0xf2
inc cx
jmp 0x698152
setns cl
jmp 0x698121
not al
lea edx, [ebx*4]
mov dx, word [esp]
call fcn.0069813c
jle 0x6981af
call 0xeced2376
or al, 0x46
sub esp, 0xc
inc esi
lea edx, [0xd4ddbc48]
pushfd
jmp 0x6980ec
lea esp, [esp + 8]
neg al
jmp 0x69822d
mov dl, 0xb2
lea edx, [esp + ebp]
sub esp, 0x16
jmp 0x69810d
adc esi, dword [edx - 0x14317427]
adc dword [edx - 0x72988b3b], ebp
and al, 0x24
push dword [esp + 2]
bsf dx, bx
jmp 0x69817b
mov cl, ah
mov dh, bh
jmp 0x69838a
xchg cl, dl
bsr dx, dx
jae 0x698216
mov cl, ah
jmp 0x698200
pushfd
jmp 0x6979f6
cpuid
btr edi, ebx
jb 0x698601
jae 0x6987cb
pop ebp
rol byte [eax + 0x27], cl
shl byte [ebx + edx*8 + 0x4a], cl
in eax, 0x8d
and al, 2
mov dword [esp + 0x10], edi
lea esp, [esp + 0x10]
jmp 0x6985c4
mov ecx, 0x13391518
jmp 0x6986ab
lea ebp, [esp]
jmp 0x69864d
cpuid
push bx
cmc
jae 0x6986d7
lea esp, [esp + 2]
jmp 0x6986bb
xchg dl, bh
jmp 0x698644
mov esi, dword [esp + 0x2c]
btc ebp, esi
jle 0x698665
xchg dl, bh
call fcn.0069862e
sub esp, 0xc0
mov edi, esp
mov ecx, edx
lea eax, [edi + edi]
jmp 0x69876f
lea esp, [esp + 2]
jmp 0x6986bb
and edx, esp
rol eax, cl
cmc
jmp 0x698742
and edx, esp
rol eax, cl
cmc
bt cx, ax
mov ecx, 0xf153cbfb
ror esi, 0
xchg ah, ch
jmp 0x698727
add esi, 0x3aea014
dec ax
jbe 0x69874d
mov ax, 0xd82d
bswap edx
mov cl, byte [esp]
jmp 0x698813
lea edx, [eax + ebp]
setle al
mov dl, dh
mov cx, 0xf837
jmp 0x69870d
bt cx, ax
mov ecx, 0xf153cbfb
jmp 0x698706
mov ax, 0xd82d
call fcn.0069879e
jl 0x6987a7
bswap edx
jmp 0x6987d5
xchg ch, cl
mov ebx, esi
lea ecx, [edx - 0xce7a]
rcl ax, cl
je 0x6986f8
jne 0x6986dd
mov ecx, 0x1335a24e
cmc
xchg ecx, eax
neg dx
lea ebx, [ebx + 2]
neg dh
jmp 0x6987af
not edx
xchg dword [esp], ebx
stc
jmp 0x698788
xor dx, 0x1b5f
sub esp, 0xd
mov dl, 0x47
lea esp, [esp + 1]
xchg dword [esp + 0xc], ebx
bsr dx, bx
jmp 0x6987eb
mov ecx, 0x13391518
jmp 0x6986ab
mov cl, byte [esp]
jmp 0x698813
xchg dx, ax
setb dl
lea eax, [ecx + ebp]
xchg ecx, edx
push dword [esp + 0xc]
ret 0x10
sete dh
jmp 0x698e4c
dec esi
sub esp, 9
jbe 0x6987fd
sete dh
rdtsc
neg dx
jmp 0x698e51
neg al
mov cx, word [esp]
jmp 0x697824
rdtsc
neg dx
call fcn.00698989
mov dh, 0xb3
jmp 0x698edf
rcl dx, 0xa
jle 0x698f17
setg dh
jmp 0x698f1a
mov dx, word [esp]
mov dh, 0xb6
lea edx, [eax + 0x53]
jmp 0x697a64
setg dh
mov eax, dword [eax + 0x17f1ad15]
jmp 0x698eea
call fcn.00698f4d
rcl dl, cl
setb dh
cmc
mov edx, dword [esp]
lea ecx, [ecx + 0x8f]
jmp 0x698fba
pop edx
mov dl, 0x35
mov edx, 0x5e2ca8c5
push dword [esp]
ret 4
mov dx, cx
mov dh, cl
cmc
mov dx, word [esp]
xchg dword [esp], ecx
push ebp
jmp 0x698fa0
pop dword [edi]
lea ecx, [ecx - 0x76ec]
xchg dl, ch
mov dh, byte [esp]
jmp 0x69718a