Function at 0x403590
Capabilities:
Get number of processors
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
aam 0x69
dec ebp
aam 0x38
add dword [eax], eax
add byte [ebx], ch
ror dword [ecx - 0x4c162fab], 1
add dword [eax], eax
add byte [eax + 0x57], dl
add esp, 4
or eax, 0xed5e
pop eax
push edi
sub edi, 0xc7af
pop edi
push eax
push ebx
add esp, 4
xor eax, 0x10e6f
add eax, 0x51c3
add eax, 0x14038
add eax, 0x54e5
pop eax
mov edx, dword [ebp - 0x30]
add edx, 0x138
imul eax, dword [ebp - 0x2c], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x2c], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c80], edx
push ecx
or ecx, 0x16a2d
add ecx, 0x11163
add ecx, 0x15474
xor ecx, 0x42f7
pop ecx
push edi
push esi
add esp, 4
add edi, 0x17287
or edi, 0x12195
sub edi, 0xc524
pop edi
mov edx, dword [ebp - 0x1c80]
add edx, 1
mov dword [ebp - 0x1494], edx
push eax
or eax, 0x11b28
xor eax, 0x341c
pop eax
push edx
add edx, 0x69d3
pop edx
push eax
jmp 0x40365f
sub eax, 0x10a9c
pop eax
push ecx
push edi
add esp, 4
and ecx, 0x5d47
pop ecx
push esi
push edx
add esp, 4
jmp 0x40367c
sub esi, 0xaa0f
call 0x40368e
add byte [ebp + 0x4a], al
aas
dec edx
dec eax
inc ebx
add esp, 4
xor esi, 0x17cf9
pop esi
push edx
push ecx
add esp, 4
and edx, 0x168d8
pop edx
imul eax, dword [ebp - 0x2c], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x2c], 0x138
sub eax, ecx
xor eax, dword [ebp - 0x1494]
imul eax, dword [ebp - 0x2c]
imul edx, dword [ebp - 0x2c], 0x138
sub eax, edx
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x1494]
imul eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1d24], eax
mov dword [ebp - 0x1520], 1
push edx
push esi
add esp, 4
xor edx, 0x16e95
or edx, 0xfd38
sub edx, 0x15fa2
pop edx
push ebx
and ebx, 0x89a6
sub ebx, 0x9001
or ebx, 0xb704
xor ebx, 0x14334
pop ebx
imul ecx, dword [ebp - 0x1520], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x1520], 0x138
sub ecx, edx
xor ecx, dword [ebp - 0x1d24]
imul ecx, dword [ebp - 0x1520]
imul eax, dword [ebp - 0x1520], 0x138
sub ecx, eax
mov dword [ebp - 0x1524], ecx
mov ecx, dword [ebp - 0xfb0]
mov edx, dword [ebp - 0xfac]
mov dword [ebp - 0x152c], ecx
mov dword [ebp - 0x1528], edx
push ecx
or ecx, 0x930b
sub ecx, 0x6aff
sub ecx, 0x1489d
call 0x40378e
add byte [edi + 0x4e], al
inc ebp
cmp dword [ebx + 0x47], eax
cmp eax, 0x5904c483
push ebx
or ebx, 0xb808
and ebx, 0x10b2c
pop ebx
push edi
call 0x4037b1
add byte [edx + 0x3e], al
inc esi
inc ecx
inc ebx
cmp al, 0x3d
xor ecx, dword [esi + eax*2 - 0x7d]
les eax, [ecx + eax*4]
out dx, eax
stosd dword es:[edi], eax
scasb al, byte es:[edi]
add byte [eax], al
call 0x4037c8
add byte [edi + edi + 0x39], al
xor edi, dword [ebx]
cmp byte ds:[edx], dh
add esp, 4
sub edi, 0x8ae0
pop edi
mov eax, dword [ebp - 0x30]
add eax, 0x138
imul ecx, dword [ebp - 0x2c], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x2c], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1d2c], eax
push edi
call 0x40380d
add byte [edi + 0x33], cl
dec ebx
dec ecx
cmp ecx, dword [eax + 0x36]
inc edx
inc ecx
dec edi
add esp, 4
call 0x40381e
add byte [edi + 0x37], cl
xor eax, 0x36494344
dec ebp
add esp, 4
add edi, 0x15853
jmp 0x40382d
pop edi
mov eax, dword [ebp - 0x152c]
add eax, 0x138
imul ecx, dword [ebp - 0x1528], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x1528], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x1528]
mov dword [ebp - 0x1d28], eax
mov eax, dword [ebp - 0x1d28]
mov dword [ebp - 0x1d30], eax
mov ecx, dword [ebp - 0x1d2c]
cmp ecx, dword [ebp - 0x1d30]
jae 0x40388a
mov dword [ebp - 0x149c], 1
jmp 0x403894
mov dword [ebp - 0x149c], 0
mov dl, byte [ebp - 0x149c]
mov byte [ebp - 0x382], dl
movzx eax, byte [ebp - 0x382]
test eax, eax
je 0x406907
push eax
push ebx
add esp, 4
add eax, 0x25f6
pop eax
push edx
call 0x4038cc
add byte [edx + 0x36], cl
push eax
dec eax
xor al, byte [esi + 0x3b]
aaa
dec eax
add esp, 4
call 0x4038dd
add byte [edx], bh
xor al, 0x47
dec eax
cmp bh, byte [eax]
inc edi
dec ebp
add esp, 4
pop edx
push esi
push edx
add esp, 4
xor esi, 0xfdee
pop esi
push esi
and esi, 0xc77
jmp 0x4038fc
and esi, 0xb37b
call 0x40390f
add byte [ecx + 0x46], cl
push eax
aaa
dec ebx
cmp al, 0x3f
add esp, 4
pop esi
mov ecx, dword [ebp - 0x30]
add ecx, 0x138
imul edx, dword [ebp - 0x2c], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0x2c], 0x138
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x1d34], ecx
mov ecx, dword [ebp - 0x1d34]
mov dword [ebp - 0x1d38], ecx
cmp dword [ebp - 0x1d38], 0x63c1
jne 0x403a8e
push eax
and eax, 0xacc1
sub eax, 0x5b6
pop eax
push edx
or edx, 0xf6dc
sub edx, 0x5a3b
call 0x403982
add byte [edx], bh
inc eax
dec edx
inc ebp
dec ebx
inc esp
push eax
add esp, 4
add edx, 0xa163
pop edx
mov edx, dword [ebp - 0x14]
add edx, 0x138
imul eax, dword [ebp - 0x10], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x10], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x10]
mov dword [ebp - 0x1d3c], edx
mov edx, dword [ebp - 0x1d3c]
mov dword [ebp - 0x1d40], edx
mov eax, dword [ebp - 0x1d40]
sub eax, 0x898
mov dword [ebp - 0x1d44], eax
mov dword [ebp - 0xfb4], 1
push eax
call 0x4039ec
add byte [esp + ecx*2], dh
dec esi
inc ebp
dec ebx
dec esp
cmp byte [eax - 0x7d], al
les eax, [ecx + eax*4]
loopne 0x4039c0
invalid
push es
add dword [eax], eax
jmp 0x4039fa
sub eax, 0x687
pop eax
push ecx
and ecx, 0x7685
add ecx, 0x7f8a
pop ecx
imul ecx, dword [ebp - 0xfb4], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0xfb4], 0x138
sub ecx, edx
xor ecx, dword [ebp - 0x1d44]
imul ecx, dword [ebp - 0xfb4]
imul eax, dword [ebp - 0xfb4], 0x138
sub ecx, eax
mov dword [ebp - 0xfb8], ecx
mov ecx, dword [ebp - 0xfb8]
mov edx, dword [ebp - 0xfb4]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], edx
push edi
push ebx
add esp, 4
add edi, 0x2e49
jmp 0x403a6f
or edi, 0x2a6f
pop edi
push ebx
push edx
add esp, 4
and ebx, 0x16e56
add ebx, 0x1f86
sub ebx, 0x25c3
pop ebx
push edx
push eax
add esp, 4
add edx, 0x1729f
sub edx, 0x983c
jmp 0x403aa7
pop edx
push edi
push esi
add esp, 4
or edi, 0xb60d
xor edi, 0x140d4
and edi, 0xc169
pop edi
mov eax, dword [ebp - 0x14]
add eax, 0x138
imul ecx, dword [ebp - 0x10], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x10], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x10]
mov dword [ebp - 0x1d48], eax
mov eax, dword [ebp - 0x1d48]
mov dword [ebp - 0x1db8], eax
lea ecx, [ebp - 0x928]
mov dword [ebp - 0x3bc], ecx
mov edx, dword [ebp - 0x3bc]
mov dword [edx + 4], 1
push ebx
jmp 0x403b18
pop ebx
push esi
push edi
add esp, 4
add esi, 0x6cc5
add esi, 0x14857
jmp 0x403b32
pop esi
push edx
and edx, 0xf3e5
and edx, 0x11b8c
pop edx
mov eax, dword [ebp - 0x3bc]
imul ecx, dword [eax + 4], 0x138
add ecx, 0x44f3644b
mov edx, dword [ebp - 0x3bc]
imul eax, dword [edx + 4], 0x138
sub ecx, eax
xor ecx, 0x23
mov edx, dword [ebp - 0x3bc]
imul ecx, dword [edx + 4]
mov eax, dword [ebp - 0x3bc]
imul edx, dword [eax + 4], 0x138
sub ecx, edx
mov eax, dword [ebp - 0x3bc]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x3bc]
mov dword [ebp - 0x1f58], ecx
push edx
add edx, 0x69d7
pop edx
push ecx
push eax
add esp, 4
jmp 0x403ba5
add ecx, 0x127
jmp 0x403bb0
xor ecx, 0x24d6
pop ecx
push eax
add eax, 0xdb44
add eax, 0x9f08
pop eax
mov dword [ebp - 0x14a4], 1
push ebx
sub ebx, 0x3268
xor ebx, 0x7c9
call 0x403beb
add byte [0x444e3b3a], dh
dec ebp
cmp dword [ecx + 0x4e], eax
add esp, 4
pop ebx
push ecx
push esi
add esp, 4
add ecx, 0x10b00
and ecx, 0x49b5
pop ecx
mov dword [ebp - 0x1f5c], 0x38
mov dword [ebp - 0x1f60], 0xe6
mov dword [ebp - 0x1f64], 0x6e
mov dword [ebp - 0x1f68], 0x6e
mov dword [ebp - 0x1f6c], 0x78
mov dword [ebp - 0x1530], 1
push ecx
xor ecx, 0x15424
sub ecx, 0x18601
or ecx, 0x4f70
or ecx, 0xd35
pop ecx
push eax
push ebx
add esp, 4
or eax, 0x17a2f
or eax, 0xd0dc
or eax, 0xc02c
pop eax
imul edx, dword [ebp - 0x1530], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0x1530], 0x138
sub edx, eax
xor edx, 0xe6
imul edx, dword [ebp - 0x1530]
imul ecx, dword [ebp - 0x1530], 0x138
sub edx, ecx
mov dword [ebp - 0x1534], edx
push ecx
sub ecx, 0x5d39
sub ecx, 0x88b9
and ecx, 0x71fd
pop ecx
push ebx
push ecx
add esp, 4
sub ebx, 0x31d3
add ebx, 0x114d6
pop ebx
push eax
push esi
add esp, 4
xor eax, 0xfd8c
pop eax
push edx
push edi
add esp, 4
call 0x403cf0
add byte [edx + edi], dh
xor edi, dword [ebx]
dec ebx
dec esp
dec esi
xor bh, byte [ebx + eax*4]
les eax, [ecx + eax*4]
rol dword [ecx - 0x357effff], cl
xor byte [ebx], ch
add byte [ecx + 0x13de8e2], al
add byte [edx + 0x51], bl
and ecx, 0x12349
pop ecx
mov edx, dword [ebp - 0x928]
add edx, 0x138
imul eax, dword [ebp - 0x924], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x924], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x924]
mov dword [ebp - 0x1d4c], edx
mov edx, dword [ebp - 0x1d4c]
mov dword [ebp - 0x1d50], edx
mov eax, dword [ebp - 0x1d50]
sub eax, 0x6e
mov dword [ebp - 0x1d54], eax
mov dword [ebp - 0xa08], 1
push ebx
or ebx, 0x11c28
or ebx, 0xee17
or ebx, 0x651
or ebx, 0xd686
pop ebx
push ecx
push edx
add esp, 4
sub ecx, 0x7d50
and ecx, 0x3980
or ecx, 0xa098
pop ecx
imul ecx, dword [ebp - 0xa08], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0xa08], 0x138
sub ecx, edx
xor ecx, dword [ebp - 0x1d54]
imul ecx, dword [ebp - 0xa08]
imul eax, dword [ebp - 0xa08], 0x138
sub ecx, eax
mov dword [ebp - 0xa0c], ecx
push ecx
xor ecx, 0xc1f6
pop ecx
push eax
push edi
add esp, 4
add eax, 0x1297d
sub eax, 0xad4e
sub eax, 0x15bfe
sub eax, 0x11e6b
pop eax
push edi
push eax
add esp, 4
sub edi, 0xa559
pop edi
mov ecx, dword [ebp - 0x928]
add ecx, 0x138
imul edx, dword [ebp - 0x924], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0x924], 0x138
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0x924]
mov dword [ebp - 0x1d58], ecx
mov ecx, dword [ebp - 0x1d58]
mov dword [ebp - 0x1d5c], ecx
mov edx, dword [ebp - 0x1d5c]
add edx, 0x38
mov dword [ebp - 0x1d60], edx
mov dword [ebp - 0xa10], 1
push ecx
push eax
add esp, 4
and ecx, 0x16bdf
sub ecx, 0xf724
and ecx, 0x52e3
add ecx, 0xbbfd
pop ecx
push ecx
push esi
add esp, 4
add ecx, 0x3090
jmp 0x403e95
pop ecx
imul eax, dword [ebp - 0xa10], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0xa10], 0x138
sub eax, ecx
xor eax, dword [ebp - 0x1d60]
imul eax, dword [ebp - 0xa10]
imul edx, dword [ebp - 0xa10], 0x138
sub eax, edx
mov dword [ebp - 0xa14], eax
push eax
or eax, 0x5d68
sub eax, 0xdaf2
and eax, 0x128f6
or eax, 0xd69f
pop eax
push edx
push esi
add esp, 4
and edx, 0x4cd6
sub edx, 0x73c
sub edx, 0x16b2d
pop edx
push eax
or eax, 0xe75e
sub eax, 0x23bb
sub eax, 0x148c5
pop eax
push esi
push esi
add esp, 4
and esi, 0x10a3c
sub esi, 0xab94
and esi, 0x17d06
sub esi, 0xc1e4
pop esi
mov dword [ebp - 0x2d0], 1
push esi
or esi, 0x156f2
add esi, 0x1613b
or esi, 0x13dc7
sub esi, 0xf293
pop esi
push edx
push ecx
add esp, 4
xor edx, 0x10f34
add edx, 0xc039
add edx, 0x564e
pop edx
imul eax, dword [ebp - 0x2d0], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x2d0], 0x138
sub eax, ecx
xor eax, 2
imul eax, dword [ebp - 0x2d0]
imul edx, dword [ebp - 0x2d0], 0x138
sub eax, edx
mov dword [ebp - 0x2d4], eax
push ebx
call 0x403fb5
add byte [eax + 0x47], dl
cmp edi, dword [0x83494f3d]
les eax, [ebx + ebp*8]
push es
push eax
cmp al, 0x4f
cmp al, 0x46
dec edx
and ebx, 0x2e51
pop ebx
push edx
push ecx
add esp, 4
and edx, 0xff19
add edx, 0xedbe
pop edx
mov eax, dword [ebp - 0x928]
mov ecx, dword [ebp - 0x924]
mov dword [ebp - 0x254], eax
mov dword [ebp - 0x250], ecx
jmp 0x4041c7
mov dword [ebp - 0x3c0], 0
call 0x406916
mov eax, 0x13379797
pop eax
mov dword [ebp - 0x3c0], eax
push esi
add esi, 0x68d6
add esi, 0xc09c
sub esi, 0x1f64
jmp 0x40693b
pop esi
push edi
push eax
add esp, 4
or edi, 0x59b8
xor edi, 0x99e
add edi, 0xd3f8
pop edi
mov ecx, dword [ebp - 0x1fa0]
mov dword [ebp - 0x14b8], ecx
push edx
add edx, 0x13381
pop edx
push ecx
push ecx
add esp, 4
xor ecx, 0x74a0
je 0x406972
add byte [ecx + 0x53], bl
push ecx
add esp, 4
xor ebx, 0xa95c
jmp 0x406988
jmp 0x406991
pop ebx
mov edx, dword [ebp - 0x14]
add edx, 0x138
imul eax, dword [ebp - 0x10], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x10], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x10]
mov dword [ebp - 0x14b8], edx
mov edx, dword [ebp - 0x3c0]
mov dword [ebp - 0x1ef8], edx
mov eax, dword [ebp - 0x1ef8]
invalid
invalid