Function at 0x5d5f83
Capabilities:
Parse pe header

Disassembly:
ret 0x829c
pushal
pop word [esp + 0xd]
call fcn.005d2d8a
lea esp, [esp + 0x1b]
mov esi, dword [esp + 5]
cld
xchg byte [esp + 3], al
inc bp
rdtsc
jmp 0x5d2f64
inc dword [eax + 0x4b7016]
pushfd
sub esp, 8
push dword [esp + 2]
sub esp, 0xc
jmp 0x5d2eef
mov cx, 0xf389
mov edi, dword [esp + 1]
call 0x5d2f47
and si, 0xfe02
sub esp, 0xa
call 0x5d2fcb
sbb dword [edi + 0x38817217], eax
mov edx, 0xe9500495
mov dword [0xb5000000], eax
bswap ecx
xchg word [esp + 5], bx
add esp, 4
mov bh, byte [esp + 0xa]
inc dl
jmp 0x5d2fdc
push eax
jmp 0x5d3030
mov dword [esp + 4], eax
mov al, ah
mov al, ah
stc
push esp
lea esp, [esp + 3]
jmp 0x5d4088
mov cx, word [esp + 4]
mov dl, dh
btr eax, esp
and cl, bh
pushal
jmp 0x5d3096
not ah
xchg edx, eax
lea esi, [eax - 0x29]
not ch
mov al, ah
sete bh
jmp 0x5d2ff0
pop dword [esp + 1]
lea ebx, [ecx + 0x2b34cdcb]
mov edi, dword [esp + 0xa]
lea ecx, [eax + ebx]
bswap ecx
mov word [esp + 2], bx
jmp 0x5d307c
call 0x5d3035
jmp 0x5d3f2b
lea eax, [edx*4]
add bp, 0xb0a6
mov dx, bx
neg dx
mov ecx, 0x54d3ad5c
mov esi, dword [esp + 6]
jmp 0x5d3016
neg ch
pop si
mov word [esp], di
xchg bp, si
ror bh, 3
cpuid
jmp 0x5d30ca
mov dword [esp + 3], ecx
setle bh
xchg byte [esp + 4], bl
lea edi, [esp + ebx]
pop dword [esp]
add esp, 3
jmp 0x5d305e
mov ebx, 0x6460e330
add esp, 0xe
pop dword [esp + 1]
inc dl
xchg ah, bl
lea esp, [esp + 4]
jmp 0x5d3041
xchg word [esp + 0x15], bx
lea esp, [esp + 0x15]
cpuid
xchg dh, al
bsr di, cx
xchg dword [esp], ebp
jmp 0x5d3de5
mov bp, bx
pushal
pop esi
mov esi, dword [esp + 0x11]
bswap edi
pop dword [esp + 6]
jmp 0x5d30ac
lea edi, [edx + esi]
mov edx, 0x278acbe
stc
mov si, word [esp]
mov bp, dx
push esp
jmp 0x5d3006
rdtsc
call 0x5d3144
clc
inc edx
push dword [esp + 0x14]
btr eax, edx
add al, dh
inc cx
jmp 0x5d3b1f
setno ah
mov word [esp + 5], dx
add esp, 0x1b
neg bp
bswap edi
jmp 0x5d3b00
xchg esi, edx
xchg bp, dx
cmc
xchg word [esp + 3], dx
xchg dword [esp], ecx
xchg cx, si
jmp 0x5d3b51
xchg dh, al
xchg dh, al
xchg byte [esp + 2], bl
lea ebx, [ebp + 0x9f]
lea ebp, [esi*4]
inc si
jmp 0x5d3ae1
push word [esp + 2]
xchg ah, bl
xchg dword [esp], ebx
mov cx, word [esp + 7]
call fcn.005d3af7
btr ecx, edx
cpuid
xchg ah, bl
xchg dh, al
add esp, 1
jmp 0x5d3bbd
btr ebp, edx
rdtsc
mov ax, 0x4c33
mov byte [esp + 7], ch
pop word [esp + 1]
jmp 0x5d3b3d
mov di, 0xdb29
mov eax, dword [esp + 6]
push word [esp + 2]
not edx
mov ebx, 0x9fe73b12
xchg dword [esp + 3], ebx
jmp 0x5d3b69
push dword [esp + 0x11]
sub esp, 4
mov ax, word [esp + 0x1c]
not cx
push edx
xchg si, di
jmp 0x5d3c29
lea edx, [edx*4]
bsf cx, si
mov esi, 0xc365c8b4
sub eax, eax
sub esp, 0x1c
jmp 0x5d3b9d
pop word [esp + 1]
push word [esp]
lea ecx, [ecx*4]
xchg word [esp + 4], ax
mov ax, 0x3743
xchg word [esp + 2], si
jmp 0x5d3b83
xchg bh, cl
not bh
neg eax
pop dword [esp + 3]
mov edi, 0xc72c26e0
clc
jmp 0x5d3c64
cpuid
not bh
add esp, 0xb
cpuid
rdtsc
mov ah, byte [esp + 7]
jmp 0x5d3bf8
inc cx
not ah
mov word [esp + 0x26], dx
xchg word [esp + 0x17], di
jl 0x5d3c5a
pop ss
lea esp, [esp + 0xd]
pop word [esp + 0xf]
jmp 0x5d3c11
xor eax, 0x7819891d
mov edi, dword [eax + ebp*4]
retf
xchg dh, al
push dword [esp + 5]
call 0x5d3c42
mov byte [0x8c27d48d], bl
cli
outsb dx, byte [esi]
cld
wait
jbe 0x5d3c3b
inc esi
jno 0x5d3cef
jae 0x5d3c34
cwde
mov dl, dh
mov al, ah
rol dx, cl
rdtsc
push edx
jmp 0x5d3bd8
xchg edx, esi
inc ecx
call fcn.005d3c91
lea edi, [eax + 0x89]
lea edi, [eax*4]
mov eax, ebp
mov bx, dx
neg ax
setg dh
jmp 0x5d3d27
mov dl, dh
mov word [esp + 0x33], di
btc esi, ebx
cpuid
jmp 0x5d3cae
pop dword [esp + 0xe]
mov dword [esp + 0xf], esi
sub esp, 2
lea ebx, [ebp + 0xbf]
add esp, 0x1d
lea esp, [esp + 3]
jmp 0x5d3d68
bsr dx, cx
mov eax, esi
mov dl, 0xd4
xchg si, di
pushal
push dword [esp + 0x1c]
jmp 0x5d3cfd
mov ebx, ebp
mov al, 0x96
call fcn.005d3d4f
pop word [esp]
stc
lea ebx, [edx + edi]
sub esp, 0xe
bswap eax
pop dword [esp + 1]
jmp 0x5d3acb
pop eax
sub eax, 0x5d3035
jmp 0x5d3f62
popal
jmp 0x5d10a3
cmp dword [eax + 0x4b7016], 0
je 0x5d2f34
lea esp, [esp + 8]
jmp 0x5d3f4b
mov si, 0xb973
cpuid
lea esp, [esp + 9]
add esp, 2
cpuid
neg dh
jmp 0x5d30e3
call 0x5d5010
jmp 0x5d60d5
movzx ebx, word [eax + 0x3c]
jmp 0x5d6077
mov word [esp + 4], di
mov word [esp + 6], sp
jmp 0x5d5f09
pop dword [esp + 0x12]
mov word [esp + 0x22], dx
lea esp, [esp + 2]
mov dword [esp + 0x68], ebx
pushal
mov byte [esp + 0xf], dh
jmp 0x5d5f3d
push word [esp + 0x15]
pop word [esp + 0x13]
mov dword [esp + 0x15], ecx
push dword [esp + 0x1a]
push word [esp + 0x23]
call int.005d641b
jecxz 0x5d5f75
lea esp, [esp + 3]
call fcn.005d5efe
push esp
lea esp, [esp + 1]
lea esp, [esp + 2]
lea esp, [esp]
pushal
push word [esp + 0x1b]
jmp 0x5d5fac
sbb ebp, ebx
xor al, 0x69
cmc
or al, 0xff
jp 0x5d5fe3
xchg edi, eax
dec cl
push 0xff24048f
je 0x5d5fad
add cl, byte [ecx - 0x1493db8c]
aam 0x8b
setg dl
or ebx, eax
and esp, dword [eax + 0x46a05136]
pop ebp
lodsb al, byte [esi]
mov dword [esp + 0x68], ebp
push edx
mov word [esp], sp
call 0x5d5f83
mov word [esp + 0x1e], dx
mov dword [esp + 0x1e], edx
call fcn.005d5fde
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
jmp 0x5d6010
mov esp, 0x8c24
add byte [ebp + 0x8c24a4], cl
add byte [eax], al
jmp 0x5d5fb6
mov eax, dword [eax + 0x1c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
jmp 0x5d614d
sub eax, 0x10000
jmp 0x5d60d9
add ebx, eax
cmp word [ebx], 0x4550
je 0x5d2f87
jne 0x5d605e
ret 0xdc4e
pop eax
xor ax, ax
cmp word [eax], 0x5a4d
je 0x5d50ae
jne 0x5d605e
dec ecx
rol byte [esi + 0x21], 1
rcl byte [edi - 0x2f]
dec ebp
frstor dword [edi + edx*2 + 0x4cde5cd2]
sub esp, esi
xor ch, byte [esi + 0x35c6a333]
aad 0xb4
xor al, 0xaa
int 0x3c
frstor dword [edx + 0x23d0b121]
ret
push eax
jmp 0x5d500b