Function at 0x140014d00
Capabilities:
Connect network resource
Enumerate disk volumes
Get disk information

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x8f0
mov r15, rdx
movsxd rdi, ecx
xor r12d, r12d
mov r14d, r12d
mov dword [rsp + 0x938], r12d
mov rdx, qword [rdx]
xorps xmm0, xmm0
movups xmmword [rsp + 0x240], xmm0
mov qword [rsp + 0x250], r12
mov qword [rsp + 0x258], r12
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp word [rdx + r8*2], r12w
jne 0x140014d50
lea rcx, [rsp + 0x240]
call fcn.140001be0
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0x3a0]
call fcn.140017260
mov rbx, rax
lea r9, [0x140050ac8]
cmp r9, rax
je 0x140014e14
mov rdx, qword [0x140050ae0]
cmp rdx, 8
jb 0x140014dd5
mov rcx, qword [0x140050ac8]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140014dd0
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140016572
mov rcx, r8
call fcn.1400195ec
mov qword [0x140050ad8], r12
mov qword [0x140050ae0], 7
mov word [0x140050ac8], r12w
movups xmm0, xmmword [rbx]
movups xmmword [0x140050ac8], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x140050ad8], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 7
mov word [rbx], r12w
mov rdx, qword [rsp + 0x3b8]
cmp rdx, 8
jb 0x140014e5c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014e57
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140016572
call fcn.1400195ec
xor bl, bl
mov byte [rsp + 0x938], bl
mov byte [rsp + 0x940], bl
xorps xmm0, xmm0
movups xmmword [rsp + 0x130], xmm0
mov qword [rsp + 0x140], r12
mov qword [rsp + 0x148], 0xf
mov byte [rsp + 0x130], bl
mov byte [rsp + 0x948], bl
movups xmmword [rsp + 0x168], xmm0
mov qword [rsp + 0x178], r12
mov qword [rsp + 0x180], 7
mov word [rsp + 0x168], r12w
mov rsi, r12
test rdi, rdi
jle 0x1400152e6
lea r13, str._network
mov rdx, qword [r15 + rsi*8]
xorps xmm0, xmm0
movups xmmword [rsp + 0xd8], xmm0
mov qword [rsp + 0xe8], r12
mov qword [rsp + 0xf0], r12
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x140014f00
lea rcx, [rsp + 0xd8]
call fcn.140001be0
nop
lea r8, [rsp + 0xd8]
mov r10, qword [rsp + 0xf0]
cmp r10, 8
setae bl
mov r9, qword [rsp + 0xd8]
cmovae r8, r9
mov r11, qword [rsp + 0xe8]
cmp r11, 8
jne 0x140014f75
mov rdx, r11
mov rcx, r13
sub r8, r13
movzx eax, word [r8 + rcx]
cmp ax, word [rcx]
jne 0x140014f75
add rcx, 2
sub rdx, 1
jne 0x140014f53
mov bl, 1
mov byte [rsp + 0x938], bl
jmp 0x14001529f
lea r8, [rsp + 0xd8]
test bl, bl
cmovne r8, r9
cmp r11, 8
jb 0x14001516f
mov edx, 8
lea rax, str._shares
mov rcx, rax
sub r8, rax
nop
movzx eax, word [rcx + r8]
cmp ax, word [rcx]
jne 0x14001516f
add rcx, 2
sub rdx, 1
jne 0x140014fa0
mov byte [rsp + 0x940], 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x1e0], xmm0
mov qword [rsp + 0x1f0], r12
mov qword [rsp + 0x1f8], r12
lea rax, [r11 - 8]
mov r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
lea rdx, [rsp + 0xd8]
test bl, bl
cmovne rdx, r9
add rdx, 0x10
lea rcx, [rsp + 0x1e0]
call fcn.140001be0
bts r14d, 8
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x260]
call fcn.140017a90
mov rbx, rax
lea rax, [rsp + 0x130]
cmp rax, rbx
je 0x1400150bf
mov rdx, qword [rsp + 0x148]
cmp rdx, 0x10
jb 0x14001507d
inc rdx
mov rcx, qword [rsp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015078
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140016583
call fcn.1400195ec
mov qword [rsp + 0x140], r12
mov qword [rsp + 0x148], 0xf
mov byte [rsp + 0x130], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x130], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x140], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsp + 0x278]
cmp rdx, 0x10
jb 0x140015102
inc rdx
mov rcx, qword [rsp + 0x260]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400150fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140016583
call fcn.1400195ec
mov qword [rsp + 0x270], r12
mov qword [rsp + 0x278], 0xf
mov byte [rsp + 0x260], 0
mov rdx, qword [rsp + 0x1f8]
cmp rdx, 8
jb 0x140015287
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x1e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015165
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140016589
call fcn.1400195ec
jmp 0x140015287
lea r8, [rsp + 0xd8]
test bl, bl
cmovne r8, r9
cmp r11, 6
jb 0x140015297
mov edx, 6
lea rax, str._path
mov rcx, rax
sub r8, rax
nop dword [rax]
movzx eax, word [r8 + rcx]
cmp ax, word [rcx]
jne 0x140015297
add rcx, 2
sub rdx, 1
jne 0x1400151a0
mov byte [rsp + 0x948], 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x280], xmm0
mov qword [rsp + 0x290], r12
mov qword [rsp + 0x298], r12
lea rax, [r11 - 6]
mov r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
lea rdx, [rsp + 0xd8]
test bl, bl
cmovne rdx, r9
add rdx, 0xc
lea rcx, [rsp + 0x280]
call fcn.140001be0
bts r14d, 9
mov rax, qword [rsp + 0x180]
cmp rax, 8
jb 0x140015259
lea rdx, [rax*2 + 2]
mov rcx, qword [rsp + 0x168]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015254
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001658f
call fcn.1400195ec
movups xmm0, xmmword [rsp + 0x280]
movups xmmword [rsp + 0x168], xmm0
movups xmm1, xmmword [rsp + 0x290]
movups xmmword [rsp + 0x178], xmm1
psrldq xmm1, 8
movq qword [rsp + 0x180], xmm1
mov r9, qword [rsp + 0xd8]
mov r10, qword [rsp + 0xf0]
movzx ebx, byte [rsp + 0x938]
cmp r10, 8
jb 0x1400152da
lea rdx, [r10*2 + 2]
mov rax, r9
cmp rdx, 0x1000
jb 0x1400152d2
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140016595
mov rcx, r9
call fcn.1400195ec
inc rsi
cmp rsi, rdi
jl 0x140014ed1
xorps xmm0, xmm0
movups xmmword [rsp + 0x150], xmm0
mov ecx, 0x20
call fcn.1400195f4
mov dword [rax], 1
mov dword [rax + 4], 2
xor ecx, ecx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], r12
mov dword [rax + 0x18], r12d
mov qword [rsp + 0x160], rax
mov ecx, 8
call fcn.1400195f4
lea rcx, [0x1400138c0]
mov qword [rax], rcx
mov qword [rsp + 0x338], rax
lea rcx, [rsp + 0x158]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r12d
mov r9, rax
lea r8, [0x140017180]
xor edx, edx
xor ecx, ecx
call fcn.14002b514
mov qword [rsp + 0x150], rax
test rax, rax
je 0x1400166d3
cmp dword [rsp + 0x158], 0
je 0x140016578
movups xmm0, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0x390], xmm0
lea rcx, [rsp + 0x390]
call fcn.140019374
test eax, eax
jne 0x14001659b
xorps xmm0, xmm0
movups xmmword [rsp + 0x4c0], xmm0
movups xmmword [rsp + 0x150], xmm0
mov rcx, qword [rsp + 0x160]
test rcx, rcx
je 0x1400153eb
mov eax, 0xfffffffe
lock xadd dword [rcx + 4], eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x1400153eb
mov eax, 0xffffffff
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x1400153eb
lea edx, [rax + 0x1f]
call fcn.1400195ec
cmp dword [rsp + 0x158], 0
jne 0x1400165a6
call fcn.140003180
test al, al
je 0x14001648e
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r12
test bl, bl
jne 0x1400154fd
mov edx, 0x104
lea rcx, [rsp + 0x4d0]
call qword [sym.imp.KERNEL32.dll_FindFirstVolumeW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x1400154fd
nop dword [rax]
lea rax, [rsp + 0x4d0]
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp word [rax + rcx*2], 0
jne 0x140015450
dec rcx
cmp word [rsp + 0x4d0], 0x5c
jne 0x1400154f4
cmp word [rsp + 0x4d2], 0x5c
jne 0x1400154f4
cmp word [rsp + 0x4d4], 0x3f
jne 0x1400154f4
cmp word [rsp + 0x4d6], 0x5c
jne 0x1400154f4
lea rbx, [rsp + 0x4d0]
lea rbx, [rbx + rcx*2]
cmp word [rbx], 0x5c
jne 0x1400154f4
mov word [rbx], r12w
mov r8d, 0x104
lea rdx, [rsp + 0x6e0]
lea rcx, [rsp + 0x4d8]
call qword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
mov word [rbx], 0x5c
test eax, eax
je 0x1400154f4
lea rcx, [rsp + 0x4d0]
call fcn.140011af0
mov r8d, 0x104
lea rdx, [rsp + 0x4d0]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextVolumeW]
test eax, eax
jne 0x140015440
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindVolumeClose]
lea r13, [0x140013840]
movabs r15, 0x7ffffffffffffffe
mov r14, qword [rsp + 0x48]
mov eax, dword [0x140050a70]
movzx edi, byte [rsp + 0x938]
lea rbx, [0x140048790]
cmp eax, 2
jge 0x1400163a5
cmp byte [rsp + 0x940], 0
jne 0x140015d0b
test dil, dil
jne 0x140015ac3
cmp byte [rsp + 0x948], dil
jne 0x1400158ee
lea rcx, [rsp + 0x188]
call fcn.140017650
nop
mov rcx, qword [rsp + 0x188]
mov rdi, rcx
mov rsi, qword [rsp + 0x190]
cmp rdi, rsi
je 0x14001575c
xorps xmm0, xmm0
movups xmmword [rsp + 0xa0], xmm0
mov ecx, 0x20
call fcn.1400195f4
mov dword [rax], 1
mov dword [rax + 4], 2
xor ecx, ecx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], r12
mov dword [rax + 0x18], r12d
mov qword [rsp + 0xb0], rax
mov ecx, 0x28
call fcn.1400195f4
mov rbx, rax
mov qword [rsp + 0x340], rax
mov rdx, rdi
mov rcx, rax
call fcn.140001e30
mov qword [rbx + 0x20], r13
mov qword [rsp + 0x348], rbx
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r12d
mov r9, rbx
lea r8, [0x1400171b0]
xor edx, edx
xor ecx, ecx
call fcn.14002b514
mov qword [rsp + 0xa0], rax
test rax, rax
je 0x1400165d1
cmp r14, qword [rsp + 0x50]
je 0x140015667
xorps xmm0, xmm0
movups xmmword [rsp + 0x4b0], xmm0
movups xmm1, xmmword [rsp + 0xa0]
movups xmmword [rsp + 0x4a0], xmm1
movups xmmword [rsp + 0xa0], xmm0
movups xmmword [r14], xmm1
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0xb0], r12
mov qword [r14 + 0x10], rax
add r14, 0x18
mov qword [rsp + 0x48], r14
jmp 0x140015681
lea r8, [rsp + 0xa0]
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.140016c80
mov r14, qword [rsp + 0x48]
mov eax, dword [rsp + 0xa8]
test eax, eax
je 0x140015702
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
je 0x1400156a5
call fcn.140012770
mov eax, dword [rsp + 0xa8]
test eax, eax
je 0x1400165ac
call sub.KERNEL32.dll_GetCurrentThreadId
cmp dword [rsp + 0xa8], eax
je 0x1400165b5
movups xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x2f0], xmm0
xor edx, edx
lea rcx, [rsp + 0x2f0]
call fcn.140019398
test eax, eax
jne 0x1400165c0
xorps xmm0, xmm0
movups xmmword [rsp + 0x490], xmm0
movups xmmword [rsp + 0xa0], xmm0
psrldq xmm0, 8
movd eax, xmm0
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
je 0x140015743
mov eax, 0xfffffffe
lock xadd dword [rcx + 4], eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x140015737
mov eax, 0xffffffff
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x140015737
lea edx, [rax + 0x1f]
call fcn.1400195ec
mov eax, dword [rsp + 0xa8]
mov r14, qword [rsp + 0x48]
test eax, eax
jne 0x1400165cb
add rdi, 0x20
mov rcx, qword [rsp + 0x188]
jmp 0x140015577
test rcx, rcx
je 0x1400157af
mov rdx, qword [rsp + 0x190]
call fcn.140001f70
mov rdx, qword [rsp + 0x198]
mov rcx, qword [rsp + 0x188]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400157aa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400165e4
call fcn.1400195ec
mov ebx, r12d
mov qword [rsp + 0x128], r12
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea r8, [rsp + 0x128]
mov edx, 8
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x14001581c
mov dword [rsp + 0x118], 4
lea rax, [rsp + 0x118]
mov qword [rsp + 0x20], rax
mov r9d, 4
lea r8, [rsp + 0x11c]
lea edx, [r9 + 0x10]
mov rcx, qword [rsp + 0x128]
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
cmovne ebx, dword [rsp + 0x11c]
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x14001582f
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x140015ac3
cmp dword [0x140050a70], 1
jne 0x1400158a2
mov rcx, qword [0x140050ad8]
mov rax, r15
sub rax, rcx
cmp rax, 9
jb 0x1400165ea
lea r9, [0x140050ac8]
cmp qword [0x140050ae0], 8
cmovae r9, qword [0x140050ac8]
mov qword [rsp + 0x30], 9
lea rax, str.__network
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x3c0]
call fcn.1400054d0
lea rcx, [rsp + 0x3c0]
call fcn.140018620
movzx edi, byte [rsp + 0x938]
lea rcx, str.____Wait_tasks..._n
call fcn.140001b40
mov rbx, qword [rsp + 0x40]
cmp rbx, r14
je 0x1400158db
mov rcx, rbx
call fcn.140012920
add rbx, 0x18
cmp rbx, r14
jne 0x1400158c0
mov r14, qword [rsp + 0x40]
mov qword [rsp + 0x48], r14
mov eax, dword [0x140050a70]
inc eax
mov dword [0x140050a70], eax
jmp 0x140015521
xorps xmm0, xmm0
movups xmmword [rsp + 0x88], xmm0
mov ecx, 0x20
call fcn.1400195f4
mov dword [rax], 1
mov dword [rax + 4], 2
xor ecx, ecx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], r12
mov dword [rax + 0x18], r12d
mov qword [rsp + 0x98], rax
mov ecx, 0x28
call fcn.1400195f4
mov rbx, rax
mov qword [rsp + 0x350], rax
lea rdx, [rsp + 0x168]
mov rcx, rax
call fcn.140001e30
mov qword [rbx + 0x20], r13
mov qword [rsp + 0x358], rbx
lea rax, [rsp + 0x90]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r12d
mov r9, rbx
lea r8, [0x1400171b0]
xor edx, edx
xor ecx, ecx
call fcn.14002b514
mov qword [rsp + 0x88], rax
test rax, rax
je 0x140016615
cmp r14, qword [rsp + 0x50]
je 0x1400159da
xorps xmm0, xmm0
movups xmmword [rsp + 0x480], xmm0
movups xmm1, xmmword [rsp + 0x88]
movups xmmword [rsp + 0x470], xmm1
movups xmmword [rsp + 0x88], xmm0
movups xmmword [r14], xmm1
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x98], r12
mov qword [r14 + 0x10], rax
add r14, 0x18
mov qword [rsp + 0x48], r14
jmp 0x1400159f4
lea r8, [rsp + 0x88]
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.140016c80
mov r14, qword [rsp + 0x48]
mov eax, dword [rsp + 0x90]
test eax, eax
je 0x140015a75
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x140015a18
call fcn.140012770
mov eax, dword [rsp + 0x90]
test eax, eax
je 0x1400165f0
call sub.KERNEL32.dll_GetCurrentThreadId
cmp dword [rsp + 0x90], eax
je 0x1400165f9
movups xmm0, xmmword [rsp + 0x88]
movaps xmmword [rsp + 0x300], xmm0
xor edx, edx
lea rcx, [rsp + 0x300]
call fcn.140019398
test eax, eax
jne 0x140016604
xorps xmm0, xmm0
movups xmmword [rsp + 0x450], xmm0
movups xmmword [rsp + 0x88], xmm0
psrldq xmm0, 8
movd eax, xmm0
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x140015ab6
mov eax, 0xfffffffe
lock xadd dword [rcx + 4], eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x140015aaa
mov eax, 0xffffffff
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x140015aaa
lea edx, [rax + 0x1f]
call fcn.1400195ec
mov eax, dword [rsp + 0x90]
mov r14, qword [rsp + 0x48]
test eax, eax
jne 0x14001660f
jmp 0x1400158aa
lea rcx, [rsp + 0x1a0]
call fcn.140017860
nop
mov rcx, qword [rsp + 0x1a0]
mov rdi, rcx
mov rsi, qword [rsp + 0x1a8]
cmp rdi, rsi
je 0x140015caf
mov rdx, rdi
cmp qword [rdi + 0x18], 8
jb 0x140015afa
mov rdx, qword [rdi]
lea rcx, str.___Found_remote_drive:__s_n
call fcn.140001b40
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov ecx, 0x20
call fcn.1400195f4
mov dword [rax], 1
mov dword [rax + 4], 2
xor ecx, ecx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], r12
mov dword [rax + 0x18], r12d
mov qword [rsp + 0x68], rax
mov ecx, 0x28
call fcn.1400195f4
mov rbx, rax
mov qword [rsp + 0x360], rax
mov rdx, rdi
mov rcx, rax
call fcn.140001e30
mov qword [rbx + 0x20], r13
mov qword [rsp + 0x368], rbx
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r12d
mov r9, rbx
lea r8, [0x1400171b0]
xor edx, edx
xor ecx, ecx
call fcn.14002b514
mov qword [rsp + 0x58], rax
test rax, rax
je 0x14001664d
cmp r14, qword [rsp + 0x50]
je 0x140015bd5
xorps xmm0, xmm0
movups xmmword [rsp + 0x440], xmm0
movups xmm1, xmmword [rsp + 0x58]
movups xmmword [rsp + 0x430], xmm1
movups xmmword [rsp + 0x58], xmm0
movups xmmword [r14], xmm1
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x68], r12
mov qword [r14 + 0x10], rax
add r14, 0x18
mov qword [rsp + 0x48], r14
jmp 0x140015bec
lea r8, [rsp + 0x58]
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.140016c80
mov r14, qword [rsp + 0x48]
mov eax, dword [rsp + 0x60]
test eax, eax
je 0x140015c5b
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140015c07
call fcn.140012770
mov eax, dword [rsp + 0x60]
test eax, eax
je 0x140016628
call sub.KERNEL32.dll_GetCurrentThreadId
cmp dword [rsp + 0x60], eax
je 0x140016631
movups xmm0, xmmword [rsp + 0x58]
movaps xmmword [rsp + 0x310], xmm0
xor edx, edx
lea rcx, [rsp + 0x310]
call fcn.140019398
test eax, eax
jne 0x14001663c
xorps xmm0, xmm0
movups xmmword [rsp + 0x460], xmm0
movups xmmword [rsp + 0x58], xmm0
psrldq xmm0, 8
movd eax, xmm0
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140015c96
mov eax, 0xfffffffe
lock xadd dword [rcx + 4], eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x140015c8d
mov eax, 0xffffffff
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x140015c8d
lea edx, [rax + 0x1f]
call fcn.1400195ec
mov eax, dword [rsp + 0x60]
mov r14, qword [rsp + 0x48]
test eax, eax
jne 0x140016647
add rdi, 0x20
mov rcx, qword [rsp + 0x1a0]
jmp 0x140015ae4
test rcx, rcx
je 0x1400158a2
mov rdx, qword [rsp + 0x1a8]
call fcn.140001f70
mov rdx, qword [rsp + 0x1b0]
mov rcx, qword [rsp + 0x1a0]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015d01
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001665d
call fcn.1400195ec
jmp 0x1400158a2
mov qword [rsp + 0x1b8], 0
mov qword [rsp + 0x1c0], 0
mov qword [rsp + 0x1c8], 0
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x1b8]
call fcn.140001560
mov esi, dword [rsp + 0x1c4]
nop dword [rax + rax]
cmp esi, dword [rsp + 0x1c8]
jae 0x1400158a2
mov dword [rsp + 0x120], esi
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0x120]
call fcn.1400119d0
nop
mov rdx, rax
lea rcx, [rsp + 0x2a0]
call fcn.140017c90
nop
mov r8, rax
lea rdx, [0x1400489c0]
lea rcx, [rsp + 0xb8]
call fcn.1400167b0
nop
mov rdx, qword [rsp + 0x2b8]
cmp rdx, 8
jb 0x140015deb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x2a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015de6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140016663
call fcn.1400195ec
mov qword [rsp + 0x2b0], r12
mov qword [rsp + 0x2b8], 7
mov word [rsp + 0x2a0], r12w
mov rdx, qword [rsp + 0x238]
cmp rdx, 0x10
jb 0x140015e4b
inc rdx
mov rcx, qword [rsp + 0x220]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015e46
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140016669
call fcn.1400195ec
mov qword [rsp + 0x230], r12
mov qword [rsp + 0x238], 0xf
mov byte [rsp + 0x220], 0
lea rdx, [rsp + 0xb8]
cmp qword [rsp + 0xd0], 8
cmovae rdx, qword [rsp + 0xb8]
lea rcx, str.____Try_add_connection:__s_n
call fcn.140001b40
mov qword [rsp + 0x2c0], 0
mov qword [rsp + 0x2c8], r12
mov qword [rsp + 0x2e0], r12
mov qword [rsp + 0x2d0], r12
lea rax, [rsp + 0xb8]
cmp qword [rsp + 0xd0], 8
cmovae rax, qword [rsp + 0xb8]
mov qword [rsp + 0x2d8], rax
mov qword [rsp + 0x2e8], r12
mov r9d, 4
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x2c0]
call qword [sym.imp.MPR.dll_WNetAddConnection2W]
lea rdx, [rsp + 0xb8]
test eax, eax
jne 0x140016342
cmp qword [rsp + 0xd0], 8
cmovae rdx, qword [rsp + 0xb8]
lea rcx, str.___Found_share:__s_n
call fcn.140001b40
mov rax, r15
mov rcx, qword [rsp + 0xc8]
sub rax, rcx
cmp rax, 1
jb 0x14001666f
lea r9, [rsp + 0xb8]
cmp qword [rsp + 0xd0], 8
cmovae r9, qword [rsp + 0xb8]
mov qword [rsp + 0x30], 1
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x200]
call fcn.1400054d0
nop
mov edi, r12d
nop dword [rax + rax]
cmp edi, 0x1a
jae 0x1400162ae
xorps xmm0, xmm0
movups xmmword [rsp + 0xf8], xmm0
mov qword [rsp + 0x108], r12
mov qword [rsp + 0x110], r12
mov r8d, 2
lea rdx, [0x140048a2c]
lea rcx, [rsp + 0xf8]
call fcn.140001be0
nop
lea rax, [rsp + 0xf8]
cmp qword [rsp + 0x110], 8
cmovae rax, qword [rsp + 0xf8]
add word [rax], di
mov rax, r15
mov rcx, qword [rsp + 0x210]
sub rax, rcx
mov rdx, qword [rsp + 0x108]
cmp rax, rdx
jb 0x140016675
lea r9, [rsp + 0x200]
cmp qword [rsp + 0x218], 8
cmovae r9, qword [rsp + 0x200]
lea rax, [rsp + 0xf8]
cmp qword [rsp + 0x110], 8
cmovae rax, qword [rsp + 0xf8]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x3e0]
call fcn.1400054d0
mov rdx, qword [rsp + 0x110]
cmp rdx, 8
jb 0x140016093
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xf8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001608e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001667a
call fcn.1400195ec
movups xmm0, xmmword [rsp + 0x3e0]
movups xmmword [rsp + 0xf8], xmm0
movups xmm1, xmmword [rsp + 0x3f0]
movups xmmword [rsp + 0x108], xmm1
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov ecx, 0x20
call fcn.1400195f4
mov dword [rax], 1
mov dword [rax + 4], 2
xor ecx, ecx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], r12
mov dword [rax + 0x18], r12d
mov qword [rsp + 0x80], rax
mov ecx, 0x28
call fcn.1400195f4
mov rbx, rax
mov qword [rsp + 0x370], rax
lea rdx, [rsp + 0xf8]
mov rcx, rax
call fcn.140001e30
mov qword [rbx + 0x20], r13
mov qword [rsp + 0x378], rbx
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r12d
mov r9, rbx
lea r8, [0x1400171b0]
xor edx, edx
xor ecx, ecx
call fcn.14002b514
mov qword [rsp + 0x70], rax
test rax, rax
je 0x1400166ab
cmp r14, qword [rsp + 0x50]
je 0x140016190
xorps xmm0, xmm0
movups xmmword [rsp + 0x400], xmm0
movups xmm1, xmmword [rsp + 0x70]
movups xmmword [rsp + 0x410], xmm1
movups xmmword [rsp + 0x70], xmm0
movups xmmword [r14], xmm1
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x80], r12
mov qword [r14 + 0x10], rax
add r14, 0x18
mov qword [rsp + 0x48], r14
jmp 0x1400161a7
lea r8, [rsp + 0x70]
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.140016c80
mov r14, qword [rsp + 0x48]
mov eax, dword [rsp + 0x78]
test eax, eax
je 0x140016219
mov rcx, qword [rsp + 0x80]
test rcx, rcx
je 0x1400161c5
call fcn.140012770
mov eax, dword [rsp + 0x78]
test eax, eax
je 0x140016680
call sub.KERNEL32.dll_GetCurrentThreadId
cmp dword [rsp + 0x78], eax
je 0x140016689
movups xmm0, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x320], xmm0
xor edx, edx
lea rcx, [rsp + 0x320]
call fcn.140019398
test eax, eax
jne 0x140016694
xorps xmm0, xmm0
movups xmmword [rsp + 0x420], xmm0
movups xmmword [rsp + 0x70], xmm0
psrldq xmm0, 8
movd eax, xmm0
mov rcx, qword [rsp + 0x80]
test rcx, rcx
je 0x140016257
mov eax, 0xfffffffe
lock xadd dword [rcx + 4], eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x14001624e
mov eax, 0xffffffff
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x14001624e
lea edx, [rax + 0x1f]
call fcn.1400195ec
mov eax, dword [rsp + 0x78]
mov r14, qword [rsp + 0x48]
test eax, eax
jne 0x14001669f
mov rdx, qword [rsp + 0x110]
cmp rdx, 8
jb 0x1400162a7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xf8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400162a2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400166a5
call fcn.1400195ec
inc edi
jmp 0x140015f80
mov rdx, qword [rsp + 0x218]
cmp rdx, 8
jb 0x1400162f6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x200]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400162f1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400166bb
call fcn.1400195ec
lea rbx, [0x140048790]
mov rdx, qword [rsp + 0xd0]
cmp rdx, 8
jb 0x14001636a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016365
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400166c1
jmp 0x140016365
cmp qword [rsp + 0xd0], 8
cmovae rdx, qword [rsp + 0xb8]
mov r8d, eax
lea rcx, str.____Share:__s__ret:_0x_X_n
call fcn.140001b40
jmp 0x1400162fd
call fcn.1400195ec
inc esi
jmp 0x140015d50
test dil, dil
jne 0x14001640e
mov rdi, qword [0x140050ab8]
mov rbx, qword [0x140050ab0]
cmp rbx, rdi
je 0x14001640e
nop dword [rax]
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x1400163cd
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
mov rcx, qword [rbx + 0x18]
mov rdx, rbx
test eax, eax
je 0x1400163f0
cmp rcx, 8
jb 0x1400163e7
mov rdx, qword [rbx]
lea rcx, str.___Unmounted:__s_n
jmp 0x140016400
cmp rcx, 8
jb 0x1400163f9
mov rdx, qword [rbx]
lea rcx, str.____Fail_to_unmount:__s_n
call fcn.140001b40
add rbx, 0x20
cmp rbx, rdi
jne 0x1400163c0
mov rbx, qword [rsp + 0x40]
test rbx, rbx
je 0x14001648e
cmp rbx, r14
je 0x140016431
nop dword [rax]
mov rcx, rbx
call fcn.140012920
add rbx, 0x18
cmp rbx, r14
jne 0x140016420
mov rcx, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x40]
sub rcx, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, rbx
cmp rdx, 0x1000
jb 0x140016486
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400166c7
mov rcx, rbx
call fcn.1400195ec
lea rcx, str.____Context_shutdown..._n
call fcn.140001b40
mov byte [0x140056778], 1
mov rcx, qword [0x140056770]
test rcx, rcx
je 0x1400164b4
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, str.pause
call fcn.14002b5fc
lea rcx, str.pause
call fcn.14002b5fc
nop
mov rax, qword [rsp + 0x180]
cmp rax, 8
jb 0x14001651a
lea rdx, [rax*2 + 2]
mov rcx, qword [rsp + 0x168]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016514
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400166cd
jmp 0x140016514
call fcn.1400195ec
nop
mov rdx, qword [rsp + 0x148]
cmp rdx, 0x10
jb 0x14001655d
inc rdx
mov rcx, qword [rsp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016558
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400166e6
call fcn.1400195ec
xor eax, eax
add rsp, 0x8f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
call fcn.14002a224
nop
mov ecx, 1
call fcn.140019280
nop
call fcn.14002a224
nop
call fcn.14002a224
int3
call fcn.14002a224
nop
call fcn.14002a224
nop
mov ecx, 1
call fcn.140019280
nop
call fcn.14002b744
nop
lea ecx, [rax + 1]
call fcn.140019280
int3
mov ecx, 5
call fcn.140019280
int3
mov ecx, 2
call fcn.140019280
nop
call fcn.14002b744
nop
mov dword [rsp + 0xa8], r12d
mov ecx, 6
call fcn.140019280
nop
call fcn.14002a224
int3
call fcn.1400014b0
nop
lea ecx, [rax + 1]
call fcn.140019280
int3
mov ecx, 5
call fcn.140019280
int3
mov ecx, 2
call fcn.140019280
nop
call fcn.14002b744
nop
mov dword [rsp + 0x90], r12d
mov ecx, 6
call fcn.140019280
nop
lea ecx, [rax + 1]
call fcn.140019280
int3
mov ecx, 5
call fcn.140019280
int3
mov ecx, 2
call fcn.140019280
nop
call fcn.14002b744
nop
mov dword [rsp + 0x60], r12d
mov ecx, 6
call fcn.140019280
nop
call fcn.14002a224
nop
call fcn.14002a224
nop
call fcn.14002a224
int3
call fcn.1400014b0
nop
call fcn.1400014b0
call fcn.14002a224
nop
lea ecx, [rax + 1]
call fcn.140019280
int3
mov ecx, 5
call fcn.140019280
int3
mov ecx, 2
call fcn.140019280
nop
call fcn.14002b744
nop
call fcn.14002a224
nop
mov dword [rsp + 0x78], r12d
mov ecx, 6
call fcn.140019280
nop
call fcn.14002a224
nop
call fcn.14002a224
nop
call fcn.14002a224
nop
call fcn.14002a224
nop
mov dword [rsp + 0x158], r12d
mov ecx, 6
call fcn.140019280
nop
call fcn.14002a224
int3