Function at 0x44a550
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x4d2b78
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push ebp
push edi
mov eax, dword [0x517b6c]
xor eax, esp
push eax
lea eax, [esp + 0x3c]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x4c]
xor ebx, ebx
mov eax, vtable.CPOS.0
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov byte [esp + 0x44], 1
cmp dword [esi + 0x28], ebx
jne 0x44a5ce
xor al, al
mov ecx, dword [esp + 0x3c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebp
pop ebx
add esp, 0x38
ret 4
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x14]
mov dword [esp + 0x2c], eax
mov eax, dword [esi + 0x18]
mov dword [esp + 0x34], eax
mov dword [esp + 0x20], eax
movzx eax, byte [esi + 8]
sub eax, 1
mov dword [esp + 0x30], ecx
mov ecx, dword [esi + 0x1c]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x24], ecx
je 0x44a6da
sub eax, 1
je 0x44a63a
sub eax, 1
jne 0x44a67f
lea edx, [esp + 0x14]
push edx
lea edx, [esi + 0x60]
push ebp
lea ecx, [esp + 0x30]
call fcn.0040fd70
mov al, 2
mov ecx, dword [esp + 0x3c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebp
pop ebx
add esp, 0x38
ret 4
mov eax, dword [esi + 0x34]
lea ecx, [esp + 0x14]
push ecx
lea edi, [esi + 0x60]
lea ebx, [esi + 0xf8]
push ebx
mov edx, edi
mov dword [esp + 0x54], eax
call fcn.0040fd70
mov eax, dword [esi + 0x28]
push eax
call fcn.00427360
cmp byte [esi + 0x30], 0
je 0x44a6c4
mov eax, dword [esp + 0x4c]
test eax, eax
jg 0x44a696
lea edx, [esp + 0x14]
push edx
push ebp
mov edx, edi
lea ecx, [esp + 0x30]
call fcn.0040fd70
mov al, 2
mov ecx, dword [esp + 0x3c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebp
pop ebx
add esp, 0x38
ret 4
cmp eax, 0x64
jge 0x44a6c4
mov dword [esp + 0x4c], vtable.CALPHABLEND.0
lea eax, [esp + 0x28]
push eax
mov byte [esp + 0x48], 2
mov ecx, dword [esi + 0x40]
push ecx
push edi
push ebx
lea ecx, [esp + 0x24]
push ebp
mov edx, ecx
call fcn.0044f240
jmp 0x44a77a
lea edx, [esp + 0x14]
push edx
push ebp
mov edx, ebx
lea ecx, [esp + 0x30]
call fcn.0040fd70
jmp 0x44a77a
call fcn.00463220
mov byte [esp + 0x4c], al
lea eax, [esp + 0x28]
push eax
lea edi, [esi + 0x60]
push edi
mov edx, ebp
lea ecx, [esp + 0x1c]
call fcn.0040fd70
lea ecx, [esp + 0x14]
push ecx
push ebp
mov edx, edi
lea ecx, [esp + 0x30]
call fcn.0040fd70
mov al, 2
mov ecx, esi
call fcn.00449f10
fild dword [esi + 0x50]
fld qword [0x4ed918]
mov edi, 1
mov dword [esi + 0x34], edi
fdiv st(1), st(0)
mov dword [esi + 0x38], edi
mov dword [esi + 0x3c], 0x64
fld st(1)
call fcn.004c3b90
fmulp st(1)
mov dword [esi + 0x40], eax
mov dword [esi + 0x44], eax
call fcn.004c3b90
mov dword [esi + 0x48], eax
mov eax, 0xffffff9d
cdq
xor eax, edx
sub eax, edx
cdq
mov ecx, 0xa
idiv ecx
mov dword [esi + 0x5c], 0xa
mov dword [esi + 0x58], ebx
cmp edx, ebx
jle 0x44a767
add eax, edi
cmp byte [esp + 0x4c], bl
mov dword [esi + 0x54], eax
mov byte [esi + 0x30], 1
je 0x44a77a
add eax, 0xffffffff
mov dword [esi + 0x58], eax
mov al, 1
mov ecx, dword [esp + 0x3c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebp
pop ebx
add esp, 0x38
ret 4