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

Disassembly:
add esp, 4
xor ecx, 0x597c
jmp 0x45623b
pop ecx
mov eax, dword [ebp - 0x3fc]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x400], ecx
push ecx
push edx
add esp, 4
and ecx, 0x11d8
pop ecx
push edx
push esi
add esp, 4
or edx, 0x182a2
pop edx
push esi
add esi, 0x31b2
add esi, 0xbd80
sub esi, 0xe5e
add esi, 0x107d0
pop esi
mov edx, dword [ebp - 0x400]
mov dword [ebp - 0x2f8], edx
cmp dword [ebp - 0x2f8], 0
jne 0x4562d3
push ebx
push eax
add esp, 4
xor ebx, 0x14104
pop ebx
push eax
add eax, 0x12c7
and eax, 0x12e8e
xor eax, 0x7b66
xor eax, 0x5c62
pop eax
push ebx
push ebx
add esp, 4
and ebx, 0x14c56
pop ebx
mov dword [ebp - 0xec], 0
jmp 0x456668
push esi
add esi, 0x16f6c
sub esi, 0x15e09
pop esi
push edx
or edx, 0xf629
call 0x4562f6
add byte [eax + 0x4d], dl
cmp byte [eax + 0x4f], cl
aaa
cmp eax, 0x4c48349
jmp 0x4562fe
and edx, 0xdf1
pop edx
mov eax, dword [ebp - 0x2f8]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x244], edx
cmp dword [ebp - 0x244], 0
jne 0x456361
push ebx
push eax
add esp, 4
or ebx, 0x13caf
sub ebx, 0xeec2
or ebx, 0x15a3b
and ebx, 0xa660
pop ebx
push ebx
push esi
add esp, 4
add ebx, 0x14001
pop ebx
push ebx
or ebx, 0x89e1
pop ebx
mov dword [ebp - 0xec], 0
jmp 0x456668
mov eax, dword [ebp - 0x244]
mov dword [ebp - 0xa4], eax
push eax
push esi
add esp, 4
call 0x45637e
add byte [eax + edi], dh
xor al, byte [edi + ecx*2 + 0x4e]
add esp, 4
call 0x45638f
add byte [0x4a3e4236], dh
inc esi
dec ecx
cmp eax, 0x8104c483
call fcn.0045b8c3
add eax, 0xcbae
pop eax
lea ecx, [ebp - 0x3d8]
mov dword [ebp - 0x240], ecx
mov edx, dword [ebp - 0xa4]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x23c], eax
push ecx
xor ecx, 0x2d81
pop ecx
push ecx
push ecx
add esp, 4
sub ecx, 0xb886
sub ecx, 0xe58b
and ecx, 0x6a56
pop ecx
push esi
push edi
add esp, 4
xor esi, 0xf0af
add esi, 0xebee
pop esi
xor ecx, ecx
mov word [ebp - 0x64], cx
xor edx, edx
mov word [ebp - 0x18], dx
push eax
push edi
add esp, 4
or eax, 0x120d4
pop eax
push esi
push esi
add esp, 4
jmp 0x456411
pop esi
push edx
push ecx
add esp, 4
and edx, 0x10b93
and edx, 0x1421e
xor edx, 0xe1eb
pop edx
mov eax, dword [ebp - 0x23c]
mov cx, word [eax]
mov word [ebp - 0x1ce], cx
mov edx, dword [ebp - 0x23c]
add edx, 2
mov dword [ebp - 0x23c], edx
mov ax, word [ebp - 0x1ce]
mov word [ebp - 0x64], ax
push eax
push ecx
add esp, 4
or eax, 0x17853
sub eax, 0x1c11
xor eax, 0x5f2c
jmp 0x456470
pop eax
push ecx
push edx
add esp, 4
jmp 0x45647d
pop ecx
push esi
or esi, 0xd704
pop esi
mov ecx, dword [ebp - 0x240]
mov dx, word [ecx]
mov word [ebp - 0x1d0], dx
mov eax, dword [ebp - 0x240]
add eax, 2
mov dword [ebp - 0x240], eax
mov cx, word [ebp - 0x1d0]
mov word [ebp - 0x18], cx
push eax
push edx
add esp, 4
xor eax, 0x20e
add eax, 0xe5d5
add eax, 0x174c6
pop eax
push esi
push edi
add esp, 4
xor esi, 0x13e63
jmp 0x4564db
xor esi, 0x548d
pop esi
movzx edx, word [ebp - 0x18]
test edx, edx
jne 0x4564ff
movzx eax, word [ebp - 0x64]
movzx ecx, word [ebp - 0x18]
sub eax, ecx
mov dword [ebp - 0x300], eax
jmp 0x456582
movzx edx, word [ebp - 0x64]
movzx eax, word [ebp - 0x18]
cmp edx, eax
je 0x4563f8
movzx ecx, word [ebp - 0x64]
xor ecx, 0x20
movzx edx, word [ebp - 0x18]
cmp ecx, edx
je 0x4563f8
push ecx
push edx
add esp, 4
and ecx, 0x12a21
jmp 0x456534
pop ecx
push eax
push edi
add esp, 4
xor eax, 0x18586
xor eax, 0xca8d
xor eax, 0x8020
jmp 0x456553
pop eax
movzx eax, word [ebp - 0x64]
movzx ecx, word [ebp - 0x18]
cmp eax, ecx
jge 0x45656c
mov dword [ebp - 0x2fc], 0xffffffff
jmp 0x456576
mov dword [ebp - 0x2fc], 1
mov edx, dword [ebp - 0x2fc]
mov dword [ebp - 0x300], edx
cmp dword [ebp - 0x300], 0
jne 0x4565ce
push eax
call 0x45659a
add byte [eax + 0x33], dl
cmp dword [ebx + 0x45], ecx
inc ebp
push eax
add esp, 4
add eax, 0x8b0
add eax, 0x9565
pop eax
push ecx
push ecx
add esp, 4
jmp 0x4565b6
or ecx, 0x10de
pop ecx
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xec], eax
jmp 0x456668
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx]
mov dword [ebp - 0xa4], edx
push esi
push ebx
add esp, 4
add esi, 0x126be
call 0x4565f6
add byte [0x4e3f3749], bh
inc eax
aas
xor eax, dword ds:[ebx - 0x397efb3c]
inc edx
test byte [eax], al
add byte [ecx + 0x14559c6], al
add byte [esi + 0x51], bl
and ecx, 0xf69e
pop ecx
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0x244]
je 0x45662c
mov ecx, dword [ebp - 0xa4]
cmp dword [ecx + 0x30], 0
jne 0x45636d
push ecx
and ecx, 0x24c
pop ecx
push esi
call 0x456643
add byte [edx + 0x4f], al
cmp al, 0x41
xor esi, dword [edx]
inc eax
dec edx
add esp, 4
call 0x456654
add byte [eax + 0x42], al
dec esi
inc esp
dec esp
dec ebp
dec ebp
add esp, 4
and esi, 0x3a0e
pop esi
mov dword [ebp - 0xec], 0
cmp dword [ebp - 0xec], 0
jne 0x4566b2
push esi
push edx
add esp, 4
call 0x456685
add byte [eax], bh
cmp esi, dword [ebx]
xor bh, byte [ebx + esi]
inc ebp
xor dh, byte [edx]
add esp, 4
xor esi, 0xbd06
and esi, 0xabaa
pop esi
push esi
and esi, 0x39b9
sub esi, 0x2db9
pop esi
mov dword [ebp - 0x1bc], 0
jmp 0x457794
mov edx, dword [ebp - 0xec]
mov eax, dword [edx + 0x18]
mov dword [ebp - 0x84], eax
mov dword [ebp - 0xfc], 0
push edx
push edx
add esp, 4
sub edx, 0x392f
jmp 0x4566de
and edx, 0x4858
sub edx, 0x1644d
pop edx
push ecx
push edi
add esp, 4
add ecx, 0x18566
sub ecx, 0x14b6e
pop ecx
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0x304], ecx
cmp dword [ebp - 0x304], 0
jne 0x456755
push eax
or eax, 0xbefc
or eax, 0xf9d9
sub eax, 0xccb3
xor eax, 0x4abb
pop eax
push esi
push eax
add esp, 4
xor esi, 0x10bf
xor esi, 0xf641
or esi, 0x1760b
pop esi
mov edx, dword [ebp - 0xfc]
mov dword [ebp - 0x94], edx
jmp 0x456c44
mov eax, dword [ebp - 0x304]
mov ecx, dword [ebp - 0x84]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x308], ecx
jne 0x45677d
mov edx, dword [ebp - 0xfc]
mov dword [ebp - 0x94], edx
jmp 0x456c44
push eax
xor eax, 0xe707
pop eax
push eax
push edx
add esp, 4
xor eax, 0x161d1
add eax, 0x16b5
or eax, 0x1639b
call 0x4567ab
add byte [eax + 0x39], dl
dec ecx
aas
cmp edi, dword ss:[esi]
add esp, 4
pop eax
mov eax, 8
imul ecx, eax, 0
mov edx, dword [ebp - 0x308]
mov eax, dword [edx + ecx + 0x78]
mov dword [ebp - 0x30c], eax
cmp dword [ebp - 0x30c], 0
jne 0x456813
push esi
sub esi, 0x16999
jmp 0x4567dc
add esi, 0x14ea9
sub esi, 0xf42c
pop esi
push ecx
xor ecx, 0x8e5e
xor ecx, 0x90ac
or ecx, 0x3301
jmp 0x456801
pop ecx
mov ecx, dword [ebp - 0xfc]
mov dword [ebp - 0x94], ecx
jmp 0x456c44
push edx
push eax
add esp, 4
call 0x456828
add byte [ebx], bh
inc ecx
aaa
inc edi
dec edi
dec esp
cmp byte [eax + 0x3b], al
add esp, 4
call 0x45683b
add byte [0x3946343d], dh
inc edx
inc ecx
cmp al, 0x38
inc edi
add esp, 4
xor edx, 0x178e3
pop edx
mov edx, dword [ebp - 0x84]
add edx, dword [ebp - 0x30c]
mov dword [ebp - 0xf0], edx
jne 0x45689c
push edx
or edx, 0x2c1e
xor edx, 0x4019
add edx, 0xc8e1
pop edx
push ecx
push esi
add esp, 4
and ecx, 0xb300
xor ecx, 0x21d4
pop ecx
push eax
push eax
add esp, 4
or eax, 0x6466
pop eax
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0x94], eax
jmp 0x456c44
mov ecx, dword [ebp - 0xf0]
mov edx, dword [ebp - 0x84]
add edx, dword [ecx + 0x20]
mov dword [ebp - 0x404], edx
push edx
and edx, 0xd054
sub edx, 0x17277
pop edx
push ebx
push edi
add esp, 4
sub ebx, 0xfd64
pop ebx
push edx
push eax
add esp, 4
add edx, 0x319
add edx, 0x9256
or edx, 0x17162
pop edx
mov eax, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0x84]
add ecx, dword [eax + 0x24]
mov dword [ebp - 0x408], ecx
push edi
or edi, 0xe7d0
call 0x45690c
add byte [eax + 0x4e], cl
dec esp
dec ebp
cmp al, 0x46
inc esp
add esp, 4
pop edi
push eax
add eax, 0xc57c
and eax, 0x49e9
or eax, 0x425f
sub eax, 0xbe55
pop eax
mov edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0x84]
add eax, dword [edx + 0x1c]
mov dword [ebp - 0x40c], eax
mov dword [ebp - 0xf4], 0
jmp 0x45695a
mov ecx, dword [ebp - 0xf4]
add ecx, 1
mov dword [ebp - 0xf4], ecx
mov edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf4]
cmp eax, dword [edx + 0x18]
jae 0x456c38
push eax
or eax, 0xb15
pop eax
push ecx
push esi
add esp, 4
call 0x45698b
add byte [0x32414e4d], dh
inc ecx
dec esi
inc ebx
inc ebx
add esp, 4
pop ecx
push edi
push esi
add esp, 4
sub edi, 0x4f34
add edi, 0x8fbf
pop edi
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x404]
mov eax, dword [ebp - 0x84]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0xf8], eax
push ebx
push edi
add esp, 4
and ebx, 0x6dd2
and ebx, 0x1278a
or ebx, 0x2e9b
pop ebx
push ebx
push edi
add esp, 4
or ebx, 0x111cb
jmp 0x4569e7
or ebx, 0x13fb4
pop ebx
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0x408]
movzx eax, word [edx + ecx*2]
mov ecx, dword [ebp - 0x40c]
mov edx, dword [ebp - 0x84]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x410], edx
push eax
and eax, 0x8d5c
pop eax
push edx
push ecx
add esp, 4
xor edx, 0x4512
add edx, 0x8d76
pop edx
push edx
push edi
add esp, 4
add edx, 0x1504c
sub edx, 0x78e2
and edx, 0x6d7c
pop edx
mov dword [ebp - 0x38], 0
jmp 0x456a57
mov eax, dword [ebp - 0x38]
add eax, 1
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0xf8]
add ecx, dword [ebp - 0x38]
movsx edx, byte [ecx]
test edx, edx
je 0x456af3
mov eax, dword [ebp - 0x38]
movsx ecx, byte [ebp + eax - 0x164]
test ecx, ecx
je 0x456af3
push ecx
xor ecx, 0x12492
xor ecx, 0x10338
sub ecx, 0x6616
sub ecx, 0x15bdd
pop ecx
push ebx
push ebx
add esp, 4
and ebx, 0xfb75
pop ebx
push edx
push esi
add esp, 4
add edx, 0xe739
pop edx
mov edx, dword [ebp - 0xf8]
add edx, dword [ebp - 0x38]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x38]
movsx edx, byte [ebp + ecx - 0x164]
cmp eax, edx
je 0x456ae5
mov eax, dword [ebp - 0xf8]
add eax, dword [ebp - 0x38]
movsx ecx, byte [eax]
xor ecx, 0x20
mov edx, dword [ebp - 0x38]
movsx eax, byte [ebp + edx - 0x164]
cmp ecx, eax
jne 0x456aec
jmp 0x456a4e
jmp 0x456af3
push edx
add edx, 0x2122
pop edx
push ecx
jmp 0x456b04
pop ecx
push edi
push edi
add esp, 4
jmp 0x456b12
sub edi, 0x9326
and edi, 0x1605d
jmp 0x456b24
pop edi
mov ecx, dword [ebp - 0xf8]
add ecx, dword [ebp - 0x38]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x38]
movsx ecx, byte [ebp + eax - 0x164]
cmp edx, ecx
jne 0x456b4f
mov dword [ebp - 0x248], 0
jmp 0x456bea
push edx
or edx, 0x8110
and edx, 0x8bd6
and edx, 0x102c
and edx, 0xc628
pop edx
push edx
push edx
add esp, 4
add edx, 0x4a7f
xor edx, 0x9585
sub edx, 0x10fd6
pop edx
mov edx, dword [ebp - 0xf8]
add edx, dword [ebp - 0x38]
movsx eax, byte [edx]
or eax, 0x20
mov ecx, dword [ebp - 0x38]
movsx edx, byte [ebp + ecx - 0x164]
or edx, 0x20
cmp eax, edx
jge 0x456bae
mov dword [ebp - 0x248], 0xffffffff
jmp 0x456bea
push edi
jmp 0x456bb4
or edi, 0xd1c9
add edi, 0x14247
xor edi, 0x121df
pop edi
push ecx
call 0x456bd6
add byte [ebx], bh
cmp byte [edi + ecx*2], dh
cmp eax, dword [ebx + 0x48]
xor eax, dword [ebx - 0x1e7efb3c]
dec ecx
mov edx, 0xc7590000
test dword [eax + 0x1fffffd], edi
add byte [eax], al
add byte [ebx - 0x24743], al
inc dword [eax]
cmp dword [ebp - 0x248], 0
jne 0x456c33
push ebx
xor ebx, 0x8c26
and ebx, 0x4fba
sub ebx, 0x4023
pop ebx
push edi
add edi, 0x7caa
call 0x456c1b
add byte [eax + 0x4d], cl
inc esi
cmp dl, byte [eax + 0x37]
cmp al, byte [ebx - 0x187efb3c]
add bl, byte [ebp - 0x74a10000]
test eax, esi
sti
invalid
jmp 0x45694b
mov ecx, dword [ebp - 0xfc]
mov dword [ebp - 0x94], ecx
cmp dword [ebp - 0x94], 0
je 0x456ced
push edx
push ecx
add esp, 4
jmp 0x456c5f
jmp 0x456c66
and edx, 0xb4ec
pop edx
push ebx
and ebx, 0x12e2e
pop ebx
push eax
xor eax, 0x217a
xor eax, 0xe54
pop eax
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x414], edx
mov eax, dword [ebp - 0x414]
mov dword [ebp - 0x418], eax
lea ecx, [ebp - 0x2b0]
push ecx
call dword [ebp - 0x418]
test eax, eax
jne 0x456ced
push ebx
push eax
add esp, 4
jmp 0x456cb8
pop ebx
push esi
push eax
add esp, 4
and esi, 0xd8b2
sub esi, 0x23f2
call 0x456cda
add byte [edx + 0x41], al
cmp ecx, dword [esi + 0x45]
inc edi
dec esi
xor eax, 0xc4834035
add al, 0x5e
mov dword [ebp - 0x1bc], 0
jmp 0x457794