Function at 0x79032c
Capabilities:
Encode data using xor
Execute anti-debugging instructions

Disassembly:
ror esi, 0
mov dl, byte [esp]
rdtsc
mov ax, word [esp]
lea eax, [esp + ebx]
jmp 0x7902af
mov dword [esp], edx
rdtsc
mov byte [esp + 1], al
jmp 0x7902e5
xchg dl, bh
rcl bx, 0xd
jmp 0x7902fd
mov bl, cl
lea esp, [esp + 4]
inc esi
jmp 0x7902e7
add esi, dword [ebp]
not edx
jmp 0x790303
rdtsc
mov dword [esp], edx
rdtsc
mov byte [esp + 1], al
jmp 0x79028e
mov bl, ch
bsr ax, bp
jp 0x7902c4
jnp 0x7902c4
xchg ebx, eax
and esi, dword [ebx - reloc.WINMM.dll_midiStreamStop]
adc dword [eax + reloc.WINMM.dll_midiStreamStop], edx
mov esp, 0xbaebd98a
jl 0x7902bb
mov bl, cl
jmp 0x7902bd
lea ebx, [ebx + esi]
sub esp, 0x19
jmp 0x790528
mov edx, 0x6ae24727
lea esp, [esp + 1]
jmp 0x790398
neg dl
jp 0x7902da
rdtsc
jmp 0x7902a4
jmp 0x79037f
movzx edx, byte [esi]
mov ax, bx
lea ebx, [edx + edi]
mov ax, word [esp]
btc eax, edi
jb 0x790337
setne bl
mov eax, edi
mov bx, 0xcd12
jmp 0x790388
setne bl
mov eax, edi
mov bx, 0xcd12
call fcn.0079040e
std
push 0xfffffffffffffff8
lahf
push 0xffffffffffffffd4
or esp, dword [edx - reloc.WINMM.dll_midiStreamStop]
mov bl, 0x88
and al, 2
jmp 0x79034d
mov byte [esp + 2], ah
pop ebx
call fcn.007903c3
adc byte [edx + ebx - 0x59b77383], al
xor dword [ecx - reloc.WINMM.dll_midiStreamStop], esp
mov bl, 0xaa
lds esp, [esi + 0x48]
jo 0x79039a
mov byte [esp + 2], ah
pop ebx
jmp 0x7903d9
sub dl, cl
or al, bl
jbe 0x79043b
ja 0x79043b
stosd dword es:[edi], eax
xor byte [esi - 0x487ecf3f], ah
sub eax, 0x8737c4bd
mov esp, 0x24648d8f
add al, byte [edi - 0x47ebdb8c]
or byte [edx], 0x5d
not bl
xchg ah, bh
neg bh
jmp 0x7904f2
mov bl, dl
jmp 0x790443
mov al, 0x8b
not eax
lea eax, [ebx*4]
lea eax, [ebp*4]
jmp 0x7904b4
shl eax, 0xc
mov eax, dword [esp]
neg ax
jmp 0x790494
jmp 0x790466
inc bl
neg eax
js 0x7904d6
mov eax, 0x7a6ade85
mov ax, 0xa2d2
jmp 0x790501
mov ax, 0x9c21
lea eax, [ebp*4]
jmp 0x79047e
lea eax, [esi + edi]
not eax
inc bl
shl ax, cl
jg 0x79047c
shl eax, 0xc
mov eax, dword [esp]
neg ax
mov ax, 0x9c21
lea eax, [ebp*4]
jmp 0x79047e
mov eax, 0x7a6ade85
jmp 0x7904fd
mov bh, byte [esp]
lea esi, [esi + 0x35]
call fcn.0079045b
mov ax, 0xa2d2
dec bl
rol ah, cl
jmp 0x79058b
mov ax, 0xa6e0
mov al, byte [esp]
sub esp, 0x19
sub esp, 0xe
mov al, 0x74
lea esp, [esp + 3]
jmp 0x79053d
js 0x79030f
mov edx, 0x6ae24727
lea esp, [esp + 1]
call fcn.0079098f
mov esi, 0x2424648d
lea esp, [esp + 0x24]
sub bl, 0x30
neg ax
js 0x790573
jns 0x79055d
mov word [ecx], cs
cdq
clc
or esi, dword [esi - reloc.WINMM.dll_midiStreamStop]
sbb dword [ebx + 0x74b00eec], eax
sub esp, 0x19
sub esp, 0xe
mov al, 0x74
jmp 0x79051a
lea eax, [esi*4]
inc eax
neg ah
jmp 0x7905b5
lea eax, [esi*4]
inc eax
neg ah
not al
bswap eax
jmp 0x79059a
jp 0x79050b
mov ax, 0xa6e0
mov al, byte [esp]
jmp 0x790553
not bl
call fcn.00790667
loop 0x79060b
invalid
not al
bswap eax
call 0x790611
pop ecx
push di
lea esp, [esp + 2]
jmp 0x7905f9
xchg dword [esp], ebp
cmc
mov ah, byte [esp]
neg eax
call 0x7905bf
mov ax, word [esp + 0x14]
lea esp, [esp + 3]
xchg dword [esp + 0x20], ebp
jmp 0x790639
lea ebp, [ebp - 0x24]
bswap eax
mov eax, dword [esp]
sub esp, 0x1f
jmp 0x7905e3
dec edx
sub eax, 0x80c16fdc
mov ax, bx
ror ah, 5
mov eax, dword [esp]
sbb ah, 0xe
mov ax, word [esp]
jmp 0x7905d5
lea eax, [ecx*4]
neg ax
lea eax, reloc.WINMM.dll_midiStreamStop
clc
push dword [esp + 0x20]
ret 0x24