Function at 0x791cf5
Capabilities:
Execute anti-debugging instructions

Disassembly:
add esp, 3
neg bx
or bl, 0xd9
mov bl, ch
setp dl
jmp 0x7917a3
mov dword [esp], edx
mov bp, 0x8f05
mov bx, sp
clc
bsr si, di
adc bh, 0x11
jmp 0x791751
lea esi, [ecx + 0xce]
not ah
mov bh, byte [esp + 2]
lea esp, [esp + 6]
mov edx, edi
xor ebp, edx
jmp 0x791767
mov bp, word [esp + 1]
sub esp, 6
lea edx, [esi*4]
neg ax
pop edx
rol di, 2
jmp 0x79180d
cpuid
push word [esp + 0xc]
bts ebx, edi
pop edi
mov ch, byte [esp + 0xa]
push word [esp + 0xd]
jmp 0x79178d
mov si, 0xbbe1
xchg cl, al
add al, 0xaa
xchg dword [esp + 0x14], ebx
bswap esi
jmp 0x79183d
shl ecx, 0xa
pop word [esp + 8]
setp dh
xchg ah, al
lea esp, [esp + 5]
mov cx, word [esp + 0x18]
jmp 0x7917d6
xchg bx, bp
mov dword [esp + 2], edx
mov ebp, dword [esp + 5]
sub esp, 0x1b
mov ax, word [esp + 7]
xchg word [esp + 0xc], bp
jmp 0x7917ec
neg cl
xchg al, cl
mov dx, 0x69df
mov word [esp + 5], bp
std
jmp 0x791a3a
mov bp, word [esp + 0x1b]
xchg dword [esp + 0xf], edi
xchg word [esp + 7], dx
mov dword [esp + 9], ebx
lea ebp, [ecx + esi]
inc si
jmp 0x791827
push word [esp + 2]
dec bp
push dword [esp + 9]
bsr bp, dx
push word [esp + 5]
xchg ah, bh
jmp 0x7917c0
mov dword [esp + 9], eax
dec edi
cpuid
mov di, word [esp + 0xf]
mov si, dx
mov dh, 0xc4
jmp 0x7918c7
xchg byte [esp + 0x29], dl
mov byte [esp + 0x26], dh
dec ch
lea edi, reloc.WINMM.dll_midiStreamOut
lea esp, [esp + 0x2a]
push word [esp + 9]
jmp 0x791878
add esp, 0
clc
sub esp, 2
lea eax, [edx*4]
jmp 0x791911
add esp, 0x12
xchg esi, eax
lea ebp, [edx + ebx]
bsr di, sp
not eax
xchg ebx, eax
jmp 0x7918b1
btc si, cx
mov byte [esp + 0x14], ch
clc
mov bp, 0x7b34
lea esi, reloc.WINMM.dll_midiStreamOut
pushal
jmp 0x791896
neg ebx
xchg word [esp + 2], di
mov ax, 0xd1f6
lea ebx, [esi + 0x5f]
cpuid
jmp 0x791924
mov eax, dword [esp]
xchg dl, cl
xchg dword [esp], esi
bswap ebx
mov byte [esp + 3], bh
xchg dx, di
jmp 0x7918fb
xchg dx, cx
rol di, cl
xchg word [esp + 1], bx
push word [esp + 1]
jmp 0x7919b8
mov esi, dword [esp + 0x16]
or ecx, edi
pop word [esp + 5]
btr dx, bx
mov eax, dword [esp + 0x15]
rdtsc
jmp 0x7918e5
push dword [esp + 2]
sub esp, 0x1e
lea esp, [esp + 0x44]
mov cx, 0x2068
jmp 0x7919a0
mov ax, 0xb8eb
not cx
sub esp, 0x17
rdtsc
xchg byte [esp + 2], dh
xchg ch, dh
jmp 0x791953
mov byte [esp + 8], bl
lea edi, [edi + edi]
setns bh
mov byte [esp + 7], bh
bts bx, sp
ror dx, cl
jmp 0x791969
cpuid
lea ebp, [ecx + ebp]
lea eax, [eax + esi]
not ebp
dec di
rdtsc
jmp 0x791a00
mov dword [esp], ebp
bswap edi
neg ah
push dword [esp + 4]
mov byte [esp + 2], ah
mov edx, dword [esp]
jmp 0x791989
mov bh, byte [esp + 4]
mov cx, 0x8ce7
bt ecx, edx
push dword [esp + 0x10]
jmp 0x791a16
mov si, dx
xchg cx, dx
btc esi, ebp
sub esp, 0x12
mov dword [esp + 0x15], ebx
xchg byte [esp + 0x18], ch
jmp 0x7919cc
sub esp, 8
pop word [esp + 2]
push dword [esp + 4]
mov word [esp + 6], dx
pushfd
push bp
jmp 0x7919e2
dec dx
bswap ebx
clc
mov dword [esp + 0x16], ebx
sete bl
lea ebx, [eax*4]
jmp 0x791a74
mov si, word [esp + 8]
lea ecx, [edx*4]
xchg di, ax
clc
xchg bp, si
push word [esp + 0x13]
jmp 0x79193c
bsr cx, sp
not bp
mov dh, al
mov dx, cx
lea esp, [esp + 1]
neg di
jmp 0x791ae9
mov bh, cl
xchg dword [esp + 0xd], ecx
lea esi, [esp + ebp]
cld
bsr di, bp
add esp, 0x22
jmp 0x791a57
pushal
bts esi, eax
bswap eax
xchg word [esp + 0x17], dx
mov ax, 0x8d12
add esp, 0x1b
jmp 0x791acb
push word [esp + 2]
cmc
mov esi, ecx
add esp, 4
mov ebx, dword [esp]
add esp, 0
jmp 0x791a87
pop word [esp + 0x1c]
neg dx
pushfd
pop dx
mov byte [esp + 0x1a], dh
jmp 0x791b74
neg edx
sets ch
mov byte [esp + 2], dl
mov ecx, dword [esp + 5]
pushal
cpuid
jmp 0x791ab5
btc ebx, edx
btc eax, esi
lea ebx, [eax*4]
lea ecx, reloc.WINMM.dll_midiStreamOut
mov ebp, 0x125edc36
inc al
jmp 0x791aa2
sbb bp, bp
rdtsc
mov al, byte [esp + 7]
neg edx
dec ch
add esp, 0xe
jmp 0x791b57
mov ebp, esi
xchg dword [esp + 0xd], ebp
pop word [esp + 0xa]
xchg dword [esp + 0x10], eax
mov word [esp + 7], si
mov byte [esp + 0x11], al
jmp 0x791b06
xchg word [esp + 1], di
bswap ebx
pop dx
push word [esp + 1]
jmp 0x791b8a
not bh
mov ax, word [esp + 6]
lea ebx, [eax + ecx]
bsr edx, edi
std
xchg ch, al
jmp 0x791b41
sub esp, 0x16
popal
cpuid
lea ebx, [eax*4]
lea esp, [esp + 5]
xchg si, cx
jmp 0x791b27
mov bl, 0xe2
bsf cx, sp
mov ax, si
bsf bp, di
shr eax, 6
mov bl, byte [esp + 3]
jmp 0x791c84
mov edx, dword [esp + 6]
xchg dx, si
cpuid
mov ebp, edi
lea ebp, [ebp + 0x8e]
mov bx, cx
jmp 0x79185d
lea ecx, [ebp*4]
pop word [esp + 2]
mov si, dx
jmp 0x791c4c
mov di, word [esp + 0xc]
dec di
neg bp
push ebx
bsf cx, cx
lea esi, [esi + ebp]
jmp 0x791bc0
mov dword [esp + 4], esi
pop ax
inc di
mov word [esp + 7], bx
xchg esi, eax
pop word [esp + 5]
jmp 0x791bd6
mov edx, dword [esp + 0x19]
xchg byte [esp + 0x19], ch
mov byte [esp + 0xa], dh
mov bx, ax
jmp 0x791c35
mov edi, 0x8a7f7374
xchg ecx, esi
lea ecx, [ebx*4]
mov bp, sp
xchg byte [esp + 2], dh
not bl
jmp 0x791c06
xchg edx, ecx
call fcn.00791c64
cmp al, 0xa2
xor byte [edi - 0x5e], dl
and eax, 0x1277e763
loope 0x791c83
lcall 0xfd87, 0x6617e4f5
xchg bp, di
mov cx, word [esp + 0x10]
mov dword [esp + 9], ebp
push dword [esp + 0x10]
push dword [esp + 0xd]
rdtsc
jmp 0x791c1c
frstor dword [esi - 0x79]
fimul dword [edi]
xchg esi, eax
rol dword [ebx - reloc.WINMM.dll_midiStreamOut], 0x66
pop eax
xchg dx, bx
setbe cl
sub esp, 0x10
mov ebp, eax
pop ax
xchg dword [esp + 0xa], ebx
jmp 0x791bf0
bt cx, bp
bswap edx
not edi
cpuid
jmp 0x791ba7