Function at 0x517cd5
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov edi, 0x959c6904
lea ebp, reloc.KERNEL32.dll_GetProcAddress
mov dword [esp + 0x10], esp
mov word [esp], si
mov cx, 0x6d65
jmp 0x517ce8
xchg word [esp + 9], si
mov bp, 0xb784
mov ax, 0x3653
xchg dword [esp + 0xe], edx
jmp 0x517cb6
push word [esp + 5]
lea esi, [edi*4]
setno ch
lea eax, [ecx + edx]
mov bl, 0xb0
cpuid
jmp 0x517d83
pop word [esp + 3]
lea ebx, [esi*4]
rcl bx, 0xa
jmp 0x517d5f
add esp, 0x14
mov cx, 0x55ea
rdtsc
mov cx, word [esp + 3]
mov edi, 0x7ef04875
clc
jmp 0x517d19
pop word [esp + 1]
lea edi, [ebp*4]
xchg bp, di
jmp 0x517e19
lea eax, [edi*4]
setnp bl
mov dl, 0x34
mov edi, 0x1abea182
cmc
mov dword [esp + 2], ebx
jmp 0x517d49
bsr dx, si
cpuid
rdtsc
mov al, 0x42
mov dx, word [esp + 7]
mov ebp, dword [esp + 0x18]
jmp 0x517d33
mov dl, ch
mov al, byte [esp]
rdtsc
xchg bl, ch
lea ebx, [eax*4]
jmp 0x517ddb
bts ecx, esi
shl al, 7
mov di, bp
mov byte [esp], bh
lea ebx, [edx + 0xc8]
add esp, 2
jmp 0x517d98
cld
sub esp, 5
mov byte [esp + 2], ch
or bx, 0x7ab4
jmp 0x517df2
bsf cx, cx
add esp, 0
mov si, 0x2f55
mov al, ah
lea ebp, [ecx + edx]
mov eax, 0x8fd03550
jmp 0x517dc5
mov ebp, 0xaa40d84f
lea esi, [esp + ebx]
mov bh, byte [esp + 1]
not esi
xchg si, di
mov cx, word [esp]
jmp 0x517e49
xchg byte [esp + 1], ch
add esp, 3
lea edi, [ecx + ecx]
mov dword [esp], edi
xchg byte [esp + 1], cl
lea esp, [esp + 2]
jmp 0x517dae
mov ebx, 0xa7fb1ace
mov dl, 0xaa
xchg edx, esi
add esp, 4
add esp, 1
jmp 0x517e61
lea edi, [ecx*4]
mov esi, dword [esp + 3]
xchg byte [esp + 4], ah
add esp, 0
btc esi, edi
stc
jmp 0x517e33
bsf edi, eax
xchg edx, ecx
lea edi, [ecx*4]
xchg byte [esp], ch
cmp bh, ch
inc si
jmp 0x517f42
cmc
bt cx, bx
call fcn.00517f13
mov ecx, dword [esp + 3]
mov bx, ax
lea esp, [esp + 9]
pop dword [esp]
jmp 0x517f8d
mov bh, 0x49
xchg cx, ax
lea edi, [edi - 0xf7]
bsf ax, ax
jmp 0x517fe0
xchg bx, dx
xchg word [esp + 1], bx
clc
neg esi
rol cl, 5
pop edi
jmp 0x517f77
mov cx, word [esp]
mov ecx, 0xf0f85d80
rdtsc
xchg al, ch
neg si
jmp 0x519a98
bsr eax, ebp
rol ax, cl
bswap ebp
bswap edi
mov di, si
rdtsc
jmp 0x517fca
mov bx, word [esp]
mov cx, dx
rdtsc
lea esp, [esp]
jmp 0x51805e
rdtsc
mov edi, 0xf4fec820
lea esi, [eax*4]
mov byte [esp], al
lea esi, [ebp - 0xdf]
shr edx, cl
jmp 0x517ff1
xchg cl, bl
push word [esp + 6]
xchg ebx, edx
lea eax, [ebx*4]
jmp 0x5180f1
rcr ebp, 0x18
add esp, 0
neg di
bswap esi
lea edi, [esi + edi]
sub esp, 0xb
jmp 0x518022
lea edx, [eax + 0xc9]
xchg cl, dh
lea esp, [esp]
mov byte [esp], dl
shr eax, cl
mov byte [esp], ch
jmp 0x518038
pop word [esp + 6]
xchg bh, al
mov dword [esp + 4], edi
mov dword [esp + 1], edx
mov dword [esp + 2], edi
rdtsc
call fcn.00518073
lea eax, reloc.KERNEL32.dll_GetProcAddress
xchg dword [esp + 0xa], esi
call fcn.005180d3
push edx
je 0x518121
push ebp
outsb dx, byte [esi]
ja 0x518122
outsb dx, byte [esi]
add byte fs:[esi + 0xf], ah
mov ebx, 0xafed80cb
btc bx, cx
sub ch, 0xaf
pop di
mov cx, word [esp + 5]
or ah, 0x87
xchg dword [esp + 7], ecx
jmp 0x518089
xchg word [esp + 2], si
not ax
push word [esp + 0xc]
xchg word [esp + 7], di
ror al, cl
neg eax
jmp 0x5180bc
neg dh
xchg byte [esp + 0xe], dh
pop dword [esp + 4]
mov bl, 0xd
jmp 0x518135
and al, 6
push es
bsf ebx, edx
mov al, byte [esp + 0x10]
mov cl, byte [esp + 1]
std
push dword [esp + 0xb]
jmp 0x518109
mov ecx, 0x872499d
mov si, 0x556b
mov byte [esp + 1], dl
mov byte [esp + 6], ch
bsf dx, dx
lea esp, [esp + 0xb]
jmp 0x518183
dec dl
xchg edi, eax
dec dh
xchg ah, bh
lea esp, [esp + 1]
mov edi, ecx
jmp 0x518007
pop word [esp + 1]
pop word [esp + 2]
dec bh
jmp 0x518195
mov dx, word [esp + 7]
xchg bx, di
sete al
pop ax
bswap edx
std
jmp 0x51816d
mov cx, 0x75f8
sub esp, 0x16
mov dword [esp + 0xc], edi
lea esp, [esp + 0xa]
bts di, bp
not dx
jmp 0x5181f1
lea esp, [esp + 1]
mov ebp, 0x60ccb133
mov word [esp + 1], bp
mov ebx, dword [esp + 2]
xchg dword [esp], ebp
pop cx
jmp 0x51815b
setne ch
xchg dl, cl
pushal
cld
adc cx, 0x86db
mov edx, dword [esp + 8]
jmp 0x51821c
adc bx, 0xb8d1
lea esp, [esp + 9]
cpuid
shr bl, 0
push si
setge cl
jmp 0x5181d0
inc al
mov cx, word [esp + 0x14]
mov ecx, esi
xchg cl, ah
xchg edx, edi
jmp 0x518245
xchg byte [esp + 9], dh
mov word [esp + 0x1f], bp
sub ch, ch
pop esi
add esp, 0xf
xchg ebx, ebp
jmp 0x518206
mov di, word [esp + 5]
call fcn.0051825e
push esi
imul esi, dword [edx + 0x74], 0x466c6175
jb 0x5182a8
add byte gs:[ecx - 0x3ab2697e], bh
mov ecx, 0xc54d9682
lea edi, [edx*4]
rcl ebx, 4
lea edx, [ecx + esi]
neg esi
xchg byte [esp], dh
jmp 0x51822f
mov esi, dword [esp + 7]
mov cl, byte [esp + 0x22]
not bh
neg dx
mov ebp, esi
popal
jmp 0x5181b7
lea edx, [edx - 0x2b]
mov dword [esp], esi
cld
mov bh, dl
rdtsc
mov ax, word [esp + 0x10]
jmp 0x5182e4
jb 0x51831e
jne 0x51830d
insb byte es:[edi], dx
inc ecx
insb byte es:[edi], dx
insb byte es:[edi], dx
outsd dx, dword [esi]
arpl word [eax], ax
pop ecx
mov bl, 0x29
xchg byte [esp + 0x21], al
lea eax, [ebx*4]
bsr cx, ax
xchg word [esp + 0x27], bx
rdtsc
jmp 0x518294
neg edi
xchg dx, ax
lea esi, [edi*4]
jmp 0x51830d
ror bx, cl
mov edx, 0xbd8e2e12
std
pop edx
add esp, 3
lea esp, [esp + 0x15]
jmp 0x5182ce
setb dl
mov word [esp + 3], dx
mov ebx, 0x23e2a4de
bsr edi, ebp
jmp 0x5183aa
lea edi, [eax*4]
pop bp
mov dx, bx
bsr dx, sp
push dword [esp + 0xc]
mov byte [esp + 6], ah
je 0x518344
or al, 0x88
and al, 6
jmp 0x5182f7
and al, 0xe
jmp 0x5182b4
mov di, word [esp]
mov dh, 9
lea ebx, [eax + eax]
shl edi, cl
mov dh, byte [esp + 2]
jmp 0x51838e
push bp
mov bx, word [esp + 0xe]
rdtsc
mov bp, word [esp + 0xb]
mov ecx, dword [esp + 0x12]
add esp, 0x10
jmp 0x51834b
mov dword [esp + 3], ecx
push dword [esp + 1]
lea esp, [esp + 9]
call fcn.005183db
inc ebx
cli
aad 0x44
test dword [ebx + reloc.KERNEL32.dll_GetProcAddress], 0x8b66c4bd
insb byte es:[edi], dx
and al, 0xb
sub esp, 5
bsr ax, sp
mov bp, word [esp + 0xb]
mov bp, word [esp + 0xa]
add esp, 2
jmp 0x518378
mov word [esp + 5], cx
mov ax, word [esp + 0xc]
bswap edx
bsf cx, di
push word [esp + 0xa]
mov dword [esp + 3], esi
jmp 0x518361
mov dh, 1
sub esp, 0xc
mov bl, 0x5e
sub esp, 0x19
lea ecx, reloc.KERNEL32.dll_GetProcAddress
mov ah, 0xab
jmp 0x51827f
lea esi, [edi*4]
mov eax, 0x1aa8c341
xchg bx, bp
cpuid
mov si, cx
bswap esi
jmp 0x518464
mov dl, byte [esp]
not eax
mov ch, 0xfa
cld
mov cl, dh
mov edx, 0x929a0317
jmp 0x518685