Function at 0x405662
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
jmp 0x40563a
push edx
and edx, 0xbe4b
pop edx
push ebx
push ecx
add esp, 4
add ebx, 0x102b6
sub ebx, 0xbdd1
call 0x405662
add byte [eax], bh
xor eax, 0x4f335045
inc ecx
inc ebx
inc eax
add esp, 4
or ebx, 0x12a9a
pop ebx
cmp dword [ebp - 0x750], 0
jne 0x4056b6
push ebx
push edx
add esp, 4
add ebx, 0x11f83
sub ebx, 0xeca1
pop ebx
push ecx
push ecx
add esp, 4
or ecx, 0x1734
pop ecx
push edi
and edi, 0xe3c0
add edi, 0x1042e
sub edi, 0xd1d3
pop edi
mov dword [ebp - 0x79c], 0
jmp 0x4061dd
push ebx
and ebx, 0x129e5
sub ebx, 0x33a0
or ebx, 0x89d5
or ebx, 0x1139f
pop ebx
push edi
push esi
add esp, 4
or edi, 0x1a92
sub edi, 0x17da3
xor edi, 0xe544
pop edi
mov eax, dword [ebp - 0x750]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x320], ecx
mov dword [ebp - 0x760], 0
mov edx, dword [ebp - 0x320]
mov dword [ebp - 0x15f4], edx
cmp dword [ebp - 0x15f4], 0
jne 0x405727
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], eax
jmp 0x405a18
mov ecx, dword [ebp - 0x15f4]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x15f8], edx
jne 0x40574f
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], eax
jmp 0x405a18
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x15f8]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x15fc], ecx
cmp dword [ebp - 0x15fc], 0
jne 0x405781
mov edx, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], edx
jmp 0x405a18
mov eax, dword [ebp - 0x320]
add eax, dword [ebp - 0x15fc]
mov dword [ebp - 0x754], eax
jne 0x4057a6
mov ecx, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], ecx
jmp 0x405a18
mov edx, dword [ebp - 0x754]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x19c8], eax
mov ecx, dword [ebp - 0x754]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x19cc], edx
mov eax, dword [ebp - 0x754]
mov ecx, dword [ebp - 0x320]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x19d0], ecx
mov dword [ebp - 0x758], 0
jmp 0x405800
mov edx, dword [ebp - 0x758]
add edx, 1
mov dword [ebp - 0x758], edx
mov eax, dword [ebp - 0x754]
mov ecx, dword [ebp - 0x758]
cmp ecx, dword [eax + 0x18]
jae 0x405a0c
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x19c8]
dec dword [ebx - 0x31f73]
inc dword [ebx]
or al, 0x90
mov dword [ebp - 0x75c], ecx
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x19cc]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x19d0]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x19d4], eax
mov dword [ebp - 0x198], 0
jmp 0x405870
mov ecx, dword [ebp - 0x198]
add ecx, 1
mov dword [ebp - 0x198], ecx
mov edx, dword [ebp - 0x75c]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
test eax, eax
je 0x405922
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x894]
test edx, edx
je 0x405922
push edi
or edi, 0x1a4d
sub edi, 0x56de
pop edi
push eax
xor eax, 0xd7c8
xor eax, 0xf23e
call 0x4058c5
add byte [esi + 0x36], cl
cmp eax, 0x413f4c48
add esp, 4
xor eax, 0xf454
pop eax
mov eax, dword [ebp - 0x75c]
test dword [eax + edi*8 - 0x7afc0001], esp
push 0xffffffe
mov esi, 0x68958b08
invalid
invalid
dec dword [edi]
mov esi, 0xf76c1584
invalid
invalid
cmp ecx, eax
je 0x405914
mov ecx, dword [ebp - 0x75c]
add ecx, dword [ebp - 0x198]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x198]
movsx ecx, byte [ebp + eax - 0x894]
cmp edx, ecx
jne 0x40591b
jmp 0x405861
jmp 0x405922
push eax
call 0x405933
add byte [ecx + 0x35], al
dec edi
aaa
dec ebx
aaa
aaa
dec eax
dec edx
xor al, byte [ebx - 0x377efb3c]
and al, 0xe5
add byte [eax], al
or eax, 0x3e81
call 0x405950
add byte [ebx + 0x37], al
xor bh, byte ss:[eax]
cmp al, byte [edi + 0x34]
add esp, 4
pop eax
mov edx, dword [ebp - 0x75c]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x894]
cmp eax, edx
jne 0x405981
mov dword [ebp - 0xca8], 0
jmp 0x4059f0
push esi
push ecx
add esp, 4
add esi, 0x61fa
sub esi, 0xf97e
and esi, 0x5bb0
pop esi
push ebx
xor ebx, 0x86c8
call 0x4059af
add byte [ecx + 0x33], al
cmp byte [esi + 0x37], cl
cmp byte [edx + 0x42], cl
aaa
add esp, 4
pop ebx
mov eax, dword [ebp - 0x75c]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x894]
or eax, 0x20
cmp ecx, eax
jge 0x4059e6
mov dword [ebp - 0xca8], 0xffffffff
jmp 0x4059f0
mov dword [ebp - 0xca8], 1
cmp dword [ebp - 0xca8], 0
jne 0x405a07
mov ecx, dword [ebp - 0x19d4]
mov dword [ebp - 0x3f4], ecx
jmp 0x405a18
jmp 0x4057f1
mov edx, dword [ebp - 0x760]
mov dword [ebp - 0x3f4], edx
cmp dword [ebp - 0x3f4], 0
je 0x405af3
push ebx
push edi
add esp, 4
xor ebx, 0x2f1b
pop ebx
push edi
and edi, 0x7644
call 0x405a47
add byte [eax + 0x4a], cl
xor eax, dword [ecx + 0x43]
xor edx, dword [eax + 0x35]
dec ebx
add esp, 4
or edi, 0xda6c
or edi, 0x9666
pop edi
mov eax, dword [ebp - 0x3f4]
mov dword [ebp - 0x19d8], eax
push edi
xor edi, 0xc779
pop edi
push edi
and edi, 0x81fd
add byte [eax], al
or edi, 0x9120
xor edi, 0x8f96
and edi, 0x3fa2
pop edi
push ebx
or ebx, 0x10994
jmp 0x405a94
pop ebx
mov ecx, dword [ebp - 0x19d8]
mov dword [ebp - 0x19dc], ecx
dec dword [ebp - 0x173b6b]
call dword [edx - 1]
xchg ebp, eax
and al, 0xe6
invalid
invalid
test eax, eax
jne 0x405af3
push ecx
push eax
add esp, 4
sub ecx, 0x10fbc
pop ecx
push ecx
add ecx, 0xdc70
pop ecx
push eax
push ecx
add esp, 4
xor eax, 0x14970
add byte [ecx + 0x111c1f0], al
add byte [eax + 0x52], bl
push edi
add esp, 4
add edx, 0xf32a
pop edx
mov dword [ebp - 0x79c], 0
jmp 0x4061dd
push ebx
call 0x405b01
add byte [ebx], bh
dec ebx
xor al, 0x50
cmp esi, dword ds:[ebx + eax*4]
les eax, [ecx + eax*4]
ret
push esi
or esi, 0x6c88
or esi, 0x287e
pop esi
push ebx
sub ebx, 0xb4ad
jmp 0x4061fb
jmp 0x406200
and ebx, 0xb302
pop ebx
push ecx
xor ecx, 0x17100
pop ecx
mov ecx, dword [ebp - 0x3e8]
add ecx, 0xe
mov dword [ebp - 0x1a40], ecx
push esi
push ecx
add esp, 4
jmp 0x406229
and esi, 0xda79
sub esi, 0x166d7
jmp 0x40623c
pop esi
push edi
and edi, 0xa5c4
jmp 0x406249
sub edi, 0x3647
pop edi
cmp dword [ebp - 0x3e8], 0
je 0x406262
cmp dword [ebp - 0xac0], 0
jne 0x4062a8
push ebx
call 0x40626f
add byte [ebp + 0x42], cl
cmp bh, byte [0xc4834249]
add al, 0x81
push edx
add byte fs:[eax], al
pop ebx
push ecx
call 0x40628a
add byte [0x344e3a3e], dh
inc eax
dec esp
dec edx
dec ecx
dec esi
add esp, 4
xor ecx, 0xc9c4
pop ecx
mov edx, dword [ebp - 0x79c]
mov dword [ebp - 0x19f4], edx
push 0
call dword [ebp - 0x19f4]
mov dword [ebp - 0x210c], 0xa
push ebx
xor ebx, 0x251a
or ebx, 0x9e83
or ebx, 0x668c
pop ebx
push edi
push eax
add esp, 4
sub edi, 0x5602
xor edi, 0x347
sub edi, 0x10752
xor edi, 0x141b7
pop edi
mov eax, dword [ebp - 0x3e8]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3ae], cl
mov edx, dword [ebp - 0xac0]
sub edx, dword [ebp - 0x3e8]
mov dword [ebp - 0x1698], edx
xchg ebp, eax
push 0xc7ffffe9
test dword [eax], ebx
invalid
invalid
inc dword [eax]
add byte [eax], al
invalid
push esi