Function at 0x785d9b
Capabilities:
Execute anti-debugging instructions

Disassembly:
setg ch
shl di, cl
pop word [esp + 3]
sub edx, eax
xchg word [esp + 3], si
call fcn.00785770
pop di
pop dword [esp + 2]
cpuid
rdtsc
xchg byte [esp], dl
xchg ah, bl
call 0x78585c
ja 0x78583b
jbe 0x785841
dec edi
jne 0x785853
push eax
jb 0x785847
jo 0x785845
jb 0x78584b
dec eax
popal
jb fcn.007857ed
setge ah
jmp 0x7857c4
mov ax, 0xfcad
bswap edi
not edi
ror ch, 5
lea esp, [esp + 1]
mov bh, byte [esp + 3]
jmp 0x7857ad
mov byte [esp + 5], bh
neg dx
xor dl, ch
bswap edx
xchg word [esp], cx
pop edx
jmp 0x78585e
add byte [esi - 0x71], ah
add al, 0x24
neg si
neg esi
mov dword [esp + 9], esi
and al, 9
mov ah, byte [esp + 6]
jmp 0x785819
jb 0x7858ba
popal
insd dword es:[edi], dx
dec edi
jo 0x7858bf
outsb dx, byte [esi]
add bl, ch
shl dword [esi - 0x43], cl
loope 0x78587a
mov bp, 0x18e1
pop cx
neg ebx
btr ebp, esp
mov word [esp + 6], dx
pop dx
jmp 0x785928
setl ah
pop word [esp + 2]
pushfd
les esp, [esi - 0x71]
inc esp
and al, 2
and cl, bh
bswap edi
setge ah
jmp 0x785804
add esp, 1
neg esi
push esp
sub esp, 0x1a
pop dword [esp + 0x16]
inc edx
jmp 0x785908
xchg word [esp], cx
xchg ah, bl
xchg ebp, eax
not ch
lea ecx, [eax + 0x29]
push word [esp + 2]
jmp 0x78588e
invalid
sub dword [esi - 1], esp
je 0x7858e8
add ch, bl
invalid
pop eax
clc
setle ch
xchg word [esp], cx
mov cl, 0xe2
mov dh, byte [esp]
jmp 0x7858b3
popal
call 0x7858ef
js 0x78587b
push esp
and al, 5
jmp 0x785952
lea edi, [esi - 0x5d]
clc
not di
mov bl, 0xc0
call 0x7858e8
inc edi
je 0x78596d
je 0x78597d
jb 0x785992
jne 0x785990
dec ecx
outsb dx, byte [esi]
outsw dx, word [esi]
inc ecx
add byte [esi], dl
adc ecx, 0xb7ba66e8
sbb al, 0x66
pop eax
shr eax, 1
mov dx, 0x1cb7
pop ax
lea ecx, [edx + ebx]
setnp bh
xchg dword [esp], esi
jmp 0x7858d8
lea edx, [edx + ebx]
sub ebx, eax
sub esp, 0xa
xchg bh, cl
add bp, 0x4af6
jmp 0x78595f
mov ebp, esi
not ch
mov edx, ebp
push edx
xor dl, ch
mov bl, 0x38
jmp 0x78593b
xchg word [esp + 0x11], dx
pop word [esp + 0xb]
cpuid
mov dword [esp + 0xd], ecx
and al, 0xd
jmp 0x7859ff
bsf cx, ax
mov ebx, dword [esp + 8]
lea edx, [ebp*4]
stc
rdtsc
xchg word [esp], cx
call fcn.007853c9
inc al
cmc
lea esp, [esp + 7]
not eax
pushal
mov byte [esp + 7], ch
jmp 0x785a2a
xchg bh, cl
bswap ebx
mov dword [esp + 3], esi
push dword [esp + 8]
btr esi, esp
push word [esp + 3]
call fcn.007859a6
push ebx
je 0x785a1f
jb 0x785a4e
outsd dx, dword [esi]
jb 0x785a2c
outsd dx, dword [esi]
add byte gs:[ebp + 0x4c], bh
fbld tbyte [esi]
rdtsc
pop dword [esp + 4]
pop word [esp + 5]
mov dh, byte [esp + 3]
sub esp, 0
jmp 0x7859bd
neg dh
xchg edi, eax
pop bx
stc
lea ebx, [ebp - 0xb7]
mov ch, byte [esp + 0xd]
jmp 0x7859e7
cpuid
rdtsc
mov di, dx
mov word [esp + 3], di
mov dword [esp + 4], ebp
and al, 4
mov bl, bh
jmp 0x7862da
popal
lea ebx, [ebx + edi]
sbb al, 0x3b
lea esp, [esp + 4]
mov ah, byte [esp]
mov bx, word [esp + 3]
btc ebp, ebx
jmp 0x785a11
mov ecx, 0x247c8966
add esp, dword [esi - 1]
je 0x785a7c
add esp, dword [esi - 0x71]
inc esp
and al, 2
push dword [esp + 4]
mov byte [esp + 5], ch
jmp 0x785975
add esp, 0
mov byte [esp], dh
mov dl, dh
mov ecx, 0x40750d8
mov ch, byte [esp]
jmp 0x785ac8
dec ebx
cwde
sti
ror byte [ebp - 0x73], cl
or al, 0x9d
add byte [eax], al
add byte [eax], al
xchg byte [esp], cl
btr eax, esp
setns bh
lea esp, [esp]
jmp 0x785a6b
mov ch, byte [esp + 0x14]
mov eax, 0x2323a432
mov ch, byte [esp + 2]
push dword [esp + 2]
jmp 0x785b23
sub esp, 0x16
pop word [esp + 0xf]
sub esp, 2
bswap eax
sub esp, 6
xchg esi, ebp
jmp 0x785aac
setne ch
pop word [esp + 5]
bswap eax
bswap ebx
inc si
push dword [esp + 0x1a]
jmp 0x785b50
neg eax
mov dword [esp + 3], ecx
xchg word [esp + 9], bp
neg ebx
stc
mov cl, 0xa2
jmp 0x785b38
mov edi, 0x12d22e88
inc esi
neg ebp
pop dword [esp + 0x17]
xchg word [esp + 4], cx
neg bh
jmp 0x785af8
bsr dx, bp
rdtsc
rdtsc
mov dl, dh
sub esp, 0
xchg ebx, esi
jmp 0x785bd4
pop si
add esp, 9
pop esi
not esi
mov ax, bx
lea esp, [esp + 3]
jmp 0x785b0c
lea ebx, [ecx + edi]
mov edx, 0x40dbe0fa
mov ebp, eax
mov ch, byte [esp + 1]
lea edx, [eax + 0x91]
xchg bx, ax
jmp 0x785c23
mov ch, byte [esp]
mov dx, word [esp + 2]
mov dx, word [esp + 1]
lea ebx, [ecx*4]
mov word [esp], di
inc bp
jmp 0x785b89
push word [esp + 0xa]
bsr bx, cx
bsf bx, ax
xchg dword [esp + 2], ebp
mov al, 0xae
lea esp, [esp + 0xc]
jmp 0x785ba6
mov ecx, dword [esp + 7]
mov byte [esp + 0x19], ch
pop dword [esp + 2]
pop cx
push dword [esp + 0xd]
mov byte [esp + 3], ah
jmp 0x785c6e
mov byte [esp + 1], dh
xchg byte [esp], cl
pushal
mov dword [esp + 0x1d], esi
mov al, ah
xchg bh, cl
jmp 0x785c01
push edx
cpuid
mov ch, byte [esp + 1]
btc esi, ebx
lea ebx, [ebp*4]
jmp 0x785c7e
mov dl, dh
not eax
xchg ah, bl
xchg di, si
lea ecx, [eax + 0xd9]
xor ebp, esi
jmp 0x785c35
neg ch
neg ebp
cpuid
pushal
lea esp, [esp + 0x41]
lea edi, [eax + edx]
jmp 0x785c4d
mov si, bx
cld
pop dx
not edx
mov dl, 0x2c
sub esp, 0x10
jmp 0x785d37
xchg edx, eax
xchg bx, ax
call fcn.00785d14
mov dl, 0x54
bsf bp, si
shl bx, cl
rcr ecx, 0xb
lea edi, [ebp*4]
mov dword [esp + 0x13], eax
jmp 0x785d8b
pop esi
push word [esp + 0x11]
mov dword [esp + 0x13], eax
call 0x785d9b
inc esp
xchg byte [esp + 0x13], dl
bsf bp, ax
mov word [esp + 0x18], di
jmp 0x785e18
mov dh, byte [esp + 0x10]
btr ecx, esp
pop edi
mov word [esp + 0xc], bx
jmp 0x785dfb
btc ebp, ebx
sub esp, 0x18
sub bl, ah
mov bx, sp
not esi
mov byte [esp + 0xd], bh
jmp 0x785dbb
mov dx, 0x705
mov eax, esi
mov ecx, esi
mov di, word [esp]
mov bl, 0x48
xchg byte [esp], cl
jmp 0x785dd1
xchg word [esp + 0xe], cx
pop ebx
stc
xchg edi, eax
mov word [esp + 5], sp
mov bl, 0x18
jmp 0x785e85
sub esp, 0xe
neg dh
btc ebx, ebx
neg ch
xchg dh, al
lea esp, [esp + 0x2d]
jmp 0x785de8
mov edi, eax
mov si, bx
xchg byte [esp], al
inc esi
xchg bp, bx
sub esp, 0xc
jmp 0x785e6d
xchg word [esp], dx
not ecx
setne dh
mov bh, byte [esp + 1]
mov byte [esp], ch
jmp 0x785e2a
mov esi, 0x40fa372
bsf di, si
mov si, word [esp]
mov dl, dh
shr bh, 3
cpuid
jmp 0x785e40
mov di, bx
push word [esp + 0xb]
xchg ecx, edi
xchg bx, dx
xchg word [esp + 1], ax
jmp 0x78605c
xor dl, ch
mov bx, word [esp + 0x10]
not edx
lea edi, [ecx + 0x73]
add esp, 0xf
mov ebp, eax
jmp 0x785e57
sub esp, 6
pop word [esp + 7]
mov ebp, 0x85406832
call 0x785ebf
inc esp
push eax
je 0x785f5b
dec esp
push eax
add byte [esi - 0x71], ah
inc esp
and al, 3
pop word [esp + 3]
rdtsc
mov bh, byte [esp + 1]
lea ebx, [esp + edi]
setg ah
xchg dword [esp + 4], ecx
jmp 0x785ed6
bswap esi
rdtsc
mov edi, 0xdd132848
mov cx, 0x7bbd
btc edi, ebx
sub byte [ebx], dl
frstor dword [esi - 0x47]
mov ebp, 0xdfbb0f7b
cld
jmp 0x785eef
xchg dword [esp + 4], ebp
setns ah
mov ebx, dword [esp + 1]
rcr ch, 5
mov word [esp + 0xa], bx
bswap ecx
jmp 0x785f55