Function at 0x100d1940
Capabilities:
Get number of processors
Print debug messages

Disassembly:
push 0xffffffffffffffff
push 0x10188b99
mov eax, dword fs:[0]
push eax
sub esp, 0x5ec
mov eax, dword [0x101c6444]
xor eax, esp
mov dword [esp + 0x5e8], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101c6444]
xor eax, esp
push eax
lea eax, [esp + 0x600]
mov dword fs:[0], eax
mov eax, dword [esp + 0x758]
xor esi, esi
mov edi, ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x14], esi
mov dword [esp + 0x608], esi
call fcn.10023df0
lea ebp, [eax + 4]
push ebp
mov dword [esp + 0x50], 0x101975f4
mov dword [esp + 0x54], eax
mov dword [esp + 0x2c], ebp
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea ecx, [esp + 0x30]
push ecx
lea ecx, [esp + 0x705]
mov byte [esp + 0x60c], 1
call fcn.10014320
mov ebx, 0x10
cmp dword [esp + 0x48], ebx
jb 0x100d19e5
mov edx, dword [esp + 0x34]
push edx
call fcn.10157f3b
add esp, 4
cmp byte [esp + 0x74a], 1
jne 0x100d1bba
movzx eax, word [esp + 0x74d]
movzx ecx, word [esp + 0x74b]
push eax
push ecx
lea edx, [esp + 0x709]
push edx
lea eax, [esp + 0x494]
push eax
call fcn.100f38f0
add esp, 0x10
push eax
mov byte [esp + 0x60c], 2
call fcn.100f2ce0
push eax
lea ecx, [esp + 0x38]
push ecx
call fcn.1002cf90
add esp, 0xc
push 0xffffffffffffffff
push esi
push eax
lea ecx, [esp + 0x63c]
mov byte [esp + 0x614], 3
call fcn.10001a10
cmp dword [esp + 0x48], ebx
jb 0x100d1a64
mov edx, dword [esp + 0x34]
push edx
call fcn.10157f3b
add esp, 4
cmp dword [esp + 0x4a0], ebx
mov dword [esp + 0x48], 0xf
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0x608], 1
jb 0x100d1a96
mov eax, dword [esp + 0x48c]
push eax
call fcn.10157f3b
add esp, 4
mov ecx, dword [esp + 0x701]
mov edx, dword [esp + 0x705]
xor eax, eax
mov dword [esp + 0x4a8], eax
mov dword [esp + 0x4a8], ecx
mov ecx, dword [esp + 0x70d]
mov dword [esp + 0x4ac], eax
mov dword [esp + 0x4b0], eax
mov dword [esp + 0x4b4], eax
mov dword [esp + 0x4b8], eax
mov eax, dword [esp + 0x709]
mov dword [esp + 0x4ac], edx
mov edx, dword [esp + 0x711]
mov dword [esp + 0x4b4], ecx
mov ecx, dword [esp + 0x6fd]
mov dword [esp + 0x4b0], eax
mov eax, dword [esp + 0x6f9]
mov dword [esp + 0x4b8], edx
mov dx, word [esp + 0x74d]
mov dword [esp + 0x4c0], ecx
mov cx, word [esp + 0x74b]
mov dword [esp + 0x4bc], eax
mov byte [esp + 0x4ca], 0x64
mov word [esp + 0x4c4], cx
mov word [esp + 0x4c6], dx
xor eax, eax
jmp 0x100d1b50
cmp byte [esp + eax + 0x4a8], 0
jne 0x100d1b7f
add eax, 1
cmp eax, 0x14
jb 0x100d1b50
push ebp
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ecx, [esp + 0x610]
call fcn.10037ac0
mov eax, 5
jmp 0x100d232d
cmp cx, dx
ja 0x100d1b62
lea edx, [esp + 0x4a8]
push edx
lea ecx, [edi + 0x4c68]
call fcn.100d9710
test al, al
je 0x100d1bba
lea ecx, [esp + 0x4c]
call fcn.100035f0
lea ecx, [esp + 0x610]
call fcn.10037ac0
mov eax, 5
jmp 0x100d232d
mov ebx, dword [edi + 0x59d0]
lea eax, [esp + 0x6ed]
push eax
lea ecx, [esp + 0x20]
lea esi, [edi + 0x59cc]
push ecx
mov ecx, esi
call fcn.10066b00
mov ebp, eax
mov eax, dword [ebp]
test eax, eax
je 0x100d1be7
cmp eax, esi
je 0x100d1bec
call fcn.1015828d
cmp dword [ebp + 4], ebx
je 0x100d1bfb
mov edx, dword [esp + 0x28]
push edx
jmp 0x100d1b63
push 1
push 3
lea ecx, [esp + 0x68]
call fcn.10013620
lea eax, [esp + 0x488]
push eax
lea ecx, [esp + 0x705]
mov byte [esp + 0x60c], 4
call fcn.10014320
mov ecx, dword [esp + 0x6f9]
push 0x10198200
push ecx
push str.__filesize
push eax
push str.__hash
lea edx, [esp + 0x628]
push edx
lea eax, [esp + 0x80]
push str.CProjectMgr::CreateProject__url
push eax
mov byte [esp + 0x628], 5
call fcn.10012340
add esp, 8
push eax
call fcn.10027c70
add esp, 8
push eax
call fcn.10012340
add esp, 8
push eax
call fcn.10027c70
add esp, 8
push eax
call fcn.10012340
add esp, 8
mov ecx, eax
call fcn.100133a0
push eax
call fcn.10012340
mov esi, 0x10
add esp, 8
cmp dword [esp + 0x4a0], esi
mov byte [esp + 0x608], 4
jb 0x100d1cbb
mov ecx, dword [esp + 0x48c]
push ecx
call fcn.10157f3b
add esp, 4
lea edx, [esp + 0x488]
push edx
lea ecx, [esp + 0x64]
call fcn.1000abd0
cmp dword [eax + 0x18], esi
jb 0x100d1cd6
mov eax, dword [eax + 4]
jmp 0x100d1cd9
add eax, 4
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp dword [esp + 0x4a0], esi
jb 0x100d1cf9
mov eax, dword [esp + 0x48c]
push eax
call fcn.10157f3b
add esp, 4
lea ecx, [esp + 0x488]
push ecx
lea ecx, [esp + 0x64]
call fcn.1000abd0
cmp dword [esp + 0x4a0], esi
jb 0x100d1d23
mov edx, dword [esp + 0x48c]
push edx
call fcn.10157f3b
add esp, 4
lea eax, [esp + 0x614]
push eax
lea ecx, [esp + 0x4f0]
call fcn.10109967
lea ecx, [esp + 0x4ec]
mov byte [esp + 0x608], 6
call fcn.10108852
test al, al
jne 0x100d1deb
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x61c]
push ecx
lea ecx, [esp + 0x3c]
mov dword [esp + 0x54], 0xf
mov dword [esp + 0x50], 0
mov byte [esp + 0x40], al
call fcn.10001a10
cmp dword [esp + 0x48], esi
jb 0x100d1d8f
mov edx, dword [esp + 0x34]
push edx
call fcn.10157f3b
add esp, 4
lea ecx, [esp + 0x4ec]
call fcn.1002e6d0
lea ecx, [esp + 0xb4]
mov byte [esp + 0x608], 1
call fcn.10004960
lea eax, [esp + 0xb4]
push eax
mov dword [esp + 0xb8], 0x101975f8
call fcn.101575fb
mov ecx, dword [esp + 0x2c]
add esp, 4
push ecx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ecx, [esp + 0x610]
call fcn.10037ac0
mov eax, 6
jmp 0x100d232d
mov ebx, dword [edi + 0x64]
lea esi, [edi + 0x60]
mov dword [esp + 0x4e8], 0xf
mov dword [esp + 0x4e4], 0
mov byte [esp + 0x4d4], 0
mov edx, dword [esp + 0x75c]
push 0xffffffffffffffff
push 0
lea eax, [esp + 0x61c]
push eax
lea ecx, [esp + 0x4dc]
mov byte [esp + 0x614], 7
mov dword [esp + 0x4d8], edx
call fcn.10001a10
lea ecx, [esp + 0x4cc]
push ecx
lea edx, [esp + 0x20]
push edx
mov ecx, esi
call fcn.100acde0
mov ebp, eax
mov eax, dword [ebp]
test eax, eax
je 0x100d1e5e
cmp eax, esi
je 0x100d1e63
call fcn.1015828d
cmp dword [ebp + 4], ebx
jne 0x100d1fb7
cmp byte [esp + 0x692], 1
jne 0x100d1fb7
push 1
push 3
lea ecx, [esp + 0xf0]
call fcn.10013620
mov eax, dword [esp + 0x75c]
push eax
lea ecx, [esp + 0x618]
push ecx
lea edx, [esp + 0xf8]
push edx
mov byte [esp + 0x614], 8
call fcn.10027c70
add esp, 8
mov ecx, eax
call fcn.100133a0
cmp byte [esp + 0x74a], 1
je 0x100d1f03
lea eax, [esp + 0x488]
push eax
lea ecx, [esp + 0xec]
call fcn.1000abd0
lea ecx, [esp + 0x630]
push ecx
push eax
lea ecx, [edi + 0x5260]
mov byte [esp + 0x610], 9
mov dword [esp + 0x1c], 1
call fcn.1002ff40
test al, al
jne 0x100d1f03
mov bl, 1
jmp 0x100d1f05
xor bl, bl
test byte [esp + 0x14], 1
mov dword [esp + 0x608], 8
je 0x100d1f23
lea ecx, [esp + 0x488]
call fcn.100019e0
test bl, bl
je 0x100d1fa3
sub esp, 0x1c
lea edx, [esp + 0x64c]
mov ecx, esp
mov dword [esp + 0x48], esp
push edx
call fcn.10001970
mov ecx, 0x101c7cf1
call fcn.100067f0
lea ecx, [esp + 0xe8]
mov byte [esp + 0x608], 7
call fcn.10005840
lea ecx, [esp + 0x4cc]
call fcn.100abff0
lea ecx, [esp + 0x4ec]
call fcn.1002e6d0
lea ecx, [esp + 0x60]
mov byte [esp + 0x608], 1
call fcn.10005840
lea ecx, [esp + 0x4c]
call fcn.100035f0
lea ecx, [esp + 0x610]
call fcn.10037ac0
mov eax, 1
jmp 0x100d232d
lea ecx, [esp + 0xe8]
mov byte [esp + 0x608], 7
call fcn.10005840
lea eax, [esp + 0x4cc]
push eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, esi
call fcn.100acde0
mov ebp, dword [esp + 0x14]
cmp esi, ebp
mov ebx, dword [esi + 4]
je 0x100d1fdb
call fcn.1015828d
cmp ebx, dword [esp + 0x18]
je 0x100d200b
lea ecx, [esp + 0x14]
call fcn.10065c60
cmp byte [eax + 0x184], 0
jne 0x100d200b
lea ecx, [esp + 0x14]
call fcn.10065c60
add eax, 0x20
add dword [eax + 0x158], 1
jmp 0x100d22a1
cmp esi, ebp
mov ebx, dword [esi + 4]
je 0x100d2017
call fcn.1015828d
cmp ebx, dword [esp + 0x18]
je 0x100d2056
lea ecx, [esp + 0x14]
call fcn.10065c60
cmp byte [eax + 0x184], 0
je 0x100d2056
lea ecx, [esp + 0x14]
call fcn.10065c60
mov edx, dword [eax + 0x20]
push edx
push 0
push 1
push 0
lea ecx, [esp + 0x24]
call fcn.10065c60
add eax, 4
push eax
mov ecx, edi
call fcn.100cbf30
xor ebx, ebx
cmp dword [esp + 0x75c], ebx
je 0x100d211f
mov dword [esp + 0x4a4], 0xf
mov dword [esp + 0x4a0], ebx
mov byte [esp + 0x490], bl
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0x61c]
push eax
lea ecx, [esp + 0x498]
mov byte [esp + 0x614], 0xa
mov dword [esp + 0x494], ebx
call fcn.10001a10
lea ecx, [esp + 0x488]
push ecx
lea edx, [esp + 0x58]
push edx
mov ecx, esi
call fcn.100acde0
mov eax, dword [esi + 4]
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x20]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], esi
call fcn.100a88f0
test al, al
je 0x100d210b
lea ecx, [esp + 0x54]
call fcn.10065c60
cmp byte [eax + 0x184], bl
je 0x100d210b
lea ecx, [esp + 0x54]
call fcn.10065c60
mov edx, dword [eax + 0x20]
push edx
push ebx
push 1
push ebx
lea ecx, [esp + 0x64]
call fcn.10065c60
add eax, 4
push eax
mov ecx, edi
call fcn.100cbf30
lea ecx, [esp + 0x488]
mov byte [esp + 0x608], 7
call fcn.100abff0
add dword [edi + 0x6c], 1
push ebx
mov ecx, edi
call fcn.100a83c0
mov ecx, dword [esp + 0x2c]
lea edx, [esp + 0x610]
mov dword [ecx], eax
push edx
lea ecx, [esp + 0x174]
mov dword [esp + 0x614], eax
call fcn.100b9180
push eax
lea eax, [esp + 0x4d0]
mov bl, 0xb
push eax
lea ecx, [esp + 0x2f4]
mov byte [esp + 0x610], bl
call fcn.100bbb50
push eax
lea ecx, [esp + 0x20]
push ecx
mov ecx, esi
mov byte [esp + 0x610], 0xc
call fcn.100c27b0
lea ecx, [esp + 0x2ec]
mov byte [esp + 0x608], bl
call fcn.100af3d0
lea ecx, [esp + 0x170]
mov byte [esp + 0x608], 7
call fcn.100af360
mov ebx, dword [esp + 0x2c]
push ebx
lea edx, [esp + 0x20]
lea esi, [edi + 0x34]
push edx
mov ecx, esi
call fcn.100ac430
mov eax, dword [esp + 0x1c]
test eax, eax
mov ebp, dword [esi + 4]
je 0x100d21c9
cmp eax, esi
je 0x100d21ce
call fcn.1015828d
cmp dword [esp + 0x20], ebp
jne 0x100d21f6
mov eax, dword [ebx]
mov ecx, dword [esp + 0x75c]
lea edx, [esp + 0x1c]
mov dword [esp + 0x1c], eax
push edx
lea eax, [esp + 0x58]
mov dword [esp + 0x24], ecx
push eax
mov ecx, esi
call fcn.100b1e40
push 1
push 3
lea ecx, [esp + 0xf0]
call fcn.10013620
mov ecx, dword [esp + 0x75c]
push ecx
lea edx, [esp + 0x618]
push edx
lea eax, [esp + 0xf8]
push eax
mov byte [esp + 0x614], 0xd
call fcn.10027c70
add esp, 8
mov ecx, eax
call fcn.100133a0
lea ecx, [esp + 0x488]
push ecx
lea ecx, [esp + 0xec]
call fcn.1000abd0
push eax
mov byte [esp + 0x60c], 0xe
call fcn.100f28b0
add esp, 4
push eax
lea ecx, [edi + 0x4d38]
call fcn.100b3410
lea ecx, [esp + 0x488]
call fcn.100019e0
lea ecx, [esp + 0x13c]
mov byte [esp + 0x608], 7
call fcn.10004960
lea edx, [esp + 0x13c]
push edx
mov dword [esp + 0x140], 0x101975f8
call fcn.101575fb
add esp, 4
cmp dword [esp + 0x4e8], 0x10
jb 0x100d22bb
mov eax, dword [esp + 0x4d4]
push eax
call fcn.10157f3b
add esp, 4
lea ecx, [esp + 0x4ec]
mov dword [esp + 0x4e8], 0xf
mov dword [esp + 0x4e4], 0
mov byte [esp + 0x4d4], 0
call fcn.1002e6d0
lea ecx, [esp + 0xb4]
mov byte [esp + 0x608], 1
call fcn.10004960
lea ecx, [esp + 0xb4]
push ecx
mov dword [esp + 0xb8], 0x101975f8
call fcn.101575fb
mov edx, dword [esp + 0x2c]
add esp, 4
push edx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ecx, [esp + 0x610]
call fcn.10037ac0
xor eax, eax
mov ecx, dword [esp + 0x600]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x5e8]
xor ecx, esp
call fcn.101586e7
add esp, 0x5f8
ret 0x150