Function at 0x44afd0
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x465298
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x64
push ebx
push ebp
mov ebp, ecx
push esi
lea eax, [esp + 0x20]
push edi
mov ecx, dword [ebp + 4]
xor edi, edi
push eax
push ecx
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
call dword [sym.imp.USER32.dll_GetClientRect]
push 0x1ab
push 0x237
push edi
lea edx, [esp + 0x30]
push edi
push edx
call dword [sym.imp.USER32.dll_SetRect]
mov eax, dword [esp + 0x84]
sub eax, edi
je 0x44b836
dec eax
je 0x44b81d
dec eax
jne 0x44b8cd
mov eax, dword [0x46f42c]
mov dword [esp + 0x20], edi
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
lea esi, [ebp + 0x380]
lea eax, [esp + 0x18]
push eax
mov ecx, esi
mov dword [esp + 0x80], edi
call fcn.004423c0
mov ecx, esi
call fcn.00442150
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x14], eax
cmp ecx, 6
jl 0x44b591
cmp eax, edi
jne 0x44b591
mov ecx, dword [ebp + 4]
push 2
push ecx
call dword [sym.imp.USER32.dll_KillTimer]
mov edx, dword [ebp + 4]
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0xcb
push edx
call esi
mov ebx, dword [sym.imp.USER32.dll_ShowWindow]
push edi
push eax
call ebx
mov eax, dword [ebp + 4]
push 0x409
push eax
call esi
push edi
push eax
call ebx
mov ecx, dword [ebp + 4]
push 0x40b
push ecx
call esi
push 5
push eax
call ebx
mov edx, dword [ebp + 4]
push 0x40a
push edx
call esi
push 5
push eax
call ebx
mov eax, dword [ebp + 4]
push 0x407
push eax
call esi
mov dword [esp + 0x84], eax
mov cl, byte [esp + 0x84]
mov byte [esp + 0x34], cl
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], edi
mov dl, byte [esp + 0x84]
mov dword [esp + 0x48], edi
mov byte [esp + 0x44], dl
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], edi
mov al, byte [esp + 0x84]
mov dword [esp + 0x58], edi
mov byte [esp + 0x54], al
mov dword [esp + 0x5c], edi
mov dword [esp + 0x60], edi
mov cl, byte [esp + 0x84]
mov dword [esp + 0x68], edi
mov byte [esp + 0x64], cl
mov dword [esp + 0x6c], edi
mov dword [esp + 0x70], edi
lea ecx, [ebp + 0x380]
mov byte [esp + 0x7c], 4
call fcn.00442b90
mov edx, dword [0x46f42c]
mov esi, eax
mov dword [esp + 0x10], edx
push esi
lea eax, [esp + 0x14]
push 0x475424
push eax
mov byte [esp + 0x88], 5
call fcn.004076f0
add esp, 0xc
inc esi
cmp esi, 8
ja case.0x44b192.3
jmp dword [esi*4 + 0x44b8e4]
mov edx, dword [0x46f42c]
push ecx
mov ecx, esp
mov eax, 0x46fcc4
mov dword [esp + 0x18], esp
mov dword [esp + 0x18], ecx
test eax, eax
mov dword [ecx], edx
je 0x44b226
mov edx, eax
shr edx, 0x10
jne 0x44b1df
xor eax, eax
mov edx, 0x46fcc4
mov ax, dx
push eax
call fcn.00407c70
lea ecx, [ebp + 0x1a0]
call fcn.0042b090
push edi
push 1
jmp 0x44b4cd
push 0x46fcc4
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, eax
cmp esi, edi
je 0x44b226
mov ecx, dword [esp + 0x18]
push esi
call fcn.00408040
test eax, eax
je 0x44b226
mov eax, dword [esp + 0x18]
lea ecx, [esi + esi]
lea edx, [esi + esi + 2]
mov eax, dword [eax]
cmp edx, ecx
jb 0x44b226
mov edi, eax
mov eax, ecx
mov esi, 0x46fcc4
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor edi, edi
lea ecx, [ebp + 0x1a0]
call fcn.0042b090
push edi
push 1
jmp 0x44b4cd
push ecx
mov ecx, dword [0x46f42c]
mov ebx, esp
mov edx, 0x47541c
test edx, edx
mov dword [esp + 0x18], esp
mov dword [ebx], ecx
je 0x44b2aa
mov eax, edx
shr eax, 0x10
jne 0x44b269
xor eax, eax
mov ecx, edx
mov ax, cx
mov ecx, ebx
push eax
call fcn.00407c70
jmp 0x44b2aa
push 0x47541c
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, eax
cmp esi, edi
je 0x44b2aa
push esi
mov ecx, ebx
call fcn.00408040
test eax, eax
je 0x44b2aa
mov ebx, dword [ebx]
lea ecx, [esi + esi]
lea edx, [esi + esi + 2]
cmp edx, ecx
jb 0x44b2aa
mov eax, ecx
mov esi, 0x47541c
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor edi, edi
lea ecx, [ebp + 0x1a0]
call fcn.0042b090
mov ecx, dword [esp + 0x84]
push edi
push edi
push 0xf1
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [ebp + 4]
push edi
push 1
push 0x111
push edx
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x44b52c
mov eax, dword [0x46f42c]
push ecx
mov ecx, esp
mov edx, 0x47540c
mov dword [esp + 0x18], esp
mov dword [esp + 0x18], ecx
test edx, edx
mov dword [ecx], eax
je 0x44b357
mov eax, edx
shr eax, 0x10
jne 0x44b310
xor eax, eax
mov ax, dx
push eax
call fcn.00407c70
jmp 0x44b357
push 0x47540c
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, eax
cmp esi, edi
je 0x44b357
mov ecx, dword [esp + 0x18]
push esi
call fcn.00408040
test eax, eax
je 0x44b357
mov eax, dword [esp + 0x18]
lea ecx, [esi + esi]
lea edx, [esi + esi + 2]
mov eax, dword [eax]
cmp edx, ecx
jb 0x44b357
mov edi, eax
mov eax, ecx
mov esi, 0x47540c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor edi, edi
lea ecx, [ebp + 0x1a0]
call fcn.0042b090
mov ecx, dword [esp + 0x84]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push edi
push edi
push 0xf1
push ecx
call esi
mov edx, dword [ebp + 4]
push 5
push edx
call ebx
mov eax, dword [ebp + 0xe0]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [ebp + 4]
push edi
push 1
push 0x401
push ecx
call esi
mov edx, dword [ebp + 0xe0]
push 0xfffffffffffffff0
push edx
call dword [sym.imp.USER32.dll_GetWindowLongW]
and eax, 0xffff
push 1
and al, 0xfe
push eax
mov eax, dword [ebp + 0xe0]
push 0xf4
jmp 0x44b529
mov edx, dword [0x46f42c]
push ecx
mov ecx, esp
mov eax, 0x475404
mov dword [esp + 0x18], esp
mov dword [esp + 0x18], ecx
test eax, eax
mov dword [ecx], edx
je 0x44b4c0
mov edx, eax
shr edx, 0x10
jne 0x44b401
xor eax, eax
mov edx, 0x475404
mov ax, dx
push eax
call fcn.00407c70
jmp 0x44b4c0
push 0x475404
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, eax
cmp esi, edi
je 0x44b4c0
mov ecx, dword [esp + 0x18]
push esi
call fcn.00408040
test eax, eax
je 0x44b4c0
mov eax, dword [esp + 0x18]
lea ecx, [esi + esi]
lea edx, [esi + esi + 2]
mov eax, dword [eax]
cmp edx, ecx
jb 0x44b4c0
mov esi, 0x475404
jmp 0x44b4ae
mov edx, dword [0x46f42c]
push ecx
mov ecx, esp
mov eax, 0x46fcc4
mov dword [esp + 0x18], esp
mov dword [esp + 0x18], ecx
test eax, eax
mov dword [ecx], edx
je 0x44b4c0
mov edx, eax
shr edx, 0x10
jne 0x44b479
xor eax, eax
mov edx, 0x46fcc4
mov ax, dx
push eax
call fcn.00407c70
jmp 0x44b4c0
push 0x46fcc4
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, eax
cmp esi, edi
je 0x44b4c0
mov ecx, dword [esp + 0x18]
push esi
call fcn.00408040
test eax, eax
je 0x44b4c0
mov eax, dword [esp + 0x18]
lea ecx, [esi + esi]
lea edx, [esi + esi + 2]
mov eax, dword [eax]
cmp edx, ecx
jb 0x44b4c0
mov esi, 0x46fcc4
mov edi, eax
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor edi, edi
lea ecx, [ebp + 0x1a0]
call fcn.0042b090
push edi
push edi
mov ecx, dword [esp + 0x8c]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0xf1
push ecx
call esi
mov edx, dword [ebp + 4]
push 5
push edx
call ebx
mov eax, dword [ebp + 0xe0]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [ebp + 4]
push edi
push 2
push 0x401
push ecx
call esi
mov edx, dword [ebp + 0x98]
push 0xfffffffffffffff0
push edx
call dword [sym.imp.USER32.dll_GetWindowLongW]
and eax, 0xffff
push 1
and al, 0xfe
push eax
mov eax, dword [ebp + 0x98]
push 0xf4
push eax
call esi
mov eax, dword [esp + 0x10]
mov edx, dword [0x46f430]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x44b55b
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x44b55b
mov edx, dword [esp + 0x10]
lea eax, [edx - 0xc]
push eax
call fcn.004535f0
add esp, 4
push edi
call fcn.004535f0
push edi
call fcn.004535f0
push edi
call fcn.004535f0
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x44]
add esp, 0xc
mov byte [esp + 0x7c], 0
push eax
push ecx
lea ecx, [esp + 0x3c]
call fcn.004115c0
mov edx, dword [esp + 0x38]
jmp 0x44b7a9
cmp ecx, 5
jne 0x44b7b2
mov ecx, dword [0x46f42c]
mov dword [esp + 0x84], ecx
push eax
lea edx, [esp + 0x88]
push 0x4753c4
push edx
mov byte [esp + 0x88], 6
call fcn.004076f0
mov eax, dword [ebp + 4]
add esp, 0xc
push 2
push eax
call dword [sym.imp.USER32.dll_KillTimer]
mov ecx, dword [ebp + 4]
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0xcb
push ecx
call esi
mov ebx, dword [sym.imp.USER32.dll_ShowWindow]
push edi
push eax
call ebx
mov edx, dword [ebp + 4]
push 0x409
push edx
call esi
push edi
push eax
call ebx
mov eax, dword [ebp + 4]
push 0x40b
push eax
call esi
push 5
push eax
call ebx
mov ecx, dword [ebp + 4]
push 0x40a
push ecx
call esi
push 5
push eax
call ebx
mov edx, dword [ebp + 4]
push 0x407
push edx
call esi
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x14]
cmp eax, 0xffffffa5
jl 0x44b69b
cmp eax, 0xffffffa6
jg 0x44b69b
mov eax, dword [0x46f42c]
push ecx
mov ecx, esp
mov edx, 0x46fcc4
mov dword [esp + 0x18], esp
mov dword [esp + 0x18], ecx
test edx, edx
mov dword [ecx], eax
je 0x44b714
mov eax, edx
shr eax, 0x10
je 0x44b6bd
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, eax
cmp esi, edi
je 0x44b714
mov ecx, dword [esp + 0x18]
push esi
call fcn.00408040
test eax, eax
je 0x44b714
lea ecx, [esi + esi]
lea edx, [esi + esi + 2]
cmp edx, ecx
jb 0x44b714
mov eax, dword [esp + 0x18]
mov esi, 0x46fcc4
jmp 0x44b702
mov eax, dword [0x46f42c]
push ecx
mov ecx, esp
mov edx, 0x46fcc4
mov dword [esp + 0x18], esp
mov dword [esp + 0x18], ecx
test edx, edx
mov dword [ecx], eax
je 0x44b714
mov eax, edx
shr eax, 0x10
jne 0x44b6cf
xor edx, edx
mov eax, 0x46fcc4
mov dx, ax
push edx
call fcn.00407c70
jmp 0x44b714
push 0x46fcc4
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, eax
cmp esi, edi
je 0x44b714
mov ecx, dword [esp + 0x18]
push esi
call fcn.00408040
test eax, eax
je 0x44b714
lea ecx, [esi + esi]
lea edx, [esi + esi + 2]
cmp edx, ecx
jb 0x44b714
mov eax, dword [esp + 0x18]
mov esi, 0x46fcc4
mov edi, dword [eax]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor edi, edi
lea ecx, [ebp + 0x1a0]
call fcn.0042b090
mov eax, dword [esp + 0x10]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push edi
push edi
push 0xf1
push eax
call esi
mov ecx, dword [ebp + 4]
push 5
push ecx
call ebx
mov edx, dword [ebp + 0xe0]
push edx
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebp + 4]
push edi
push 2
push 0x401
push eax
call esi
mov ecx, dword [ebp + 0x98]
push 0xfffffffffffffff0
push ecx
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov edx, dword [ebp + 0x98]
and eax, 0xffff
and al, 0xfe
push 1
push eax
push 0xf4
push edx
call esi
mov eax, dword [esp + 0x84]
mov edx, dword [0x46f430]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x44b7b2
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x44b7b2
mov edx, dword [esp + 0x84]
add edx, 0xfffffff4
push edx
call fcn.004535f0
add esp, 4
mov eax, dword [esp + 0x1c]
mov edx, dword [0x46f430]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x44b7e1
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x44b7e1
mov edx, dword [esp + 0x1c]
add edx, 0xfffffff4
push edx
call fcn.004535f0
add esp, 4
mov eax, dword [esp + 0x18]
mov edx, dword [0x46f430]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x44b8cd
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x44b8cd
mov edx, dword [esp + 0x18]
add edx, 0xfffffff4
push edx
call fcn.004535f0
add esp, 4
jmp 0x44b8cd
mov eax, dword [ebp + 0x37c]
push edi
push edi
push 0x405
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x44b8cd
cmp dword [ebp + 0x35c], 4
jne 0x44b8cd
mov ecx, dword [ebp + 0x350]
mov eax, dword [esp + 0x30]
mov esi, dword [esp + 0x28]
sub ecx, eax
lea edx, [ecx + esi]
mov ecx, dword [ebp + 0x358]
cmp ecx, edx
jle 0x44b8a4
sub ecx, dword [ebp + 0x360]
cmp ecx, edx
mov dword [ebp + 0x358], ecx
jge 0x44b876
mov dword [ebp + 0x358], edx
mov edx, dword [esp + 0x2c]
mov ecx, dword [ebp + 0x354]
sub eax, esi
push 0x214
push eax
mov eax, dword [esp + 0x2c]
sub edx, eax
mov eax, dword [ebp + 0x358]
push edx
mov edx, dword [ebp + 4]
push eax
push ecx
push edi
push edx
call dword [sym.imp.USER32.dll_SetWindowPos]
jmp 0x44b8cd
mov edx, dword [esp + 0x24]
sub eax, esi
push 0x43
mov ecx, dword [ebp + 4]
push eax
mov eax, dword [esp + 0x34]
sub eax, edx
push eax
push edi
push edi
push 0xffffffffffffffff
push ecx
call dword [sym.imp.USER32.dll_SetWindowPos]
mov edx, dword [ebp + 4]
push edi
push edx
call dword [sym.imp.USER32.dll_KillTimer]
mov ecx, dword [esp + 0x74]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x70
ret 4