Function at 0x100018b0
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x1000272b
mov eax, dword fs:[0]
push eax
sub esp, 0x64
mov eax, dword [0x10004004]
xor eax, esp
mov dword [esp + 0x60], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x10004004]
xor eax, esp
push eax
lea eax, [esp + 0x78]
mov dword fs:[0], eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x20], eax
xor ebx, ebx
push 0x30
lea ecx, [esp + 0x2c]
mov dword [esp + 0x84], 1
or edi, 0xffffffff
push ebx
push ecx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x30], ebx
call sub.MSVCR90.dll_memset
add esp, 0xc
lea eax, [esp + 0x88]
lea esi, [esp + 0x58]
xor ebp, ebp
call fcn.10001210
cmp dword [esp + 0x70], 0x10
mov eax, dword [esp + 0x5c]
jae 0x1000193e
lea eax, [esp + 0x5c]
lea edx, [esp + 0x28]
push edx
push eax
call dword [sym.imp.MSVCR90.dll__stat64i32]
add esp, 8
test eax, eax
jne 0x10001963
mov eax, dword [esp + 0x3c]
cdq
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edx
mov ebp, 1
push 3
call dword [sym.imp.libcurl.dll_curl_global_init]
add esp, 4
cmp eax, ebx
jne 0x10001be8
call dword [sym.imp.libcurl.dll_curl_easy_init]
mov esi, eax
cmp esi, ebx
je 0x10001bd8
cmp dword [esp + 0xa0], 8
mov eax, dword [esp + 0x8c]
jae 0x1000199e
lea eax, [esp + 0x8c]
push 0x1000318c
push eax
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.MSVCR90.dll__wfopen_s]
add esp, 0xc
cmp eax, ebx
je 0x100019c5
push esi
call dword [sym.imp.libcurl.dll_curl_easy_cleanup]
add esp, 4
jmp 0x10001be8
cmp dword [esp + 0xbc], 0x10
mov eax, dword [esp + 0xa8]
jae 0x100019dd
lea eax, [esp + 0xa8]
mov edi, dword [sym.imp.libcurl.dll_curl_easy_setopt]
push eax
push 0x2712
push esi
call edi
mov ecx, dword [esp + 0xd0]
push ecx
push 0x4e
push esi
call edi
mov edx, dword [esp + 0xe0]
push edx
push 0xd
push esi
call edi
push 0x100012b0
push 0x4e6f
push esi
call edi
lea eax, [esp + 0x54]
push eax
push 0x272d
push esi
call edi
add esp, 0x3c
cmp ebp, ebx
je 0x10001a31
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
jmp 0x10001a35
xor eax, eax
xor ecx, ecx
push ecx
push eax
push 0x75a4
push esi
call edi
mov ecx, dword [esp + 0x24]
push ecx
push 0x2711
push esi
call edi
push 0x100012f0
push 0x4e2b
push esi
call edi
push 0x10001300
push 0x4e2c
push esi
call edi
push ebx
push 0x2b
push esi
call edi
mov edx, dword [esp + 0x60]
add esp, 0x40
push edx
push 0x4e58
push esi
call edi
push 0x10003188
push 0x2749
push esi
call edi
push str.libcurl_agent_1.0
push 0x2722
push esi
call edi
push ebx
push 0x40
push esi
call edi
push ebx
push 0x51
push esi
call edi
push 1
push 0x34
push esi
call edi
add esp, 0x48
push 1
push 0x4b
push esi
call edi
push 1
push 0x63
push esi
call edi
push esi
call dword [sym.imp.libcurl.dll_curl_easy_perform]
mov edi, eax
add esp, 0x1c
cmp edi, ebx
je 0x10001b7b
push edi
call dword [sym.imp.libcurl.dll_curl_easy_strerror]
push eax
call fcn.10001000
add esp, 8
cmp edi, 0x21
mov edi, dword [sym.imp.MSVCR90.dll_fclose]
jne 0x10001b27
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x10001af7
push eax
call edi
add esp, 4
cmp dword [esp + 0xa0], 8
mov eax, dword [esp + 0x8c]
jae 0x10001b0f
lea eax, [esp + 0x8c]
push 0x10003194
push eax
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.MSVCR90.dll__wfopen_s]
add esp, 0xc
cmp eax, ebx
jne 0x10001b35
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x10001b35
push eax
call edi
add esp, 4
push esi
call dword [sym.imp.libcurl.dll_curl_easy_cleanup]
add esp, 4
call dword [sym.imp.libcurl.dll_curl_global_cleanup]
lea ecx, [esp + 0x58]
mov byte [esp + 0x80], 1
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x88]
mov byte [esp + 0x80], bl
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
mov dword [esp + 0x80], 0xffffffff
jmp 0x10001c15
mov ecx, dword [esp + 0x14]
push ecx
call dword [sym.imp.MSVCR90.dll_fclose]
push esi
call dword [sym.imp.libcurl.dll_curl_easy_cleanup]
add esp, 8
call dword [sym.imp.libcurl.dll_curl_global_cleanup]
lea ecx, [esp + 0x58]
mov byte [esp + 0x80], 1
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x88]
mov byte [esp + 0x80], bl
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [esp + 0xa4]
mov dword [esp + 0x80], 0xffffffff
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov al, 1
jmp 0x10001c24
push ebx
call dword [sym.imp.libcurl.dll_curl_easy_cleanup]
add esp, 4
call dword [sym.imp.libcurl.dll_curl_global_cleanup]
lea ecx, [esp + 0x58]
mov byte [esp + 0x80], 1
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x88]
mov byte [esp + 0x80], bl
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
mov dword [esp + 0x80], edi
lea ecx, [esp + 0xa4]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
xor al, al
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x60]
xor ecx, esp
call fcn.10001dd3
add esp, 0x70
ret