Function at 0x41ebb0
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push 0x406326
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x48
push ebx
push esi
push edi
mov dword [ebp - 8], esp
mov dword [ebp - 4], 0x401750
mov ecx, 7
xor eax, eax
lea edi, [ebp - 0x2c]
xor esi, esi
rep stosd dword es:[edi], eax
push 0x4a0070
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x44], esi
call fcn.0040bf64
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov edi, eax
call ebx
test edi, edi
jne 0x41e947
mov dword [ebp - 0x44], 0xffffffff
jmp 0x41eae9
lea eax, [ebp - 0x40]
push eax
call 0x41ebb0
test eax, eax
je 0x41eadd
push 0
push 0xff
push 1
lea ecx, [ebp - 0x30]
push 3
push ecx
push 4
push 0x80
call dword [sym.imp.MSVBVM60.DLL___vbaRedim]
mov edx, dword [0x4a008c]
add esp, 0x1c
push edx
call fcn.0040c620
mov edi, eax
call ebx
test edi, edi
je 0x41eadd
mov ecx, dword [0x4a008c]
lea eax, [ebp - 0x2c]
push eax
push ecx
call fcn.0040c6a8
mov edi, eax
call ebx
test edi, edi
je 0x41ea58
test byte [ebp - 0x22], 4
je 0x41e98f
mov eax, dword [ebp - 0x2c]
lea edx, [ebp - 0x3c]
push edx
push eax
call fcn.0040c318
call ebx
mov edx, dword [ebp - 0x3c]
lea ecx, [ebp - 0x40]
push ecx
push edx
call 0x41eb20
test ax, ax
jne 0x41e98f
mov eax, dword [ebp - 0x30]
push eax
push 1
call dword [sym.imp.MSVBVM60.DLL___vbaUbound]
cmp esi, eax
jle 0x41ea0b
mov ecx, esi
push 0
add ecx, 0x100
lea edx, [ebp - 0x30]
jo 0x41eb1a
push ecx
push 1
push 3
push edx
push 4
push 0x80
call dword [sym.imp.MSVBVM60.DLL___vbaRedimPreserve]
add esp, 0x1c
mov ecx, dword [ebp - 0x30]
test ecx, ecx
je 0x41ea38
cmp word [ecx], 1
jne 0x41ea38
mov edx, dword [ecx + 0x14]
mov eax, dword [ecx + 0x10]
mov edi, esi
sub edi, edx
cmp edi, eax
jb 0x41ea2f
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov ecx, dword [ebp - 0x30]
lea eax, [edi*4]
jmp 0x41ea41
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ecx + 0xc]
mov edx, dword [ebp - 0x2c]
add esi, 1
mov dword [ecx + eax], edx
jo 0x41eb1a
jmp 0x41e98f
mov eax, dword [0x4a008c]
push eax
call fcn.0040c664
call ebx
sub esi, 1
mov ebx, 1
jo 0x41eb1a
mov dword [ebp - 0x54], esi
xor edi, edi
cmp edi, dword [ebp - 0x54]
jg 0x41ead7
mov ecx, dword [ebp - 0x30]
test ecx, ecx
je 0x41eaaa
cmp word [ecx], 1
jne 0x41eaaa
mov edx, dword [ecx + 0x14]
mov eax, dword [ecx + 0x10]
mov esi, edi
sub esi, edx
cmp esi, eax
jb 0x41eaa1
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov ecx, dword [ebp - 0x30]
lea eax, [esi*4]
jmp 0x41eab3
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ecx + 0xc]
mov edx, dword [ecx + eax]
mov eax, dword [0x4a008c]
push edx
push 0
push eax
call fcn.0040c6ec
call dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov ecx, ebx
add ecx, edi
jo 0x41eb1a
mov edi, ecx
jmp 0x41ea78
mov ebx, dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
push 0x4a0070
call fcn.0040bec4
call ebx
push 0x41eb05
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryDestruct]
lea edx, [ebp - 0x30]
push edx
push 0
call esi
lea eax, [ebp - 0x40]
push eax
push 0
call esi
ret
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]
push ebx
mov ebx, dword [esp + 0xc]
push ebp
push esi
mov eax, dword [ebx]
push edi
push eax
push 1
xor esi, esi
call dword [sym.imp.MSVBVM60.DLL___vbaUbound]
mov ebp, eax
xor edi, edi
test ebp, ebp
jl 0x41eb96
mov eax, dword [ebx]
test eax, eax
je 0x41eb66
cmp word [eax], 1
jne 0x41eb66
mov edx, dword [eax + 0x14]
mov ecx, dword [eax + 0x10]
mov esi, edi
sub esi, edx
cmp esi, ecx
jb 0x41eb5d
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
lea eax, [esi*4]
jmp 0x41eb6c
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov ecx, dword [ebx]
mov edx, dword [ecx + 0xc]
mov ecx, dword [esp + 0x14]
cmp dword [edx + eax], ecx
je 0x41eb8c
add edi, 1
jo 0x41eba0
cmp edi, ebp
jle 0x41eb3d
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
ret 8
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
ret 8
mov ax, si
pop edi
pop esi
pop ebp
pop ebx
ret 8
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
sub esp, 0x20
push ebx
push ebp
push esi
push edi
mov ecx, 7
xor eax, eax
lea edi, [esp + 0x14]
xor esi, esi
rep stosd dword es:[edi], eax
xor edi, edi
push edi
push 4
call fcn.0040cdfc
mov ebp, dword [sym.imp.MSVBVM60.DLL___vbaSetSystemError]
mov ebx, eax
call ebp
cmp ebx, 0xffffffff
mov dword [esp + 0x10], ebx
je 0x41ed00
push edi
mov edi, dword [esp + 0x38]
push 0xff
push 1
push 3
push edi
push 4
push 0x80
call dword [sym.imp.MSVBVM60.DLL___vbaRedim]
add esp, 0x1c
lea eax, [esp + 0x14]
mov dword [esp + 0x14], 0x1c
push eax
push ebx
call fcn.0040ce44
mov ebx, eax
call ebp
test ebx, ebx
je 0x41ecc4
mov ecx, dword [edi]
push ecx
push 1
call dword [sym.imp.MSVBVM60.DLL___vbaUbound]
cmp esi, eax
jle 0x41ec5a
mov edx, esi
push 0
add edx, 0x100
jo 0x41ed0c
push edx
push 1
push 3
push edi
push 4
push 0x80
call dword [sym.imp.MSVBVM60.DLL___vbaRedimPreserve]
add esp, 0x1c
call fcn.0040ced0
mov ebx, eax
call ebp
cmp dword [esp + 0x20], ebx
jne 0x41eca9
mov eax, dword [edi]
test eax, eax
je 0x41ec92
cmp word [eax], 1
jne 0x41ec92
mov edx, dword [eax + 0x14]
mov ecx, dword [eax + 0x10]
mov ebx, esi
sub ebx, edx
cmp ebx, ecx
jb 0x41ec89
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
lea eax, [ebx*4]
jmp 0x41ec98
call dword [sym.imp.MSVBVM60.DLL___vbaGenerateBoundsError]
mov ecx, dword [edi]
add esi, 1
jo 0x41ed0c
mov edx, dword [ecx + 0xc]
mov ecx, dword [esp + 0x1c]
mov dword [edx + eax], ecx
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x14]
push edx
push eax
call fcn.0040ce8c
mov ebx, eax
call ebp
test ebx, ebx
jne 0x41ec25
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
call ebp
test esi, esi
je 0x41ecf4
mov edx, esi
push 0
sub edx, 1
jo 0x41ed0c
push edx
push 1
push 3
push edi
push 4
push 0x80
call dword [sym.imp.MSVBVM60.DLL___vbaRedimPreserve]
add esp, 0x1c
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret 4
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret 4
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop