Function at 0x10045131
Capabilities:
Get number of processors

Disassembly:
pop ecx
dec ecx
dec ebx
imul esi, dword [0x5a57597a], 0x566e626c
jp 0x10045192
push edi
pop edx
insb byte es:[edi], dx
bound ebp, qword [esi + 0x56]
ja 0x1004518d
insd dword es:[edi], dx
jbe 0x100451a7
xor ah, byte [ebx + esi*2 + 0x5a]
pop eax
dec esi
push 0x69526d62
bound esi, qword [ebx]
je 0x100451ae
xor dh, byte [esi*2 + 0x74393259]
xor byte [bx + di + 0x4c], dh
insd dword es:[edi], dx
jp 0x100451c9
inc edi
inc esi
xor byte [ecx + 0x57], ah
dec ebp
jne 0x100451c6
xor bh, byte [ecx]
je 0x100451d8
push 0x6d4c7151
xor dword [esp + 0x48], ebp
dec edx
jo 0x100451d6
jns 0x100451b4
outsb dx, byte [esi]
arpl word [ebx], si
push edx
push 0x6a6c4764
dec esp
insd dword es:[edi], dx
dec esi
jbe 0x100451ef
pop ecx
dec ecx
dec ebx
dec ebx
imul esi, dword [0x516e646e], 0x4e6d4c78
js 0x100451e5
insd dword es:[edi], dx
dec esi
jbe 0x100451ff
pop ecx
dec ecx
push edx
dec ebx
imul esi, dword [0x4233596e], 0x34475a6a
jne 0x10045207
push 0x5a
inc edi
xor al, 0x75
pop edx
xor ebx, dword [edx + 0x30]
dec ebp
push ebx
pop edx
xor byte [ebp + 0x53], cl
xor eax, 0x3232626a
inc ebx
inc ebx
bound esi, qword [edx]
xor al, byte [ebx + 0x43]
imul ebp, dword [edi + 0x75], 0x305a335a
dec ebp
imul esi, dword [0x3232626a], 0x6f694443
jne 0x10045227
xor al, byte [ebx + 0x44]
imul ebp, dword [edi + 0x75], 0x774e325a
xor cl, byte [esi + 0x77]
dec esp
insd dword es:[edi], dx
xor ah, byte fs:[esp + eax*2 + 0x49]
dec ecx
jne 0x10045232
pop ecx
xor bh, byte [ecx]
je 0x10045244
push 0x6e4c7141
push esi
jns 0x10045247
inc ebx
xor eax, 0x3932626e
outsb dx, byte [esi]
bound eax, qword [edi + 0x55]
jne 0x1004524a
xor bh, byte [ecx]
je 0x1004525c
push 0x6e4c7159
insb byte es:[edi], dx
jbe 0x10045261
pop eax
push edx
xor dword [ecx + 0x6d], ebx
push ebp
je 0x10045267
insd dword es:[edi], dx
cmp dword [edx + 0x62], ebp
push 0x62
xor bh, byte [ecx]
jb 0x1004526e
push edi
push ebp
jne 0x1004526a
xor bh, byte [ecx]
je 0x1004527c
jae 0x10045289
dec esp
outsb dx, byte [esi]
insb byte es:[edi], dx
xor byte [ecx + 0x57], ah
xor dword [esi + 0x4c], ebp
insd dword es:[edi], dx
dec esi
jbe 0x10045287
pop ecx
dec ecx
dec esp
pop ecx
push edi
xor eax, 0x396d636b
jo 0x1004528b
inc ebx
xor eax, 0x3232626a
inc ebx
inc esp
push ebx
outsd dx, dword [esi]
jne 0x10045296
push edi
xor eax, 0x396d636b
jo 0x1004529f
pop edx
inc ebx
xor eax, 0x3232626a
push 0x62
xor dh, byte [edx]
xor al, byte [ebx + 0x45]
inc ebx
inc ebp
jns 0x100452be
jne 0x100452ab
insd dword es:[edi], dx
js 0x100452bc
arpl word [edx], si
jne 0x100452b2
push edi
xor eax, 0x396d636b
arpl word [ebp + 0x39], bp
jo 0x100452bb
inc ebx
xor eax, 0x3232626a
inc ebx
inc edx
inc edi
arpl word [ebp + 0x59], si
xor dh, byte [esi]
inc ebx
inc ebx
inc edx
imul ebp, dword [edi + 0x75], 0x6a35795a
bound ebp, qword [edi + 0x49]
inc ebp
pop edx
jns 0x100452b4
push 0x62
xor al, 0x49
inc edi
dec ebx
imul esi, dword [0x4e6d4c6e], 0x5a676776
outsb dx, byte [esi]
dec esp
insd dword es:[edi], dx
dec esi
jbe 0x100452f4
pop edx
outsb dx, byte [esi]
bound esi, qword [edx]
cmp byte [ebp + 0x5a], dh
xor bh, byte [ecx + 0x43]
jns 0x100452db
inc ebx
outsb dx, byte [esi]
xor esp, dword fs:[ecx + edi*2 + 0x35]
outsb dx, byte [esi]
bound esi, qword [edx]
cmp byte [ebp + 0x5a], dh
xor bh, byte [ecx + 0x43]
inc esi
inc edi
jbe 0x1004530f
invalid
jbe 0x1004530f
xor ah, byte [ebx + esi*2 + 0x5a]
push ebx
xor dword [eax + 0x62], ebp
insd dword es:[edi], dx
inc esi
bound ebp, qword [ebp + 0x46]
jae 0x1004531e
pop eax
push edx
jo 0x10045316
pop ecx
xor ecx, dword [ebp + 0x75]
pop ecx
dec ebp
jne 0x1004531a
xor bh, byte [ecx]
je 0x1004532c
push 0x6d4c7159
jbe 0x1004532f
xor ah, byte [ebx + esi*2 + 0x5a]
push ebx
xor dword [eax + 0x62], ebp
insd dword es:[edi], dx
inc esi
jae 0x1004533e
pop eax
push edx
jo 0x10045336
xor ecx, dword [ebp + 0x75]
pop ecx
xor bh, byte [ecx]
je 0x1004534c
jo 0x10045356
bound esi, qword [edx]
push 0x32626e4a
cmp dword [esi + 0x62], ebp
inc edi
push esi
push 0x62
xor dh, byte [ecx]
je 0x1004535f
pop eax
dec edx
push 0x5a
push ebx
xor eax, 0x3232626a
inc ebx
inc esi
inc ebx
outsd dx, dword [esi]
jne 0x1004536f
xor bh, byte [ecx]
jbe 0x10045373
cmp dword [esi + 0x5a], esi
xor bh, byte [eax + 0x6c]
js 0x10045388
pop ecx
xor bh, byte [ecx]
je 0x10045383
cmp dword [edx + 0x57], esi
push edi
push esi
jns 0x1004537e
xor dl, byte [ebp + 0x75]
pop ecx
xor bh, byte [ecx]
je 0x10045394
push 0x42335a6e
push 0x42335a6e
outsb dx, byte [esi]
pop edx
xor eax, dword [edx + 0x6f]
outsd dx, dword [esi]
inc ebx
xor eax, 0x496f626a
dec ebx
dec ebx
imul esi, dword [0x42335a6e], 0x3543646f
push 0x62
outsd dx, dword [esi]
xor eax, 0x42335a6e
outsd dx, dword [esi]
inc ebx
xor eax, 0x496f626a
dec ecx
dec ebx
pop eax
dec edx
push 0x61
inc edi
insb byte es:[edi], dx
jne 0x100453a1
insd dword es:[edi], dx
dec esi
jbe 0x100453bb
pop ecx
dec ecx
dec ebp
dec ebx
imul esi, dword [0x4e6d6331], 0x3457616f
jne 0x100453c2
xor dword [ebx + 0x6d], esp
dec esi
outsd dx, dword [esi]
popal
push edi
xor al, 0x75
pop ecx
xor bh, byte [ecx]
je fcn.100453d4
push 0x56336235
xor eax, 0x30563362
push ebx
xor eax, 0x49595a69
dec esp
push edi
xor byte [ebx + edx*2 + 0x35], ah
imul ebx, dword [edx + 0x59], 0x57654c49
cmp dword [ecx], esi
dec eax
push esi
imul ebx, dword [edx + 0x53], 0x32626a35
bound esi, qword [edx]
xor al, byte [ebx + 0x44]
push ebx
outsd dx, dword [esi]
jne 0x100453f6
push edi
cmp dword [ecx], esi
dec eax
push esi
imul ebx, dword [edx + 0x53], 0x32626a35
xor al, byte [ebx + 0x46]
dec eax
insb byte es:[edi], dx
jbe 0x10045409
pop eax
push edx
xor dword [ecx + 0x6d], ebx
push esi
insb byte es:[edi], dx
pop edx
dec eax
push esi
push 0x59
pop eax
push edx
jo 0x10045417
xor dh, byte [esi*2 + 0x74393259]
push 0x6e4c7159
je 0x10045424
push 0x6e4c7159
insb byte es:[edi], dx
jbe 0x10045429
pop eax
push edx
xor dword [ecx + 0x6d], ebx
push esi
insb byte es:[edi], dx
pop edx
dec eax
push esi
push 0x59
pop eax
push edx
jo 0x10045437
invalid
xor dh, byte [esi*2 + 0x74393259]
cmp dword [di], esi
insd dword es:[edi], dx
cmp dword [eax + 0x5a], esi