Function at 0x5808d4
Capabilities:
Connect network resource
Get session user name

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0xc
push 0
push 0
dec ecx
jne 0x5808dd
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
call fcn.004051e0
mov eax, dword [ebp - 8]
call fcn.004051e0
mov eax, dword [ebp + 0xc]
call fcn.004051e0
xor eax, eax
push ebp
push 0x580e86
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x580e0a
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp + 8]
mov edx, 0x580ea0
call fcn.00404d84
lea ecx, [ebp - 0x40]
mov edx, 2
mov eax, dword [ebp - 4]
call fcn.0043e430
mov eax, dword [ebp - 0x40]
mov edx, 0x580eb4
call fcn.0040513c
je 0x58095d
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x580e4e
mov byte [ebp - 0x15], 0
mov eax, dword [0x5a5d58]
mov eax, dword [eax]
mov eax, dword [eax + 0x5b8]
mov eax, dword [eax + 0x22c]
call fcn.0045c3e4
test eax, eax
jle 0x580a01
mov eax, dword [0x5a5d58]
mov eax, dword [eax]
mov eax, dword [eax + 0x5b8]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x22c]
call fcn.0045c3e4
mov ebx, eax
dec ebx
test ebx, ebx
jl 0x580a01
inc ebx
xor esi, esi
mov eax, dword [0x5a5f50]
mov eax, dword [eax]
call fcn.0049fa8c
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x22c]
mov edx, esi
call fcn.0045c414
mov eax, dword [eax + 8]
lea ecx, [ebp - 0x48]
xor edx, edx
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x48]
lea edx, [ebp - 0x44]
call fcn.00409448
mov eax, dword [ebp - 0x44]
push eax
lea edx, [ebp - 0x4c]
mov eax, dword [ebp - 4]
call fcn.00409448
mov edx, dword [ebp - 0x4c]
pop eax
call fcn.0040513c
jne 0x5809fd
mov byte [ebp - 0x15], 1
jmp 0x580a01
inc esi
dec ebx
jne 0x5809a9
cmp byte [ebp - 0x15], 0
jne 0x580d88
mov dword [ebp - 0x10], 0xff
mov eax, dword [ebp - 0x10]
call fcn.004027d8
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp - 0xc]
push eax
call sub.advapi32.dll_GetUserNameA
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 0xc]
call fcn.00404f28
lea edx, [ebp - 0x50]
mov eax, dword [ebp - 8]
call fcn.0040967c
cmp dword [ebp - 0x50], 0
jne 0x580a64
lea edx, [ebp - 0x54]
mov eax, dword [ebp + 0xc]
call fcn.0040967c
cmp dword [ebp - 0x54], 0
jne 0x580a64
lea eax, [ebp - 8]
mov edx, 0x580ec0
call fcn.00404dc8
mov dword [ebp - 0x3c], 2
xor eax, eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], 3
mov dword [ebp - 0x30], 1
xor eax, eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
call fcn.004051f0
mov dword [ebp - 0x28], eax
xor eax, eax
mov dword [ebp - 0x24], eax
xor eax, eax
mov dword [ebp - 0x20], eax
xor eax, eax
push ebp
push 0x580cdb
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x10
mov eax, dword [ebp - 8]
call fcn.004051f0
push eax
mov eax, dword [ebp + 0xc]
call fcn.004051f0
push eax
lea eax, [ebp - 0x3c]
push eax
call sub.mpr.dll_WNetAddConnection2A
mov ebx, eax
test ebx, ebx
jne 0x580adb
mov eax, dword [ebp + 8]
mov edx, 0x580ea0
call fcn.00404d84
jmp 0x580cd1
push 1
mov eax, dword [ebp - 0x14]
call fcn.004051f0
push eax
push 0x580ec8
lea eax, [ebp - 0x3c]
push eax
call sub.mpr.dll_WNetAddConnection2A
test eax, eax
jne 0x580b0a
mov eax, dword [ebp + 8]
mov edx, 0x580ea0
call fcn.00404d84
jmp 0x580cd1
cmp ebx, 0x4b2
jg 0x580b64
je 0x580c79
cmp ebx, 0x55
jg 0x580b41
je 0x580be0
sub ebx, 5
je 0x580bce
sub ebx, 0x3d
je 0x580bf2
dec ebx
je 0x580c16
jmp case.0x580b73.1207
sub ebx, 0x56
je 0x580c97
sub ebx, 0x54
je 0x580c4c
sub ebx, 0x406
je 0x580c04
jmp case.0x580b73.1207
add ebx, 0xfffffb4d
cmp ebx, 0x14
ja case.0x580b73.1207
jmp dword [ebx*4 + 0x580b7a]
mov eax, dword [ebp + 8]
mov edx, 0x580ed4
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x580f08
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x580f48
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x580f84
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x580fc0
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x580ff8
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x581038
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x581068
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x581090
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x5810c4
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x581110
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x58115c
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x581198
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x5811cc
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x581210
call fcn.00404d84
jmp 0x580cd1
mov eax, dword [ebp + 8]
mov edx, 0x581240
call fcn.00404d84
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x580cf2
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov edx, 0x580ea0
call fcn.0040513c
jne 0x580d7b
mov eax, dword [0x5a5d58]
mov eax, dword [eax]
mov eax, dword [eax + 0x5b8]
mov eax, dword [eax + 0x22c]
call fcn.0045c388
mov ebx, eax
xor edx, edx
mov eax, ebx
call fcn.0045be28
lea edx, [ebp - 0x58]
mov eax, dword [ebp - 4]
call fcn.00409448
mov edx, dword [ebp - 0x58]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
call fcn.0040c0ac
add esp, 0xfffffff8
fstp qword [esp]
wait
lea edx, [ebp - 0x5c]
mov eax, 0x5812a0
call fcn.0040cdb0
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebx + 8]
mov edx, 0x5812c0
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov ecx, 4
xor edx, edx
mov eax, ebx
call fcn.0045bfe0
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xc]
call fcn.004027f8
jmp 0x580e00
mov eax, dword [0x5a5d58]
mov eax, dword [eax]
mov eax, dword [eax + 0x5b8]
mov eax, dword [eax + 0x22c]
call fcn.0045c388
mov ebx, eax
xor edx, edx
mov eax, ebx
call fcn.0045be28
lea edx, [ebp - 0x60]
mov eax, dword [ebp - 4]
call fcn.00409448
mov edx, dword [ebp - 0x60]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
call fcn.0040c0ac
add esp, 0xfffffff8
fstp qword [esp]
wait
lea edx, [ebp - 0x64]
mov eax, 0x5812a0
call fcn.0040cdb0
mov edx, dword [ebp - 0x64]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebx + 8]
mov edx, 0x5812c0
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov ecx, 4
xor edx, edx
mov eax, ebx
call fcn.0045bfe0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x580e4e
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x580e8d
lea eax, [ebp - 0x64]
mov edx, 0xa
call fcn.00404d54
lea eax, [ebp - 0x14]
call fcn.00404d30
lea eax, [ebp - 8]
mov edx, 2
call fcn.00404d54
lea eax, [ebp + 0xc]
call fcn.00404d30
ret