Function at 0x464de0
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push ecx
cmp dword [0x5e99f0], 0xa
push ebx
push esi
push edi
jne 0x464dfb
mov ebx, dword [0x5ef9c0]
jmp 0x464e03
mov eax, dword [0x5ef9c0]
lea ebx, [eax + eax]
cmp byte [0x5ef79d], 0
je 0x464e1a
cmp byte [0x5ef784], 0
je 0x464e1a
call fcn.004645e0
cmp byte [0x5ef79a], 0
mov edi, dword [sym.imp.KERNEL32.dll_CreateThread]
mov esi, dword [sym.imp.KERNEL32.dll_CreateEventA]
jne 0x464e3c
cmp byte [0x5ef79d], 0
je 0x464efc
push str.___Local_threads...
call fcn.004612c0
add esp, 4
mov dword [0x5f01e4], 0xffffffff
mov dword [0x5f01dc], 0
push 0
push 0
push 0
push 0
call esi
mov dword [0x5f01e0], eax
test eax, eax
je 0x4650dd
lea eax, [ebx*4]
push eax
call fcn.0055016a
mov esi, eax
add esp, 4
test esi, esi
je 0x464e9d
lea eax, [ebx*4]
push eax
push 0
push esi
call fcn.005446b0
add esp, 0xc
mov dword [0x5f01b0], esi
test esi, esi
je 0x4650dd
push 0x5f01bc
mov dword [0x5f01b8], 0
mov dword [0x5f01b4], ebx
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
xor esi, esi
cmp dword [0x5f01b4], esi
jle 0x464ef6
push 0
push 0
push 0x5f01b0
push 0x4752d0
push 0
push 0
call edi
mov ecx, dword [0x5f01b0]
mov dword [ecx + esi*4], eax
inc esi
cmp esi, dword [0x5f01b4]
jl 0x464ed0
mov esi, dword [sym.imp.KERNEL32.dll_CreateEventA]
cmp byte [0x5ef787], 0
je 0x464fc6
push str.___Network_shares_threads...
call fcn.004612c0
add esp, 4
mov dword [0x5f021c], 0xffffffff
mov dword [0x5f0214], 0
push 0
push 0
push 0
push 0
call esi
mov dword [0x5f0218], eax
test eax, eax
je 0x4650c2
lea eax, [ebx*4]
push eax
call fcn.0055016a
mov esi, eax
add esp, 4
test esi, esi
je 0x464f6a
lea eax, [ebx*4]
push eax
push 0
push esi
call fcn.005446b0
add esp, 0xc
mov dword [0x5f01e8], esi
test esi, esi
je 0x4650c2
push 0x5f01f4
mov dword [0x5f01f0], 0
mov dword [0x5f01ec], ebx
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
xor esi, esi
cmp dword [0x5f01ec], esi
jle 0x464fc6
nop dword [eax]
push 0
push 0
push 0x5f01e8
push 0x4752d0
push 0
push 0
call edi
mov ecx, dword [0x5f01e8]
mov dword [ecx + esi*4], eax
inc esi
cmp esi, dword [0x5f01ec]
jl 0x464fa0
xor esi, esi
cmp byte [0x5ef79a], 0
jne 0x464fda
cmp byte [0x5ef79d], 0
je 0x46500f
push str.___Enumeration_drives...
call fcn.004612c0
mov dl, byte [0x5ef79d]
add esp, 4
mov ecx, 0x5f0128
push 1
call fcn.004586a0
add esp, 4
push 0
push 0
push 0
push 0x473800
push 0
push 0
call edi
mov esi, eax
cmp byte [0x5ef787], 0
je 0x46502a
call fcn.00466f20
push str.___Network_Scanner_completed.
call fcn.004612c0
add esp, 4
cmp byte [0x5ef79a], 0
jne 0x46503c
cmp byte [0x5ef79d], 0
je 0x465077
test esi, esi
je 0x465056
push str.___Waiting_for_local_search...
call fcn.004612c0
add esp, 4
push 0xffffffffffffffff
push esi
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push str.___Added_STOP_MARKER_to_local_thread.
call fcn.004612c0
add esp, 4
xor ecx, ecx
call fcn.00475420
push str.___Local_Scan_completed.
call fcn.004612c0
add esp, 4
cmp byte [0x5ef787], 0
je 0x4650a4
push str.___Added_STOP_MARKER_to_network_thread.
call fcn.004612c0
add esp, 4
mov ecx, 1
call fcn.00475420
push str.___Network_processing_completed.
call fcn.004612c0
add esp, 4
cmp byte [0x5ef79d], 0
je 0x4650f1
cmp byte [0x5ef784], 0
jne 0x4650f1
call fcn.004645e0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.____Cant_create_network_threadpool__Code__lu
call fcn.004612c0
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.____Cant_create_local_threadpool__Code__lu
call fcn.004612c0
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret