Function at 0x563f3c
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push esi
mov dword [ebp - 4], eax
mov ebx, 0x58627c
xor eax, eax
push ebp
push 0x564712
push dword fs:[eax]
mov dword fs:[eax], esp
push 1
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581880]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x564728
mov eax, dword [ebx]
call fcn.0045d184
mov edx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x74c]
call fcn.0044dfd4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x74c]
cmp byte [eax + 0x30], 0
je 0x563fae
mov edx, 0x56473c
mov eax, dword [ebp - 4]
call fcn.0056d870
test al, al
je 0x563fb2
xor edx, edx
jmp 0x563fb4
mov dl, 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x74c]
call fcn.0044dfd4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x74c]
mov dl, byte [eax + 0x30]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x7fc]
call fcn.0044dfd4
push 0
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581880]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x564750
mov eax, dword [ebx]
call fcn.0045d184
mov byte [0x58662e], al
push 0
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581880]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x564760
mov eax, dword [ebx]
call fcn.0045d184
mov byte [0x58660d], al
push 0
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581880]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x564774
mov eax, dword [ebx]
call fcn.0045d184
mov byte [0x58660e], al
push 0
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581880]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x564784
mov eax, dword [ebx]
call fcn.0045d184
mov byte [0x586604], al
push 1
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581880]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x564794
mov eax, dword [ebx]
call fcn.0045d184
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x79c]
mov byte [edx + 0x221], al
push 0
lea eax, [ebp - 0xc]
push eax
lea edx, [ebp - 0x10]
mov eax, dword [0x581880]
call fcn.00405c64
mov edx, dword [ebp - 0x10]
mov ecx, 0x5647a4
mov eax, dword [ebx]
call fcn.0045cdc4
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x464]
add eax, 0x360
call fcn.00403c60
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x468]
add eax, 0x360
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x464]
mov edx, dword [edx + 0x360]
call fcn.00403c60
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x79c]
mov byte [eax + 0x22a], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x7a0]
mov byte [eax + 0x22a], 1
mov dl, 0x45
mov eax, dword [ebp - 4]
call fcn.0056baac
test al, al
je 0x564137
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x7a0]
mov dl, 1
call fcn.00441218
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x450]
mov edx, 0x5647b8
call fcn.00454d40
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x4cc]
mov edx, 0x5647c8
call fcn.00454d40
push ebp
call fcn.00563dd0
pop ecx
mov eax, dword [ebp - 4]
call fcn.0056cd94
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00577cc0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x6dc]
mov edx, dword [eax]
call dword [edx + 0x7c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x6f4]
mov edx, dword [eax]
call dword [edx + 0x7c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d0]
test eax, eax
je 0x5641f1
mov dl, byte [0x58663e]
sub dl, 1
jb 0x5641b2
je 0x5641be
dec dl
je 0x5641ca
jmp 0x5641d4
mov edx, 0xe
call fcn.00488cd8
jmp 0x5641d4
mov edx, 0xd
call fcn.00488cd8
jmp 0x5641d4
mov edx, 0xf
call fcn.00488cd8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d0]
mov edx, dword [eax + 0x11c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8e8]
call fcn.00488cd8
mov eax, dword [0x586224]
call fcn.00447120
mov edx, eax
mov eax, dword [ebp - 4]
call fcn.00569db4
lea edx, [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0055ccdc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x7b0]
mov eax, dword [eax + 0x40c]
mov edx, dword [ebp - 8]
call fcn.004d7b84
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x7ac]
mov eax, dword [eax + 0x40c]
mov edx, dword [ebp - 8]
call fcn.004d7b84
xor eax, eax
push ebp
push 0x5646ed
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 0x65
mov eax, dword [ebp - 4]
call fcn.0056baac
mov edx, eax
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.0055c544
mov eax, dword [0x582030]
mov eax, dword [eax]
call fcn.0043929c
mov dword [ebp - 0x14], eax
fild dword [ebp - 0x14]
fld xword [0x5647cc]
fmulp st(1)
call fcn.00402a3c
push eax
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581e14]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x5647e0
mov eax, dword [ebx]
call fcn.0045cef4
mov edx, eax
mov eax, dword [0x586224]
call fcn.004350ec
mov eax, dword [0x582030]
mov eax, dword [eax]
call fcn.00439290
mov dword [ebp - 0x14], eax
fild dword [ebp - 0x14]
fld xword [0x5647cc]
fmulp st(1)
call fcn.00402a3c
push eax
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581e14]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x5647f0
mov eax, dword [ebx]
call fcn.0045cef4
mov edx, eax
mov eax, dword [0x586224]
call fcn.0043511c
lea edx, [ebp - 0xc]
mov eax, dword [0x581e14]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x564800
mov eax, dword [ebx]
call fcn.0045da58
test al, al
je 0x564394
push 0
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581e14]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x564800
mov eax, dword [ebx]
call fcn.0045cef4
mov edx, eax
mov eax, dword [0x586224]
call fcn.00440ab8
push 0
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581e14]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x564810
mov eax, dword [ebx]
call fcn.0045cef4
mov edx, eax
mov eax, dword [0x586224]
call fcn.00440adc
mov eax, dword [0x582030]
mov eax, dword [eax]
call fcn.0043929c
mov edx, dword [0x586224]
cmp eax, dword [edx + 0x30]
jge 0x5643a1
mov edx, dword [0x586224]
xor eax, eax
call fcn.00454dec
jmp 0x5643a1
mov edx, dword [0x586224]
xor eax, eax
call fcn.00454dec
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x394]
xor edx, edx
call fcn.004da8a4
cmp dword [eax + 0xc], 0
jne 0x5643c5
mov dl, 0x62
mov eax, dword [ebp - 4]
call fcn.0056baac
test al, al
je 0x5643e9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x394]
xor edx, edx
call fcn.004da8a4
cmp dword [eax + 0xc], 1
jne 0x5643fa
mov dl, 0x62
mov eax, dword [ebp - 4]
call fcn.0056baac
test al, al
je 0x5643fa
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x394]
or edx, 0xffffffff
call fcn.004da5f0
push 0x3fe80000
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581e14]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x56481c
mov eax, dword [ebx]
call fcn.0045d0a0
add esp, 0xfffffffc
fstp dword [esp]
wait
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x394]
call fcn.004da914
push 0x3fe00000
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581e14]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x564828
mov eax, dword [ebx]
call fcn.0045d0a0
add esp, 0xfffffffc
fstp dword [esp]
wait
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x398]
call fcn.004da914
mov dl, 0x64
mov eax, dword [ebp - 4]
call fcn.0056baac
mov edx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3dc]
call fcn.0044de64
mov dl, 0x63
mov eax, dword [ebp - 4]
call fcn.0056baac
mov edx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3d8]
call fcn.0044de64
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.00559948
mov dl, 0x67
mov eax, dword [ebp - 4]
call fcn.0056baac
mov edx, eax
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.0055ca78
mov dl, 0x66
mov eax, dword [ebp - 4]
call fcn.0056baac
mov edx, eax
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.0055c7e0
mov dl, 0x3b
mov eax, dword [ebp - 4]
call fcn.0056baac
test al, al
je 0x5644fc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x748]
mov dl, 1
call fcn.0044de64
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00575254
mov dl, 0x3e
mov eax, dword [ebp - 4]
call fcn.0056baac
test al, al
je 0x564514
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.0057250c
mov dl, 0x68
mov eax, dword [ebp - 4]
call fcn.0056bacc
and eax, 0xff
mov edx, dword [ebp - 4]
mov esi, dword [edx + 0x858]
mov dword [esi + 0xc], eax
push 0
push 0
mov ecx, 0x564834
mov edx, 0x564840
mov eax, dword [ebx]
call fcn.0045d184
mov edx, eax
mov eax, esi
call fcn.00441218
push 0x41
push 0
mov ecx, 0x564850
mov edx, 0x564840
mov eax, dword [ebx]
call fcn.0045cef4
mov edx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x858]
call fcn.00440b28
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x858]
mov dl, byte [eax + 0x47]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x850]
call fcn.0044de64
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x858]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 4]
call fcn.0055cbcc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x858]
cmp byte [eax + 0x47], 0
jne 0x5645bf
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x848]
xor edx, edx
call fcn.00440b28
mov eax, dword [0x586224]
mov edx, dword [eax + 0x3c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x448]
call fcn.00440adc
push 0
push 0
lea edx, [ebp - 0xc]
mov eax, dword [0x581e14]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov ecx, 0x56485c
mov eax, dword [ebx]
call fcn.0045cef4
dec eax
jne 0x56460e
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00569db4
mov dl, 2
mov eax, dword [0x586224]
call fcn.00436278
mov eax, 0x58629c
mov cl, 1
mov edx, 0x56486c
call fcn.00458e58
test al, al
je 0x564647
mov eax, dword [0x586224]
cmp byte [eax + 0x20b], 2
je 0x564647
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00569db4
mov dl, 2
mov eax, dword [0x586224]
call fcn.00436278
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5646f7
lea edx, [ebp - 0xc]
mov eax, dword [0x581dc8]
call fcn.00405c64
mov eax, dword [ebp - 0xc]
movzx eax, byte [eax + 1]
sub eax, 0xa
cmp eax, 0x23
je 0x564689
mov ecx, dword [0x581dd8]
mov ecx, dword [ecx]
mov dl, 1
mov eax, dword [0x5376e4]
call fcn.0040bb58
call fcn.00403680
cmp byte [0x58160c], 0
je 0x5646ae
lea edx, [ebp - 0xc]
mov eax, dword [0x5819e8]
call fcn.00405c64
mov edx, dword [ebp - 0xc]
mov eax, dword [0x586224]
call fcn.00441330
jmp 0x5646e2
lea edx, [ebp - 0xc]
mov eax, dword [0x5819e8]
call fcn.00405c64
lea eax, [ebp - 0xc]
push eax
lea edx, [ebp - 0x10]
mov eax, dword [0x581dc8]
call fcn.00405c64
mov edx, dword [ebp - 0x10]
pop eax
call fcn.00403e90
mov edx, dword [ebp - 0xc]
mov eax, dword [0x586224]
call fcn.00441330
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00569db4
ret