Function at 0x5a848e
Capabilities:
Execute anti-debugging instructions

Disassembly:
xchg byte [esp + 2], bl
push word [esp + 3]
mov dl, dh
sub esp, 8
mov byte [esp + 1], bh
jmp 0x5a84cd
lea esp, [esp]
add ebp, ebp
mov bx, word [esp + 0xa]
xchg dword [esp + 7], edi
btc edi, ebx
jmp 0x5a8889
mov dh, byte [esp + 5]
xchg ch, dl
bswap eax
setge dh
mov ebx, ecx
xchg ch, dl
jmp 0x5a84a2
mov edx, ebp
setne ch
lea ebx, [ebx*4]
pop dword [esp + 0x12]
jmp 0x5a8544
lea esp, [esp + 6]
sete bh
inc ebp
pushal
push dword [esp + 0x22]
mov si, word [esp + 6]
jmp 0x5a8501
btr ebx, esp
pop cx
rdtsc
bsf di, ax
cpuid
lea eax, reloc.USER32.dll_MessageBoxA
jmp 0x5a8517
xchg word [esp + 0x1b], bp
xchg byte [esp + 0x14], bl
bswap esi
xchg ah, bl
xchg dword [esp], edx
stc
jmp 0x5a8749
bsf ax, ax
pop ecx
shr ecx, 0xb
xchg dh, al
cpuid
sub esp, 0xa
jmp 0x5a852f
rdtsc
call 0x5a86bc
rcr ebx, 0xd
lea ebp, [edx + ebp]
neg esi
btr eax, esp
mov esi, dword [esp]
mov cl, ch
jmp 0x5a8627
rdtsc
pushal
bsf dx, ax
pop word [esp + 0x19]
mov dl, dh
stc
jmp 0x5a857a
mov ebx, 0xaf5f62c2
mov bx, 0xb651
mov bp, word [esp]
rcr ecx, 0xd
mov al, ah
pushal
jmp 0x5a85a4
mov cl, byte [esp]
setne bh
setg bh
neg dh
mov si, word [esp]
inc cx
jmp 0x5a864f
mov si, word [esp]
inc ax
not bx
lea eax, [edx + ebx]
xchg edi, eax
xchg ah, bl
jmp 0x5a85d1
bsf bp, si
clc
clc
setae ah
xchg ebx, edx
xchg ecx, eax
jmp 0x5a85ea
btc edi, ebx
cpuid
mov ecx, eax
xchg dh, al
bsr di, cx
xchg cx, ax
jmp 0x5a8607
mov bx, 0x8453
not bh
mov edi, ecx
mov ebx, 0x20ccde24
mov esi, eax
jmp 0x5a869a
pushal
xchg dword [esp + 0x12], eax
mov al, 0x9e
add esp, 0xb
not ch
mov eax, 0x53bbc126
jmp 0x5a8638
push word [esp + 0x11]
neg ah
mov dword [esp + 9], ebp
cpuid
lea ebp, reloc.USER32.dll_MessageBoxA
mov ah, byte [esp]
jmp 0x5a86e5
sub esp, 4
mov ch, byte [esp + 0xe]
pop dword [esp + 0xf]
xchg edi, ebp
pop word [esp + 5]
jmp 0x5a8662
xchg word [esp], di
mov dword [esp + 0xf], ecx
xchg esi, ecx
not bp
setl dh
mov edi, dword [esp + 0xd]
jmp 0x5a867f
lea esp, [esp + 0x10]
btc eax, ebx
xchg dword [esp], ecx
lea esi, [eax*4]
jmp 0x5a8731
inc edi
xchg dword [esp + 0x10], ecx
mov ebx, 0x94f27784
mov ebp, dword [esp]
mov byte [esp + 9], bh
jmp 0x5a86ce
pushal
lea esp, [esp + 0x43]
sub esp, 0
clc
xchg ecx, eax
mov edi, dword [esp]
jmp 0x5a85bc
mov ebx, ebp
add al, dh
and di, 0xca8a
mov dword [esp], ebp
pop si
push word [esp + 2]
jmp 0x5a885e
lea eax, reloc.USER32.dll_MessageBoxA
rdtsc
rdtsc
xor ecx, esi
mov dword [esp], eax
mov cx, di
jmp 0x5a8712
mov byte [esp + 9], ah
mov dl, dh
bsr dx, bp
xchg bp, cx
mov dword [esp + 0x16], esi
mov word [esp + 0x17], bx
jmp 0x5a86ff
setl bh
lea esp, [esp + 1]
pop word [esp + 5]
mov bh, byte [esp + 0xb]
xchg edi, eax
cld
jmp 0x5a87de
xchg ah, bl
lea ebp, [eax + edx]
btc edi, edi
lea ebx, [esi*4]
jmp 0x5a8761
mov bh, byte [esp + 1]
push word [esp + 0xd]
bsf si, si
bsf bp, ax
xchg dword [esp + 3], ebx
pop dword [esp + 9]
jmp 0x5a877b
bswap ecx
pop dword [esp + 2]
pop word [esp + 5]
xchg dword [esp + 0xa], ebx
mov bx, dx
not ch
jmp 0x5a8839
mov dx, word [esp + 6]
setg dh
push dword [esp]
setno dh
mov ebx, ecx
jmp 0x5a87ad
mov word [esp + 0xe], di
mov bp, 0x23bd
mov dword [esp + 7], esi
mov edx, dword [esp + 0xd]
bswap ebp
cmc
jmp 0x5a87c7
rcr ebx, 0x15
xchg byte [esp], cl
mov bx, di
xchg byte [esp], dl
mov di, 0xeabb
sub esp, 0x1c
jmp 0x5a8871
mov byte [esp + 7], ah
mov bx, word [esp]
xchg esi, edx
pop word [esp + 3]
add esp, 0xd
add esi, ebp
jmp 0x5a87f4
pop bx
cpuid
cld
not dx
xchg word [esp + 0xd], si
mov dh, byte [esp + 7]
jmp 0x5a881a
mov edi, eax
sub esp, 4
inc dl
sub esp, 0x10
inc cl
mov al, 0x8e
jmp 0x5a8792
push dword [esp + 0x1c]
lea eax, [esp + esi]
lea ebx, [ebp - 0x3f]
not bh
xchg word [esp + 2], di
jmp 0x5a8a8b
lea esp, [esp + 5]
cpuid
lea esp, [esp + 5]
mov di, 0x4891
rdtsc
bsf si, si
jmp 0x5a8569
cmc
btc esi, ebx
rdtsc
not bx
lea ebp, [ecx + ebx]
inc esi
jmp 0x5a88b5
mov edx, dword [esp + 0x18]
mov ebp, 0x1bae6d10
not bx
lea ebp, [esp + edi]
jmp 0x5a8949
push word [esp + 0x11]
mov word [esp + 0x12], sp
bswap eax
pop ax
mov dword [esp + 0x17], ecx
neg si
jmp 0x5a88a2
mov cl, ch
setne bh
xchg di, ax
inc al
pop di
cmc
jmp 0x5a892e
mov ecx, esi
bsf di, si
mov dl, 0xcc
pop edi
cpuid
pop dword [esp]
jmp 0x5a88e3
mov edi, dword [esp]
mov byte [esp], ah
cpuid
sete ah
mov ch, byte [esp]
setl dh
jmp 0x5a8a47
pop dx
not dh
lea esp, [esp]
mov bh, byte [esp]
bsr cx, bp
and eax, ecx
jmp 0x5a890a
btr ebp, edx
bsf si, ax
mov cx, dx
add esp, 0x12
mov dl, dh
xchg edx, esi
jmp 0x5a88fa
pop word [esp]
mov byte [esp + 1], bh
xchg word [esp], bx
xchg bh, cl
inc bp
setp bh
jmp 0x5a89e5
mov dh, byte [esp + 1]
lea ebx, [ecx + edi]
setne bh
mov edx, ebp
lea ebp, [edx + edx]
rdtsc
jmp 0x5a895c
lea ebp, reloc.USER32.dll_MessageBoxA
sete ch
pop ax
ror ebx, 9
lea ecx, [esp + eax]
push edx
jmp 0x5a89c8
neg ebx
lea esp, [esp + 1]
lea ebp, [esp + edx]
stc
lea ecx, [esi + edi]
inc edx
jmp 0x5a8995
neg cx
lea ebp, reloc.USER32.dll_MessageBoxA
not bh
cmc
xchg dh, al
not bh
jmp 0x5a8a2c
bsr dx, bp
xchg dh, al
lea esi, [eax - 0x29]
mov ebx, dword [esp]
mov dh, byte [esp + 2]
btr edx, edx
jmp 0x5a89b8
mov dx, sp
call fcn.005a8a74
outsb dx, byte [esi]
in al, dx
bound eax, qword [0xf978b6f4]
imul ecx, dword [eax], reloc.USER32.dll_MessageBoxA
xchg edx, eax
or eax, 0x83cb0f9c
les eax, [eax]
bswap ebx
add esp, 0
mov cl, ch
bswap edi
bswap ecx
cmc
jmp 0x5a89fa
xchg ch, dl
xchg ch, dl
xchg word [esp + 1], di
lea esp, [esp + 3]
mov di, 0x9355
btc esi, ebx
jmp 0x5a8a13
btc eax, edi
cpuid
push edx
bsf ax, si
xchg bp, si
mov ax, di
jmp 0x5a8982
lea esp, [esp + 2]
bsf bx, si
lea eax, [ecx + edi]
setl dh
bsr dx, cx
bsr bp, bp
jmp 0x5a88cc