Function at 0x78837e
Capabilities:
Execute anti-debugging instructions

Disassembly:
add esi, 0x8b49ab3c
jmp 0x78857b
push esp
mov byte [esp + 5], dh
jmp 0x7884e8
push 0
jmp 0x788493
push 0
jmp 0x788583
jne 0x78841b
rcr ecx, 0x1f
bsf bp, si
jmp 0x788422
rcr ecx, 0x1f
bsf bp, si
jmp 0x788438
sub esp, 0xc0
mov ebp, esp
mov al, 0xc6
lea ebx, [esp + ebp]
xor dl, ch
jmp 0x78848c
jmp 0x788473
call 0x788455
jmp 0x78a1cd
lea ecx, [edx + edx]
mov edi, 0xab97d42a
lea edi, [esp]
setne bh
shr edx, 1
jmp 0x7883fe
lea ebx, [ecx + 0x3681c463]
mov ax, di
mov eax, dword [esp]
jmp 0x78817f
push 0
jmp 0x78870e
jae 0x7884a4
xchg dx, cx
jmp 0x7884a7
call 0x788498
jmp 0x78a1e3
xchg dx, cx
mov ecx, esi
neg ebx
jnp 0x788449
lea ebx, [ecx + 0x3681c463]
mov ax, di
mov eax, dword [esp]
call fcn.0078844b
inc esi
jno 0x788532
mov bl, byte [esp]
bswap ebp
mov esi, dword [esp + 0x28]
bswap ebx
mov di, sp
jmp 0x788461
mov dword [esp + 0x8c], edi
lea esp, [esp + 0x8c]
pushfd
mov ax, 0x8dd5
mov al, 0xde
jmp 0x7884c2
mov ebx, 0xd8b6461a
mov edx, esp
xchg dword [esp + 0x10], eax
call 0x788510
xor al, 0x8b
pop esp
and al, 3
mov edx, esp
rdtsc
jmp 0x788596
sbb bx, 0xd1d4
xchg ebx, edx
jmp 0x7884ff
mov dword [esp + 0x28], eax
jmp 0x78a302
xchg bx, ax
rdtsc
jmp 0x788568
call 0x788559
jmp 0x78a30c
xchg bx, ax
rdtsc
bswap eax
neg dh
jl 0x788564
jge 0x78854e
call 0x788588
jmp 0x78a3cc
mov word [esp], dx
push dword [esp + 0x14]
ret 0x18
mov dword [esp + 0x28], eax
jmp 0x78a407
call 0x788630
jmp 0x78a398
btr eax, edi
jo 0x788708
pushal
jmp 0x788709
lea esp, [esp + 8]
not bl
sete al
jmp 0x78867b
call 0x7886af
pop edi
ja 0x78870c
jae 0x788714
arpl word [ebp + 0x70], bp
add cl, ch
fstp dword [eax + eax]
add byte [edx + eax - 0x3b], dl
jae 0x788696
jb 0x788696
call 0x7886c0
pop ecx
sub ecx, 0x1000c824
jmp 0x78a5e7
pushal
call 0x7886df
invalid
call 0x788713
jmp 0x78a96c
push esp
and al, byte [eax]
add byte [esi + ebx - 0x1dd91474], bl
out dx, eax
inc ebp
add byte [ebp - 0x17], bl
invalid
call 0x78a1b8
dec ebp
push ebx
push esi
inc ebx
push edx
push esp
insb byte es:[edi], dx
insb byte es:[edi], dx
add bl, ch
sbb ebp, dword [ebx - 0xd]
arpl word [esi], ax
cmc
adc eax, 0xd6af473
cld
adc ah, byte [edi - 0x1f]
jno 0x78a1da
jecxz 0x78a1d4
mov al, byte [0x6a602d58]
invalid
pop eax
sub eax, 0x69c76a60
jmp 0x78a1a8
sar edi, cl
nop
popfd
jae 0x78a1a0
imul eax, dword [ebp - 0x1cd01440], 0x5864751a
test eax, eax
jmp 0x78a20e
pop eax
sub eax, 0x539690eb
jmp 0x78a202
pushal
jmp 0x788450
call dword [eax + 0x539599e5]
jmp 0x78a1db
je 0x7883b4
jne 0x78a26b
cmp dword [edx + 0xdb24720], esi
cmp dword [edi + 0x38b14227], esi
sub al, byte [ebp - 0xc]
out 0x9c, eax
pushfd
cmp dword [esp + 4], 0
jne 0x78a2a3
je 0x78a1fc
sub ecx, 0x1000c683
mov dword [ecx + 0x1000e62e], eax
jmp 0x78a2a9
call 0x78a281
pop edi
js 0x78a2d7
jo 0x78a2eb
pop edi
push 0x6c646e61
jb 0x78a2b3
add byte [eax - 0x18], dl
ret
popfd
ret 4
inc dword [esp + 8]
jmp 0x78a28c
movzx ebx, byte [eax]
add ebx, 0x9e45e142
jmp 0x78a2e4
xor byte [eax + edi*4], bh
dec ecx
mov eax, 0x5951251
insb byte es:[edi], dx
lahf
and al, byte [edi + esi + 0x648d691e]
and al, 4
lea esp, [esp + 4]
ret
or dh, byte [ebp + 0x5a3faf22]
test eax, 0xccfd4208
pop edi
cmpsb byte [esi], byte es:[edi]
cmp ebx, 0x9e45e20e
je 0x78a348
pop esp
jne 0x78853b
fist dword [ecx - 0x3f]
mov al, byte [0xd250d653]
inc eax
daa
rcl byte [esi], cl
ror dword [edx - 0x1b], cl
adc al, 0x61
popal
popfd
jmp 0x78a2c4
pushal
jmp 0x788554
pop eax
sub eax, 0xfe075b94
jmp 0x78a360
jne 0x78a3eb
je 0x78a306
into
dec ebp
frstor dword [edi + edx*2 + 0x4cde58bc]
sub esp, esi
add byte [edx + 0x35c6a333], ch
fnsave dword [esi + 0x424648d]
cmp dword [esp + 4], 0
jmp 0x78a324
test eax, eax
jmp 0x78a3ae
call 0x78a370
dec ebp
push ebx
push esi
inc ebx
push edx
push esp
insb byte es:[edi], dx
insb byte es:[edi], dx
add bl, ch
fdivr dword [ecx]
mov esp, 0x7bc43552
add dword [ecx + 0x368b7819], ecx
test al, 0xcb
bound ebx, qword [ebp + 0x68]
add byte [eax + ebp*8 - 0x4e], bl
push eax
call fcn.0078184a
jmp 0x78862b
pop ecx
jmp 0x78a46d
je 0x7883e3
jne 0x7886a1
push 0xffffffffffffffe8
jle 0x78a3d7
call 0x957e27ef
cld
psrad mm6, qword [edi]
dec esi
fnstcw word [eax]
sbb ebx, dword [eax + 0x2d]
or ebp, dword [eax*4 + 0x1590ff59]
xor al, 0x84
pop eax
sub eax, 0x59852c0b
call dword [eax + 0x59843415]
pop ecx
jmp 0x78a350
inc dword [esp + 8]
jmp 0x78a41e
popal
call 0x78a3f1
jno 0x78a40a
invalid
imul ecx, dword [esi], 0xfffffffd
adc bl, byte [ecx - 0x24]
jb 0x78a42c
in al, 0x5b
test eax, 0x3d826bc8
popfd
ret 4
xchg esi, eax
sub dword [esi + 0x25d6b323], edx
pushfd
out 0x11, al
lea ebx, [ebx + 0x1000e4e7]
mov dword [ebx], eax
pop ebx
jmp 0x78a44b
movzx ebx, byte [eax]
add ebx, 0x6cfc2d14
cmp ebx, 0x6cfc2de0
jmp 0x78a4a6
sub ecx, 0x1000c794
push ebx
mov ebx, ecx
jmp 0x78a436
add dword [esp + 8], 1
call fcn.0078a5cf
or al, 0x8d
sbb eax, 0x9e7a9764
push ds
mov ebx, gs
enter 0x54ef, 0xffffffffffffffff
push esp
invalid
je 0x78a4b7
add cl, byte [ebp + 0x68082464]
add byte [eax], al
add byte [eax], al
jmp 0x78a4ae
je 0x78a4b8
jne 0x7885e9
pushfd
call fcn.0078a544
and al, 0xa2
xor byte [edi - 0x5e], dl
inc esp
out 0x77, ax
push edi
mov byte [0x77e76644], al
adc ah, cl
add dword [eax + ebx - 0xee71672], ebx
cmc
in al, 0x17
push 0
jmp 0x78a226
lea eax, [ecx + 0x1000e70c]
mov dword [ecx + 0x1000e5fd], eax
popal
jmp 0x78a478
je 0x788484
jne 0x78872d
pop eax
sub eax, 0x6225a3dd
call dword [eax + 0x6224aa5c]
jmp 0x78a998
test eax, eax
jmp 0x78a942