Function at 0x100003028
Capabilities:
Connect network resource

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2e0
mov rax, qword [0x10000b110]
xor rax, rsp
mov qword [rsp + 0x2d0], rax
xor esi, esi
mov rbp, rcx
mov qword [rsp + 0x80], rcx
mov ecx, esi
mov r14, r8
mov r12, rdx
mov dword [rsp + 0x54], esi
mov r15d, esi
mov qword [rsp + 0x68], rsi
mov dword [rsp + 0x50], ecx
mov dword [rsp + 0x60], ecx
mov qword [rsp + 0x78], rsi
mov rbx, rbp
mov dword [rsp + 0x5c], esi
mov r13d, esi
call fcn.1000043c4
mov eax, 0x104
cmp r12, rsi
je 0x1000030df
lea edi, [rsi + 0x5c]
cmp word [r12], di
jne 0x1000030af
lea r8, [r12 + 4]
cmp word [r12 + 2], di
je 0x1000030b2
mov r8, r12
lea rcx, [0x100010f90]
mov r9, rax
mov edx, 0x105
call fcn.100008afa
lea rcx, [0x100010f90]
mov edx, edi
call qword [sym.imp.msvcrt.dll_wcschr]
cmp rax, rsi
je 0x1000030e6
mov word [rax], si
jmp 0x1000030e6
mov word [0x100010f90], si
lea rcx, [0x10000e650]
xor r8d, r8d
mov edx, 0x202
call fcn.100001ed4
mov edx, 1
cmp rbp, rsi
je 0x100003159
lea ecx, [rdx + 1]
lea rdi, [0x10000196c]
mov rsi, rbp
repe cmpsw word [rsi], word [rdi]
mov rsi, r13
mov rcx, rbp
mov eax, esi
sete al
mov edi, esi
cmp eax, esi
cmovne edi, edx
mov dword [rsp + 0x5c], edi
call fcn.100006910
cmp eax, esi
je 0x10000313d
xor ecx, ecx
call fcn.10000468c
mov rbx, rax
cmp rbx, rsi
jne 0x100003159
xor edx, edx
mov ecx, 0xf50
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
mov rax, rsi
mov qword [rsp + 0xb0], rsi
mov qword [rsp + 0x98], rsi
mov dword [rsp + 0x8c], esi
mov qword [rsp + 0xa0], rax
cmp rbx, rsi
je 0x10000320a
lea rdx, [rsp + 0x70]
xor r8d, r8d
mov rcx, rbx
call sub.netutils.dll_NetpwPathType
cmp eax, esi
je 0x1000031af
xor edx, edx
mov ecx, 0xe84
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
mov eax, dword [rsp + 0x70]
cmp eax, 0x4000
jne 0x1000031c8
mov eax, 1
mov dword [rsp + 0x8c], eax
jmp 0x1000031e1
cmp eax, 0x4010
je 0x1000031d6
cmp eax, 0x4020
jne 0x1000031f3
mov dword [rsp + 0x8c], 2
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x98], rbx
jmp 0x100003220
xor edx, edx
mov ecx, 0xe84
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
lea rcx, [0x100001508]
mov dword [rsp + 0x8c], esi
mov qword [rsp + 0x98], rcx
cmp r12, rsi
movzx ebp, si
cmovne rax, r12
mov qword [rsp + 0xa0], rax
cmp qword [0x100010510], rsi
je 0x1000033fc
lea rsi, [0x100010510]
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, str._PERSISTENT
repne scasw ax, word [rdi]
lea edi, [rax + 1]
lea rdx, str._PERSISTENT
not rcx
sub rcx, rdi
mov r8, rcx
mov rcx, qword [rsi]
call qword [sym.imp.msvcrt.dll_wcsncmp]
xor ecx, ecx
cmp eax, ecx
jne 0x1000032d2
mov rcx, qword [rsi]
lea edx, [rdi + 0x39]
mov dword [rsp + 0x54], edi
call qword [sym.imp.msvcrt.dll_wcschr]
xor esi, esi
cmp rax, rsi
je 0x100003298
mov word [rax], si
lea rcx, [rax + 2]
jmp 0x10000329b
mov rcx, rsi
cmp rcx, rsi
je 0x100003460
lea rdx, [rsp + 0x58]
call fcn.100007500
cmp eax, esi
jne 0x100003434
mov ecx, esi
mov rax, rdi
cmp dword [rsp + 0x58], eax
sete cl
xor r8d, r8d
mov dword [rsp + 0x50], ecx
mov dword [rsp + 0x60], ecx
jmp 0x1000033dc
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, str._USER
repne scasw ax, word [rdi]
lea rdx, str._USER
not rcx
lea r8, [rcx - 1]
mov rcx, qword [rsi]
call qword [sym.imp.msvcrt.dll_wcsncmp]
xor r8d, r8d
cmp eax, r8d
jne 0x100003348
mov rcx, qword [rsi]
lea edx, [r8 + 0x3a]
call qword [sym.imp.msvcrt.dll_wcschr]
xor r8d, r8d
cmp rax, r8
je 0x100003320
mov word [rax], r8w
add rax, 2
jmp 0x100003323
mov rax, r8
mov qword [rsp + 0x68], rax
cmp rax, r8
jne 0x1000033cf
xor edx, edx
mov ecx, 0xdb1
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
mov rsi, qword [rsi]
lea rdi, str._SMARTCARD
mov rax, rsi
sub rdi, rsi
movzx edx, word [rax]
movzx ecx, word [rax + rdi]
sub edx, ecx
jne 0x10000336b
add rax, 2
test ecx, ecx
jne 0x100003358
cmp edx, r8d
jne 0x10000337a
mov eax, 1
mov r15d, eax
jmp 0x1000033d4
lea rdi, str._SAVECRED
mov rax, rsi
sub rdi, rsi
movzx edx, word [rax]
movzx ecx, word [rax + rdi]
sub edx, ecx
jne 0x10000339a
add rax, 2
test ecx, ecx
jne 0x100003387
cmp edx, r8d
jne 0x1000033a9
mov eax, 1
mov r13d, eax
jmp 0x1000033d4
lea rdx, str._DELETE
sub rdx, rsi
movzx ecx, word [rsi]
movzx eax, word [rsi + rdx]
sub ecx, eax
jne 0x1000033c6
add rsi, 2
test eax, eax
jne 0x1000033b3
cmp ecx, r8d
je 0x100003477
mov eax, 1
mov edi, dword [rsp + 0x54]
mov ecx, dword [rsp + 0x50]
add bp, ax
lea rdx, [0x100010510]
movzx eax, bp
lea rsi, [rdx + rax*8]
cmp qword [rsi], r8
jne 0x100003246
xor esi, esi
cmp edi, esi
jne 0x10000340e
lea rcx, [rsp + 0x60]
call fcn.10000476c
mov ecx, dword [rsp + 0x60]
mov dword [rsp + 0x50], ecx
mov rax, qword [rsp + 0x68]
cmp rax, rsi
je 0x10000348e
cmp r13d, esi
je 0x10000348e
xor edx, edx
mov ecx, 0xdb6
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
lea rcx, [0x100010510]
movzx eax, bp
mov edx, edi
mov rax, qword [rcx + rax*8]
mov ecx, 0xf70
mov qword [0x100010f10], rax
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
xor edx, edx
mov ecx, 0xdb1
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
xor edx, edx
mov ecx, 0xdb6
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
cmp r15d, esi
je 0x1000035af
cmp r13d, esi
je 0x1000034b3
xor edx, edx
mov ecx, 0xdb6
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
lea rbp, [0x10000e240]
cmp rax, rsi
je 0x1000034d6
mov r9d, 0x201
mov r8, rax
mov rcx, rbp
lea edx, [r9 + 1]
call fcn.100008afa
jmp 0x1000034dd
mov word [0x10000e240], si
cmp r14, rsi
je 0x1000034f8
lea rdi, [0x100001588]
mov rsi, r14
mov ecx, 2
repe cmpsw word [rsi], word [rdi]
jne 0x100003555
xor esi, esi
lea rdi, [0x10000e650]
mov word [0x10000e650], si
mov dword [rsp + 0x40], 0x102
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], 0x100
lea rcx, [0x100010f90]
mov r9, rbp
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x201
call qword [sym.imp.credui.dll_CredUICmdLinePromptForCredentialsW]
cmp eax, esi
je 0x1000035a0
xor edx, edx
mov ecx, eax
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
xor r8d, r8d
mov rcx, r14
lea edx, [r8 + 2]
call sub.netutils.dll_NetpwNameValidate
xor esi, esi
cmp eax, esi
je 0x10000357f
xor edx, edx
mov ecx, 0xe8f
call fcn.100005818
lea ecx, [rsi + 2]
call fcn.100005934
int3
mov r9d, 0x100
lea rdi, [0x10000e650]
mov r8, r14
lea edx, [r9 + 1]
mov rcx, rdi
call fcn.100008afa
jmp 0x100003506
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x78], rdi
jmp 0x1000036bf
cmp r14, rsi
je 0x1000036c3
cmp r13d, esi
je 0x1000035d4
xor edx, edx
mov ecx, 0xdb6
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
mov ebp, 2
lea rdi, [0x100001588]
mov rsi, r14
mov rcx, rbp
repe cmpsw word [rsi], word [rdi]
jne 0x100003693
lea r14, [0x10000e650]
mov qword [0x100010f10], r12
lea edi, [rbp + 1]
xor esi, esi
lea eax, [rbp - 1]
mov rcx, qword [0x100015f88]
lea r9, [0x100010f10]
lea rdx, [0x1000018a8]
mov r8d, 0x1105
mov dword [rsp + 0x20], eax
call fcn.10000579c
lea r8, [rsp + 0x58]
lea rcx, [0x10000e650]
mov edx, 0x101
call fcn.100005d94
cmp eax, esi
je 0x10000366a
mov ecx, 0xe8f
call fcn.10000572c
mov eax, 1
sub edi, eax
jne 0x100003605
xor edx, edx
mov ecx, 0xe96
call fcn.100005818
mov ecx, ebp
call fcn.100005934
int3
lea rcx, [0x10000e650]
xor r8d, r8d
mov edx, ebp
call sub.netutils.dll_NetpwNameValidate
cmp eax, esi
je 0x1000036ba
xor edx, edx
mov ecx, 0xe8f
call fcn.100005818
mov ecx, ebp
call fcn.100005934
int3
xor r8d, r8d
mov edx, ebp
mov rcx, r14
call sub.netutils.dll_NetpwNameValidate
xor ecx, ecx
cmp eax, ecx
je 0x1000036ba
xor edx, edx
mov ecx, 0xe8f
call fcn.100005818
mov ecx, ebp
call fcn.100005934
int3
mov qword [rsp + 0x78], r14
mov ecx, dword [rsp + 0x50]
movsxd rsi, r15d
mov r15, qword [rsp + 0x78]
movsxd rbp, r13d
mov r13, qword [rsp + 0x68]
xor edx, edx
mov edi, edx
cmp ecx, edx
je 0x100003798
mov dword [rsp + 0x58], 0x104
cmp rbx, rdx
je 0x100003798
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0xc0]
mov rcx, rbx
call sub.MPR.dll_WNetGetConnectionW
xor edx, edx
cmp eax, edx
je 0x100003909
cmp eax, 0x4b1
jne 0x100003793
lea rcx, [rsp + 0xc0]
mov rdx, r12
call qword [sym.imp.msvcrt.dll__wcsicmp]
xor edx, edx
cmp eax, edx
je 0x100003798
mov eax, dword [0x100010f60]
lea edi, [rdx + 2]
cmp eax, edi
je 0x1000038df
cmp eax, edx
jne 0x10000377a
lea rax, [rsp + 0xc0]
lea r9d, [rdx + 1]
lea rcx, [0x100010f10]
mov r8d, 0x14a1
mov edx, edi
mov qword [0x100010f10], rbx
mov qword [0x100010f18], rax
call fcn.1000075f0
xor ecx, ecx
cmp eax, ecx
je 0x1000038c5
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 1]
call sub.MPR.dll_WNetCancelConnection2W
xor edx, edx
cmp eax, edx
jne 0x1000038cd
mov edi, 1
cmp r14, rdx
jne 0x1000037b1
cmp rsi, rdx
jne 0x1000037b1
or edi, 0x808
cmp rbp, rdx
je 0x1000037b1
bts edi, 0xc
lea rcx, [rsp + 0x88]
mov r9d, edi
mov r8, r13
mov rdx, r15
call sub.MPR.dll_WNetAddConnection2W
xor r9d, r9d
mov edi, eax
mov ecx, eax
cmp eax, r9d
je 0x100003961
sub ecx, 5
je 0x1000037f7
sub ecx, 0x3e
je 0x100003839
sub ecx, 0x12
je 0x100003801
sub ecx, 1
je 0x1000037f7
cmp ecx, 0x4d8
jne 0x10000388c
mov ecx, eax
call fcn.10000450c
xor r9d, r9d
mov rcx, qword [rsp + 0x80]
call fcn.100006910
cmp eax, r9d
je 0x10000394c
mov eax, 0xffff
lea rcx, [0x100001588]
add word [rbx], ax
call fcn.100006910
cmp eax, r9d
jne 0x100003895
lea rbx, [0x100001588]
jmp 0x1000038ab
cmp word [r12], r9w
je 0x100003880
cmp word [r12 + 2], r9w
je 0x100003880
lea rcx, [r12 + 4]
lea rdx, [0x1000015b8]
call qword [sym.imp.msvcrt.dll_wcspbrk]
xor ecx, ecx
cmp rax, rcx
je 0x10000388c
lea rdx, [rax + 2]
lea rcx, [0x100001898]
call qword [sym.imp.msvcrt.dll__wcsicmp]
xor r9d, r9d
cmp eax, r9d
mov ecx, r9d
sete cl
jmp 0x100003883
mov ecx, r9d
cmp ecx, r9d
jne 0x10000391e
mov ecx, edi
call fcn.10000450c
jmp 0x1000038b3
mov rcx, rbx
call fcn.10000468c
xor ecx, ecx
mov rbx, rax
cmp rax, rcx
je 0x100003935
mov qword [rsp + 0x98], rbx
cmp edi, 0x55
jne 0x1000039f7
mov ecx, dword [rsp + 0x50]
jmp 0x1000036d3
mov ecx, edi
call fcn.100005934
int3
mov ecx, 0xe5e
call fcn.100005818
mov ecx, edi
call fcn.100005934
int3
lea rax, [rsp + 0xc0]
mov edx, edi
mov ecx, 0xe6f
mov qword [0x100010f18], rax
mov qword [0x100010f10], rbx
call fcn.100005818
mov ecx, edi
call fcn.100005934
int3
mov ecx, 0x55
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
xor edx, edx
mov ecx, 0xe9f
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
xor edx, edx
mov ecx, 0xf50
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
xor edx, edx
lea ecx, [rdx + 0x55]
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
cmp dword [rsp + 0x54], r9d
je 0x10000398d
mov ecx, dword [rsp + 0x50]
call fcn.10000484c
xor r9d, r9d
cmp eax, r9d
je 0x10000398d
xor edx, edx
mov ecx, eax
call fcn.100005818
mov ecx, 2
call fcn.100005934
int3
cmp dword [rsp + 0x340], r9d
je 0x1000039e7
mov rcx, qword [rsp + 0x80]
call fcn.100006910
cmp eax, r9d
je 0x1000039df
mov rcx, qword [0x100015f88]
lea r9, [0x100010f10]
lea rdx, [0x1000018a8]
mov r8d, 0xf4f
mov qword [0x100010f10], rbx
mov qword [0x100010f18], r12
mov dword [rsp + 0x20], 2
call fcn.10000579c
call fcn.1000056f8
xor r9d, r9d
cmp dword [rsp + 0x5c], r9d
je 0x1000039f7
movzx ecx, word [rbx]
call fcn.100001df4
int3
mov rcx, qword [rsp + 0x2d0]
xor rcx, rsp
call fcn.100008ab0
mov rbx, qword [rsp + 0x338]
add rsp, 0x2e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret