Function at 0x421d4c
Capabilities:
Get number of processors
Parse pe header

Disassembly:
aaa
inc ecx
add byte [edi + 0x39], ch
dec ecx
push 0x30436446
add byte [ebx + 0x66], dh
dec esp
inc ebx
push 0x37
jno 0x421dad
add byte [edi], ch
pop edx
push edx
dec ebp
pop ecx
jp 0x421db4
outsd dx, dword [esi]
add byte [edi + eax*2 + 0x5a], cl
xor dword [edx + 0x4c], ecx
inc ebp
xor eax, 0x6f343000
push esp
dec ecx
inc edx
xor dword [eax], edx
ja 0x421de3
cmp byte [esi + 0x39], ch
jne 0x421df7
je 0x421d85
xor al, 0x67
cmp dword [edx + 0x4b], eax
cmp dword [ebx + 0x35], edx
add byte [esi + 0x62], al
dec ebp
popal
jp 0x421dfa
inc esi
xor dword [eax], eax
inc ebp
push edi
xor ch, byte [edi]
inc ecx
inc ebx
inc edi
add byte [eax + 0x32], bl
dec esi
inc ebp
inc ecx
push ecx
inc ecx
jns 0x421da9
jb 0x421e1e
pop edx
outsb dx, byte gs:[esi]
outsb dx, byte [esi]
cmp byte [ebx + 0x31], cl
add byte [eax + 0x6e], bl
imul esi, dword gs:[esi + 0x72], 0x47
jbe 0x421e2a
inc edi
add byte ss:[edi + 0x6f], dh
sub esi, dword [esi]
push 0x50
xor dl, byte [ebp]
push esp
add byte [edi + edx*2 + 0x45], dl
push edi
inc ebp
insb byte es:[edi], dx
cmp dword [eax + edi*2 + 0x78], eax
js 0x421e44
add byte [esi + 0x45], al
push eax
dec edi
pop eax
dec esp
inc ebx
arpl word [eax], ax
inc ecx
xor edi, dword [ecx]
cmp byte [ebx + 0x4c], cl
dec esi
add byte [ebp + 0x2f], dl
jp 0x421e55
dec edx
dec ecx
push eax
add byte [ecx + 0x53], dl
jbe 0x421e41
jne 0x421e40
bound ebp, qword [eax]
inc esp
dec eax
push 0x4b416e59
inc ecx
dec ebx
add byte [edi + 0x44], dh
ja 0x421e40
inc esp
imul eax, dword [ebp + 0x38], 0x38
add esp, edi
rdpmc
jo 0x421e54
js 0x421e80
je 0x421e0d
push edi
push esp
jno 0x421e81
jne 0x421e78
cmp byte [ebx + 0x38], al
xor eax, 0x4cbf4a70
jg 0x421db6
jb 0x421db8
cdq
xor dword [0x7f4cbfdf], esi
cdq
jg 0x421dc1
jg 0x421dc3
jg 0x421dc5
jg 0x421dc8
jl 0x421dca
add byte [edx + 0x77], al
js 0x421e68
dec esp
outsb dx, byte [esi]
jb 0x421e3b
inc edx
das
cmp byte [ecx + 0x73], ah
push edi
push 0x46410064
inc ecx
inc esi
bound eax, qword [ecx + 0x75]
jno 0x421e80
jbe 0x421e4d
jp 0x421ec2
jp 0x421eb8
js 0x421ead
inc edi
add byte [ecx + 0x38], ch
dec ebx
pop ecx
ja 0x421eb6
jae 0x421ed0
add byte [esi + 0x4b], ch
insb byte es:[edi], dx
dec esp
arpl word [ebp + 0x54], sp
xor eax, dword [eax]
inc ecx
pop ecx
dec esi
pop ecx
jns 0x421ebd
xor dword [eax], edi
xor al, 0x6e
cmp byte [edx + 0x62], bh
push 0x46
push ebx
add byte [ecx + 0x6d], dl
push esp
sub ebp, dword [ebx]
insd dword es:[edi], dx
sub eax, dword fs:[eax]
sub eax, dword [eax]
bound esi, qword [esi + 0x34]
push ebx
js 0x421ed7
jp 0x421ebb
add byte [ebx + 0x6b], cl
xor dh, byte [ebx]
inc edx
inc edi
inc edx
add byte fs:[ebx + 0x56], cl
arpl word [edx + 0x7a], cx
ja 0x421ee4
aaa
add byte [ebp + 0x4c], al
inc ebp
pop eax
push ecx
inc edx
push edi
add byte [edi + 0x4c], dh
jno 0x421f20
bound esi, qword [0xbff3516a]
dec esp
mov edi, 0x3f2c33aa
push 0x51
mov edi, 0x33aabf4c
sub al, 0x3f
aas
adc dword [edi - 0x42554056], edi
mov edi, 0xbdaabfaa
stosb byte es:[edi], al
mov ebp, 0x7bbf0baa
mov edi, 0xaabf65aa
popal
inc ecx
cmp byte [edx], dh
stosb byte es:[edi], al
or edi, dword [edi + 0x65aabf7b]
mov edi, 0x384161aa
stosb byte es:[edi], al
mov edi, 0x384161aa
jb 0x421ecb
popal
inc edi
bound esi, qword [edi]
ja 0x421f0a
cmp dword [esi + 0x7a], esp
add byte [esi + 0x57], ch
jp 0x421ed4
outsb dx, byte [esi]
push edi
imul esp, dword [edx + 0x4f], 0x587a35
xor esp, dword [edx + 0x73]
dec eax
bound ecx, qword [edi + 0x35]
jp 0x421f34
add byte [ebx], dh
bound esi, qword [ebx + 0x48]
jae 0x421f2e
dec esi
aaa
add byte [ebx + ebp*2 + 0x50], cl
inc ebp
outsb dx, byte [esi]
bound esi, qword [edi]
jp 0x421eef
inc ebp
inc edi
jne 0x421f34
dec esi
dec esi
insb byte es:[edi], dx
xor dword [eax], eax
aaa
push eax
pop ecx
dec ecx
sub ebp, dword [ebp + 0x52]
popal
add byte [edx], dh
pop eax
jo 0x421f71
inc edi
xor al, byte [eax]
imul ebp, dword [ecx + 0x48], 0x4665396e
xor al, 0
dec ebp
inc ebp
js 0x421f60
jbe 0x421f6c
inc edi
xor dword [ebx], esi
jno 0x421f65
add byte ss:[ebp + 0x52], ch