Function at 0x10044ab0
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x10159497
mov eax, dword fs:[0]
push eax
sub esp, 0xa4
mov eax, dword [0x101ad3b4]
xor eax, esp
mov dword [esp + 0xa0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101ad3b4]
xor eax, esp
push eax
lea eax, [esp + 0xb8]
mov dword fs:[0], eax
mov esi, dword [esp + 0xe4]
mov eax, dword [esp + 0xe0]
mov ebp, dword [esp + 0xc8]
mov edi, dword [esp + 0xcc]
xor ebx, ebx
mov dword [esp + 0x1c], ebx
lea ecx, [esp + 0x14]
push ecx
push esi
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x20], edi
mov dword [esp + 0x28], eax
mov dword [esp + 0x38], esi
mov dword [esp + 0x30], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x3c], ebx
mov byte [esp + 0x1c], 0x24
mov byte [esp + 0x1d], bl
call fcn.100f9e7a
add esp, 8
test eax, eax
je 0x10044c26
lea edx, [esp + 0x88]
mov cl, 0x5c
mov al, 0x22
push edx
push edi
mov byte [esp + 0x90], 0xb9
mov byte [esp + 0x91], 0xd8
mov byte [esp + 0x92], 0xbc
mov byte [esp + 0x93], 0xfc
mov byte [esp + 0x94], 0xb7
mov byte [esp + 0x95], 0xfb
mov byte [esp + 0x96], 0xba
mov byte [esp + 0x97], 0xc5
mov byte [esp + 0x98], cl
mov byte [esp + 0x99], al
mov byte [esp + 0x9a], 0x24
mov byte [esp + 0x9b], cl
mov byte [esp + 0x9c], al
mov byte [esp + 0x9d], 0xb2
mov byte [esp + 0x9e], 0xbb
mov byte [esp + 0x9f], 0xc4
mov byte [esp + 0xa0], 0xdc
mov byte [esp + 0xa1], 0xc9
mov byte [esp + 0xa2], 0xe8
mov byte [esp + 0xa3], 0xd6
mov byte [esp + 0xa4], 0xc3
mov byte [esp + 0xa5], 0x21
mov byte [esp + 0xa6], bl
call fcn.1003bf90
add esp, 8
lea eax, [esp + 0x14]
push eax
push 0x10160a44
mov ecx, ebp
call fcn.10009b00
jmp 0x10045092
push 0x101615a8
push esi
call fcn.100f9e7a
add esp, 8
test eax, eax
je 0x10044d0e
mov cl, 0x5c
mov byte [esp + 0x90], cl
mov byte [esp + 0x93], cl
lea ecx, [esp + 0x88]
mov al, 0x22
push ecx
push edi
mov byte [esp + 0x90], 0xb9
mov byte [esp + 0x91], 0xd8
mov byte [esp + 0x92], 0xbc
mov byte [esp + 0x93], 0xfc
mov byte [esp + 0x94], 0xb7
mov byte [esp + 0x95], 0xfb
mov byte [esp + 0x96], 0xba
mov byte [esp + 0x97], 0xc5
mov byte [esp + 0x99], al
mov byte [esp + 0x9a], 0x7c
mov byte [esp + 0x9c], al
mov byte [esp + 0x9d], 0xb2
mov byte [esp + 0x9e], 0xbb
mov byte [esp + 0x9f], 0xc4
mov byte [esp + 0xa0], 0xdc
mov byte [esp + 0xa1], 0xc9
mov byte [esp + 0xa2], 0xe8
mov byte [esp + 0xa3], 0xd6
mov byte [esp + 0xa4], 0xc3
mov byte [esp + 0xa5], 0x21
mov byte [esp + 0xa6], bl
call fcn.1003bf90
add esp, 8
lea edx, [esp + 0x14]
push edx
jmp 0x10045086
cmp esi, ebx
je 0x10045001
mov eax, esi
lea edx, [eax + 1]
jmp 0x10044d20
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x10044d20
sub eax, edx
je 0x10045001
mov edi, 0x1016158c
mov ecx, 2
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x10044ffd
mov eax, dword [esp + 0x30]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x10044d50
sub eax, edx
cmp eax, 0xe
jbe 0x10044dde
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x88]
push ecx
push edx
mov byte [esp + 0x90], 0x77
mov byte [esp + 0x91], 0x6f
mov byte [esp + 0x92], 0x72
mov byte [esp + 0x93], 0x64
mov byte [esp + 0x94], 0xcc
mov byte [esp + 0x95], 0xab
mov byte [esp + 0x96], 0xb3
mov byte [esp + 0x97], 0xa4
mov byte [esp + 0x98], 0xc1
mov byte [esp + 0x99], 0xcb
mov byte [esp + 0x9a], 0x2e
mov byte [esp + 0x9b], bl
call fcn.1003bf90
add esp, 8
lea eax, [esp + 0x14]
push eax
jmp 0x10045086
lea ecx, [esp + 0x34]
push ecx
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x30]
push eax
mov eax, dword [esp + 0xe8]
lea ecx, [esp + 0x48]
push ecx
mov ecx, dword [esp + 0xe8]
lea edx, [esp + 0x58]
push edx
mov edx, dword [esp + 0xe8]
push eax
mov eax, dword [esp + 0xe8]
push ecx
mov ecx, dword [esp + 0x34]
push edx
push eax
push ecx
call fcn.10041d70
add esp, 0x28
test eax, eax
je 0x10044d04
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x20]
push eax
lea ecx, [esp + 0x4c]
push ecx
mov ecx, dword [esp + 0x30]
push edx
lea edx, [esp + 0x24]
mov dword [esp + 0x24], ebx
call fcn.1003d6e0
add esp, 0xc
test eax, eax
je 0x10044dd4
push 0xabe
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x30], ebx
call fcn.100f5b7c
mov edi, eax
add esp, 4
cmp edi, ebx
jne 0x10044e89
mov ecx, dword [esp + 0x18]
push ecx
call fcn.100f5c3f
add esp, 4
lea edx, [esp + 0x14]
push edx
jmp 0x10045086
push 0xabe
push ebx
push edi
call fcn.100f6b80
mov eax, dword [esp + 0x5c]
push eax
mov esi, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x60]
push eax
push ebx
push ebx
lea ecx, [esp + 0x60]
push ecx
lea edx, [esp + 0x3c]
push edx
push edi
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x54]
push edx
push esi
call fcn.1003f150
push esi
call fcn.100f5c3f
add esp, 0x40
push 0xbbe
call fcn.100f5b7c
mov esi, eax
add esp, 4
cmp esi, ebx
jne 0x10044ef5
push edi
call fcn.100f5c3f
add esp, 4
lea eax, [esp + 0x14]
push eax
jmp 0x10045086
mov byte [esi], bl
mov cl, 0x73
mov byte [esp + 0xa1], cl
mov byte [esp + 0xa4], cl
mov cl, 0x64
mov al, 0x25
mov byte [esp + 0xa7], cl
mov dl, 0x2e
mov byte [esp + 0xaa], cl
mov byte [esp + 0xad], cl
mov byte [esp + 0xb0], cl
mov ecx, dword [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x24]
mov byte [esp + 0xac], dl
mov byte [esp + 0xaf], dl
mov edx, dword [esp + 0x30]
push edx
mov edx, dword [esp + 0x38]
mov byte [esp + 0xa8], al
mov byte [esp + 0xab], al
mov byte [esp + 0xae], al
mov byte [esp + 0xb1], al
mov byte [esp + 0xb4], al
mov byte [esp + 0xb7], al
mov eax, dword [esp + 0x2c]
push eax
push ecx
push edx
push edi
lea eax, [esp + 0xb8]
push eax
push esi
mov byte [esp + 0xc2], 0x24
mov byte [esp + 0xc5], 0x24
mov byte [esp + 0xce], 0x24
mov byte [esp + 0xd1], bl
call fcn.100f7960
add esp, 0x20
lea ecx, [esp + 0x14]
push ecx
push esi
lea ecx, [esp + 0x78]
call fcn.10009b00
mov dword [esp + 0xc0], 1
push edi
call fcn.100f5c3f
push esi
call fcn.100f5c3f
add esp, 8
lea edx, [esp + 0x70]
push edx
mov ecx, ebp
call fcn.10009b80
mov dword [esp + 0x1c], 1
mov byte [esp + 0xc0], bl
lea ecx, [esp + 0x70]
call fcn.10006310
jmp 0x100450a1
mov edi, dword [esp + 0x18]
lea eax, [esp + 0x88]
push eax
push edi
mov byte [esp + 0x90], 0x77
mov byte [esp + 0x91], 0x6f
mov byte [esp + 0x92], 0x72
mov byte [esp + 0x93], 0x64
mov byte [esp + 0x94], 0xb2
mov byte [esp + 0x95], 0xbb
mov byte [esp + 0x96], 0xc4
mov byte [esp + 0x97], 0xdc
mov byte [esp + 0x98], 0xce
mov byte [esp + 0x99], 0xaa
mov byte [esp + 0x9a], 0xbf
mov byte [esp + 0x9b], 0xd5
mov byte [esp + 0x9c], 0x21
mov byte [esp + 0x9d], bl
call fcn.1003bf90
add esp, 8
lea ecx, [esp + 0x14]
push ecx
push 0x10160a44
mov ecx, ebp
call fcn.10009b00
mov dword [esp + 0xc0], ebx
mov dword [esp + 0x1c], 1
mov eax, ebp
mov ecx, dword [esp + 0xb8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xa0]
xor ecx, esp
call fcn.100f611a
add esp, 0xb0
ret