Function at 0x101c9690
Capabilities:
Enumerate network shares

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x28c
mov eax, dword [ebp + 0xc]
call 0x101c96a4
pop esi
mov dword [ebp - 0x74], 0
lea ecx, [ebp - 0x74]
push ecx
push eax
push 0x13
push 0
push 3
call sub.mpr.dll_WNetOpenEnumW
test eax, eax
mov dword [ebp - 0x7c], eax
je 0x101c98b0
lea eax, [ebp - 0x7c]
lea esi, [ebp - 0x198]
mov dword [ebp - str._ERRORSHARE__WnetOpenEnum_returns_error:], 0x10441bb0
mov dword [ebp - 0x294], 1
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x290], esi
mov dword [ebp - 0x194], 0x1002e030
mov dword [ebp - 0x28c], 1
lea ebx, [ebp - 0x298]
push ebx
call fcn.100748a0
add esp, 4
cmp dword [ebp - 0x7c], 0x4b8
jne 0x101cab38
xorps xmm0, xmm0
mov dword [ebp - 0x84], 0
movups xmmword [ebp - 0xa8], xmm0
movups xmmword [ebp - 0xb8], xmm0
movups xmmword [ebp - 0xc8], xmm0
movups xmmword [ebp - 0xd8], xmm0
movups xmmword [ebp - 0xe8], xmm0
movups xmmword [ebp - 0xf8], xmm0
movups xmmword [ebp - 0x108], xmm0
movups xmmword [ebp - 0x118], xmm0
movups xmmword [ebp - 0x128], xmm0
movups xmmword [ebp - 0x138], xmm0
movups xmmword [ebp - 0x148], xmm0
movups xmmword [ebp - 0x158], xmm0
movups xmmword [ebp - 0x168], xmm0
movups xmmword [ebp - 0x178], xmm0
movups xmmword [ebp - 0x188], xmm0
movups xmmword [ebp - 0x198], xmm0
movups xmmword [ebp - 0x1a8], xmm0
movups xmmword [ebp - 0x1b8], xmm0
movups xmmword [ebp - 0x1c8], xmm0
movups xmmword [ebp - 0x1d8], xmm0
movups xmmword [ebp - 0x1e8], xmm0
movups xmmword [ebp - 0x1f8], xmm0
movups xmmword [ebp - 0x208], xmm0
movups xmmword [ebp - 0x218], xmm0
movups xmmword [ebp - 0x228], xmm0
movups xmmword [ebp - 0x238], xmm0
movups xmmword [ebp - 0x248], xmm0
movups xmmword [ebp - 0x258], xmm0
movups xmmword [ebp - 0x268], xmm0
movups xmmword [ebp - 0x278], xmm0
movups xmmword [ebp - 0x288], xmm0
movups xmmword [ebp - 0x298], xmm0
lea edi, [ebp - 0x84]
push 0x100
push ebx
push 0x100
push esi
push edi
call sub.mpr.dll_WNetGetLastErrorA
test eax, eax
mov dword [ebp - 0x34], eax
je 0x101ca9e6
lea eax, [ebp - 0x34]
lea esi, [ebp - 0x30]
mov dword [ebp - 0x24], 0x10441e14
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], 0x1002e030
mov dword [ebp - 0x18], 1
lea ebx, [ebp - 0x24]
lea edi, [ebp - 0x50]
push ebx
push edi
call fcn.1001b0a0
add esp, 8
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x24], 0x10441dec
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x2c], 0x101ab600
mov dword [ebp - 0x18], 1
push ebx
call fcn.100748a0
add esp, 4
jmp 0x101cab21
mov eax, dword [0x1044eff8]
mov dword [ebp - 0x8c], esi
mov dword [ebp - 0x78], 0xffffffff
mov dword [ebp - 0x94], 0x4000
mov eax, dword [eax]
test eax, eax
jne 0x101c98e7
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x101cabe0
mov ecx, dword [0x1044eff8]
mov dword [ecx], eax
push 0x4000
push 8
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x101cabe0
mov ebx, eax
mov dword [ebp - 0x6c], ebx
nop word cs:[eax + eax]
nop dword [eax + eax]
lea eax, [ebp - 0x94]
push eax
push ebx
lea eax, [ebp - 0x78]
push eax
push dword [ebp - 0x74]
call sub.mpr.dll_WNetEnumResourceW
test eax, eax
mov dword [ebp - 0x98], eax
jne 0x101ca92e
lea eax, [ebp - 0x78]
mov dword [ebp - str._DEBUGSHARE__cEntries_found:], 0x10441a08
mov dword [ebp - 0x294], 1
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x198], eax
lea eax, [ebp - 0x198]
mov dword [ebp - 0x194], 0x1002e030
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x28c], 1
lea eax, [ebp - 0x298]
push eax
call fcn.100748a0
add esp, 4
mov eax, dword [ebp - 0x78]
test eax, eax
mov dword [ebp - 0x90], eax
je 0x101c9910
xor eax, eax
jmp 0x101c99f1
mov dword [ebp - 0x298], 0x10441a4c
mov dword [ebp - 0x294], 1
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x290], str.called__Option::unwrap____on_a__None__valueIndex_out_of_bounds
mov dword [ebp - 0x28c], 0
lea eax, [ebp - 0x298]
push eax
call fcn.100748a0
add esp, 4
mov eax, dword [ebp - 0x38]
inc eax
cmp eax, dword [ebp - 0x90]
je 0x101c9910
cmp eax, 0x200
je 0x101cab43
mov edi, eax
mov dword [ebp - 0x38], eax
shl edi, 5
movsd xmm0, qword [ebx + edi + 0x18]
movsd qword [ebp - 0x280], xmm0
movsd xmm0, qword [ebx + edi + 0x10]
movsd qword [ebp - 0x288], xmm0
movsd xmm0, qword [ebx + edi]
movsd xmm1, qword [ebx + edi + 8]
mov dword [ebp - 0x198], 0x10441bb8
mov dword [ebp - 0x194], 1
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x190], str.called__Option::unwrap____on_a__None__valueIndex_out_of_bounds
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x18c], 0
movsd qword [ebp - 0x290], xmm1
movsd qword [ebp - 0x298], xmm0
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
mov dword [ebp - str._DEBUG_START_], 0x10441bd0
mov dword [ebp - 0x194], 1
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x190], str.called__Option::unwrap____on_a__None__valueIndex_out_of_bounds
mov dword [ebp - 0x18c], 0
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
mov eax, dword [ebp - 0x298]
cmp eax, 1
je 0x101c9bb0
cmp eax, 2
je 0x101c9b40
cmp eax, 3
jne 0x101c9c10
mov eax, dword [0x1044f00c]
movzx eax, byte [eax]
mov eax, dword [0x1044eff8]
mov eax, dword [eax]
test eax, eax
jne 0x101c9b05
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x101cab74
mov ecx, dword [0x1044eff8]
mov dword [ecx], eax
push 0xa
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x101cab74
mov word [eax + 8], 0x6465
mov dword [eax + 4], 0x7265626d
mov dword [eax], 0x656d6572
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], 0xa
mov dword [ebp - 0x54], 0xa
jmp 0x101c9c74
mov eax, dword [0x1044f00c]
movzx eax, byte [eax]
mov eax, dword [0x1044eff8]
mov eax, dword [eax]
test eax, eax
jne 0x101c9b68
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x101caba5
mov ecx, dword [0x1044eff8]
mov dword [ecx], eax
push 0xd
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x101caba5
mov byte [eax + 0xc], 0x73
mov dword [eax + 8], 0x65637275
mov dword [eax + 4], 0x6f736572
mov dword [eax], 0x206c6c61
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], 0xd
mov dword [ebp - 0x54], 0xd
jmp 0x101c9c74
mov eax, dword [0x1044f00c]
movzx eax, byte [eax]
mov eax, dword [0x1044eff8]
mov eax, dword [eax]
test eax, eax
jne 0x101c9bd8
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x101cab89
mov ecx, dword [0x1044eff8]
mov dword [ecx], eax
push 9
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x101cab89
mov byte [eax + 8], 0x64
mov dword [eax + 4], 0x65746365
mov dword [eax], 0x6e6e6f63
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], 9
mov dword [ebp - 0x54], 9
jmp 0x101c9c74
lea eax, [ebp - 0x298]
mov dword [ebp - 0x198], 0x10441c08
mov dword [ebp - 0x194], 1
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x4c], 0x1002e030
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 1
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.1001b0a0
add esp, 8
movsd xmm0, qword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
movsd qword [ebp - 0x5c], xmm0
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x34]
mov dword [ebp - str.NETRESOURCE___Scope:], 0x10441c28
mov dword [ebp - 0x194], 2
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x20], 0x1002e030
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x18], 0x101ab600
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 2
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
mov eax, dword [ebp - 0x294]
cmp eax, 2
je 0x101c9db0
cmp eax, 1
je 0x101c9d50
test eax, eax
jne 0x101c9e10
mov eax, dword [0x1044f00c]
movzx eax, byte [eax]
mov eax, dword [0x1044eff8]
mov eax, dword [eax]
test eax, eax
jne 0x101c9d12
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x101cab82
mov ecx, dword [0x1044eff8]
mov dword [ecx], eax
push 3
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x101cab82
mov byte [eax + 2], 0x79
mov word [eax], 0x6e61
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], 3
mov dword [ebp - 0x60], 3
jmp 0x101c9e74
mov eax, dword [0x1044f00c]
movzx eax, byte [eax]
mov eax, dword [0x1044eff8]
mov eax, dword [eax]
test eax, eax
jne 0x101c9d78
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x101cab90
mov ecx, dword [0x1044eff8]
mov dword [ecx], eax
push 4
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x101cab90
mov dword [eax], 0x6b736964
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], 4
mov dword [ebp - 0x60], 4
jmp 0x101c9e74
mov eax, dword [0x1044f00c]
movzx eax, byte [eax]
mov eax, dword [0x1044eff8]
mov eax, dword [eax]
test eax, eax
jne 0x101c9dd8
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x101cab6d
mov ecx, dword [0x1044eff8]
mov dword [ecx], eax
push 5
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x101cab6d
mov byte [eax + 4], 0x74
mov dword [eax], 0x6e697270
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], 5
mov dword [ebp - 0x60], 5
jmp 0x101c9e74
lea eax, [ebp - 0x294]
mov dword [ebp - 0x198], 0x10441c50
mov dword [ebp - 0x194], 1
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x4c], 0x1002e030
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 1
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.1001b0a0
add esp, 8
movsd xmm0, qword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
movsd qword [ebp - 0x68], xmm0
mov dword [ebp - 0x60], eax
lea eax, [ebp - 0x34]
mov dword [ebp - str.NETRESOURCE___Scope:], 0x10441c60
mov dword [ebp - 0x194], 2
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x68]
mov dword [ebp - 0x20], 0x1002e030
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x18], 0x101ab600
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 2
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
mov eax, dword [ebp - 0x290]
cmp eax, 6
ja 0x101ca022
mov eax, dword [eax*4 + 0x101cad18]
add eax, dword [ebp - 0x8c]
jmp eax
lea eax, [ebp - 0x290]
mov dword [ebp - 0x198], 0x10441cac
mov dword [ebp - 0x194], 1
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x4c], 0x1002e030
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 1
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.1001b0a0
add esp, 8
movsd xmm0, qword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x28], eax
jmp 0x101ca196
lea eax, [ebp - 0x34]
mov dword [ebp - str.NETRESOURCE___Scope:], 0x10441cc4
mov dword [ebp - 0x194], 2
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x30]
mov dword [ebp - 0x20], 0x1002e030
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x18], 0x101ab600
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 2
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
mov eax, dword [ebp - 0x28c]
mov edx, 0x10441cdb
mov esi, str.unknowncontainerconnectable__Usage:
mov dword [ebp - str.NETRESOURCE___Scope:], 0x10441cf8
mov dword [ebp - 0x194], 2
mov dword [ebp - 0x188], 0
mov ecx, eax
and ecx, 2
cmove edx, esi
add ecx, 7
test al, 1
mov eax, 0x10441ce4
cmovne edx, eax
mov eax, 0xb
cmovne ecx, eax
lea eax, [ebp - 0x34]
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x84]
mov dword [ebp - 0x20], 0x1002e030
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x18], 0x101a2960
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 2
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
mov eax, dword [ebp - 0x288]
test eax, eax
je 0x101ca2c0
mov ecx, 0xffffffff
nop word cs:[eax + eax]
nop dword [eax]
cmp word [eax + ecx*2 + 2], 0
lea ecx, [ecx + 1]
jne 0x101ca2a0
push ecx
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.10169f90
add esp, 0xc
jmp 0x101ca2d9
mov dword [ebp - 0x24], 1
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x18], 1
lea eax, [ebp - 0x34]
mov dword [ebp - str.NETRESOURCE___Scope:], 0x10441d18
mov dword [ebp - 0x194], 2
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x4c], 0x1002e030
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x44], 0x1016c1c0
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 2
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
cmp dword [ebp - 0x20], 0
je 0x101ca34a
push dword [ebp - 0x24]
push 0
mov eax, dword [0x1044eff8]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [ebp - 0x284]
test eax, eax
je 0x101ca380
mov ecx, 0xffffffff
nop dword [eax]
cmp word [eax + ecx*2 + 2], 0
lea ecx, [ecx + 1]
jne 0x101ca360
push ecx
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.10169f90
add esp, 0xc
jmp 0x101ca399
mov dword [ebp - 0x24], 1
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x18], 1
lea eax, [ebp - 0x34]
mov dword [ebp - str.NETRESOURCE___Scope:], 0x10441d38
mov dword [ebp - 0x194], 2
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x4c], 0x1002e030
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x44], 0x1016c1c0
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 2
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
cmp dword [ebp - 0x20], 0
je 0x101ca40a
push dword [ebp - 0x24]
push 0
mov eax, dword [0x1044eff8]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [ebp - 0x280]
test eax, eax
je 0x101ca440
mov ecx, 0xffffffff
nop dword [eax]
cmp word [eax + ecx*2 + 2], 0
lea ecx, [ecx + 1]
jne 0x101ca420
push ecx
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.10169f90
add esp, 0xc
jmp 0x101ca459
mov dword [ebp - 0x24], 1
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x18], 1
lea eax, [ebp - 0x34]
mov dword [ebp - str.NETRESOURCE___Scope:], 0x10441d54
mov dword [ebp - 0x194], 2
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x4c], 0x1002e030
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x44], 0x1016c1c0
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 2
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
cmp dword [ebp - 0x20], 0
je 0x101ca4ca
push dword [ebp - 0x24]
push 0
mov eax, dword [0x1044eff8]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [ebp - 0x27c]
test eax, eax
je 0x101ca500
mov ecx, 0xffffffff
nop dword [eax]
cmp word [eax + ecx*2 + 2], 0
lea ecx, [ecx + 1]
jne 0x101ca4e0
push ecx
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.10169f90
add esp, 0xc
jmp 0x101ca519
mov dword [ebp - 0x24], 1
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x18], 1
lea eax, [ebp - 0x34]
mov dword [ebp - str.NETRESOURCE___Scope:], 0x10441d70
mov dword [ebp - 0x194], 2
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x4c], 0x1002e030
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x44], 0x1016c1c0
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 2
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
cmp dword [ebp - 0x20], 0
je 0x101ca58a
push dword [ebp - 0x24]
push 0
mov eax, dword [0x1044eff8]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov dword [ebp - str._DEBUG_END_], 0x10441d8c
mov dword [ebp - 0x194], 1
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x190], str.called__Option::unwrap____on_a__None__valueIndex_out_of_bounds
mov dword [ebp - 0x18c], 0
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
mov dword [ebp - 0x198], 0x10441bb8
mov dword [ebp - 0x194], 1
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x190], str.called__Option::unwrap____on_a__None__valueIndex_out_of_bounds
mov dword [ebp - 0x18c], 0
lea eax, [ebp - 0x198]
push eax
call fcn.100748a0
add esp, 4
cmp dword [ebp - 0x2c], 0
je 0x101ca623
push dword [ebp - 0x30]
push 0
mov eax, dword [0x1044eff8]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
cmp dword [ebp - 0x64], 0
je 0x101ca63a
push dword [ebp - 0x68]
push 0
mov eax, dword [0x1044eff8]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
add edi, ebx
cmp dword [ebp - 0x58], 0
je 0x101ca653
push dword [ebp - 0x5c]
push 0
mov eax, dword [0x1044eff8]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [edi + 4]
test al, 1
jne 0x101ca6b0
test al, 2
je 0x101c99a0
mov dword [ebp - str._DEBUGSHARE__Skipping_printer_resource], 0x10441a7c
mov dword [ebp - 0x294], 1
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x290], str.called__Option::unwrap____on_a__None__valueIndex_out_of_bounds
mov dword [ebp - 0x28c], 0
lea eax, [ebp - 0x298]
push eax
call fcn.100748a0
add esp, 4
jmp 0x101c99e1
mov dword [ebp - str._DEBUGSHARE__Disk_share_detected._Parsing_data...], 0x10441ab8
mov dword [ebp - 0x294], 1
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x290], str.called__Option::unwrap____on_a__None__valueIndex_out_of_bounds
mov dword [ebp - 0x28c], 0
lea eax, [ebp - 0x298]
push eax
call fcn.100748a0
add esp, 4
mov eax, dword [edi + 0x10]
test eax, eax
je 0x101ca72a
mov ecx, 0xffffffff
nop dword [eax]
cmp word [eax + ecx*2 + 2], 0
lea ecx, [ecx + 1]
jne 0x101ca700
push ecx
push eax
lea eax, [ebp - 0x198]
push eax
call fcn.10169f90
add esp, 0xc
mov esi, dword [ebp - 0x198]
mov ecx, dword [ebp - 0x190]
jmp 0x101ca756
mov esi, 1
xor ecx, ecx
mov dword [ebp - 0x198], 1
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 0
mov byte [ebp - 0x18c], 1
push ecx
push esi
lea eax, [ebp - 0x298]
push eax
call fcn.1002ad90
add esp, 0xc
cmp dword [ebp - 0x298], 0
jne 0x101ca77c
mov eax, dword [ebp - 0x290]
mov dword [ebp - 0x88], eax
jne 0x101ca820
mov eax, dword [ebp - 0x294]
test eax, eax
je 0x101ca820
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x88]
mov dword [ebp - str._DEBUGSHARE__Found_disk_share:], 0x10441b18
mov dword [ebp - 0x294], 1
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x20], 0x101a2960
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x28c], 1
lea eax, [ebp - 0x298]
push eax
call fcn.100748a0
add esp, 4
mov ebx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x70], esi
test ebx, ebx
je 0x101ca876
js 0x101cabd9
mov eax, dword [0x1044f00c]
movzx eax, byte [eax]
mov eax, dword [0x1044eff8]
mov eax, dword [eax]
test eax, eax
je 0x101ca87d
mov esi, ecx
jmp 0x101ca894
mov dword [ebp - str._ERRORSHARE__Cannot_convert_OsString_to_String], 0x10441af0
mov dword [ebp - 0x294], 1
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x290], str.called__Option::unwrap____on_a__None__valueIndex_out_of_bounds
mov dword [ebp - 0x28c], 0
lea eax, [ebp - 0x298]
push eax
call fcn.100748a0
add esp, 4
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x194], 0
jne 0x101ca91a
jmp 0x101c99e4
mov edi, 1
jmp 0x101ca8a9
mov esi, ecx
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x101cabba
mov ecx, dword [0x1044eff8]
mov dword [ecx], eax
push ebx
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
mov edi, eax
test eax, eax
mov ecx, esi
je 0x101cabba
push ebx
push ecx
push edi
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x298], edi
mov dword [ebp - 0x294], ebx
mov dword [ebp - 0x290], ebx
mov edx, dword [ecx + 8]
cmp edx, dword [ecx + 4]
jne 0x101ca8e0
mov esi, dword [ebp - 0x6c]
mov ebx, ecx
call fcn.101aae70
mov edx, dword [ebx + 8]
jmp 0x101ca8e5
mov esi, dword [ebp - 0x6c]
mov ebx, ecx
mov eax, dword [ebx]
mov edi, dword [ebp - 0x290]
lea ecx, [edx + edx*2]
inc edx
mov dword [eax + ecx*4 + 8], edi
movsd xmm0, qword [ebp - 0x298]
movsd qword [eax + ecx*4], xmm0
mov dword [ebx + 8], edx
mov ebx, esi
mov eax, dword [ebp - 0x38]
mov esi, dword [ebp - 0x70]
cmp dword [ebp - 0x194], 0
je 0x101c99e4
push esi
push 0
mov eax, dword [0x1044eff8]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x101c99e1
cmp eax, 0x103
jne 0x101ca978
mov dword [ebp - str._DEBUGSHARE__EnumResourceW_done.], 0x10441b44
mov dword [ebp - 0x294], 1
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x290], str.called__Option::unwrap____on_a__None__valueIndex_out_of_bounds
mov dword [ebp - 0x28c], 0
lea eax, [ebp - 0x298]
push eax
call fcn.100748a0
add esp, 4
jmp 0x101ca9d1
lea eax, [ebp - 0x98]
mov dword [ebp - str._ERRORSHARE__EnumResourceW_failed_with_error:], 0x10441b7c
mov dword [ebp - 0x294], 1
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x198], eax
lea eax, [ebp - 0x198]
mov dword [ebp - 0x194], 0x1002e030
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x28c], 1
lea eax, [ebp - 0x298]
push eax
call fcn.100748a0
add esp, 4
push dword [ebp - 0x74]
call sub.mpr.dll_WNetCloseEnum
push ebx
push 0
mov eax, dword [0x1044eff8]
jmp 0x101cab31
push ebx
call sub.msvcrt.dll_strlen
add esp, 4
lea ecx, [ebp - 0x24]
push eax
inc eax
mov dword [ebp - 0x38], eax
push ebx
push ecx
call fcn.1002ad90
add esp, 0xc
cmp dword [ebp - 0x24], 0
jne 0x101cabf1
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], ecx
push esi
call sub.msvcrt.dll_strlen
add esp, 4
mov ebx, eax
push eax
inc ebx
push esi
lea eax, [ebp - 0x24]
push eax
call fcn.1002ad90
add esp, 0xc
cmp dword [ebp - 0x24], 0
jne 0x101cac1a
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x50], 0x10441dac
mov dword [ebp - 0x4c], 3
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x68]
mov dword [ebp - 0x20], 0x101a2960
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], 0x1002e030
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x10], 0x101a2960
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], 3
lea edi, [ebp - 0x50]
lea eax, [ebp - 0x30]
push edi
push eax
call fcn.1001b0a0
add esp, 8
test ebx, ebx
mov byte [ebp - 0x198], 0
je 0x101caab7
mov eax, dword [0x1044eff8]
push esi
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
cmp dword [ebp - 0x38], 0
lea ecx, [ebp - 0x298]
lea esi, [ebp - 0x24]
mov byte [ebp - 0x298], 0
je 0x101caadc
mov eax, dword [0x1044eff8]
push ecx
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
movsd xmm0, qword [ebp - 0x30]
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x24], 0x10441dec
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x2c], 0x101ab600
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], 1
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x48], eax
push esi
call fcn.100748a0
add esp, 4
cmp dword [ebp - 0x4c], 0
je 0x101cab38
mov eax, dword [0x1044eff8]
push dword [ebp - 0x50]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
add esp, 0x28c
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x10441a10
push 0x4000
push 0x4020
call fcn.1002ac30
add esp, 0xc
jmp 0x101cac41
mov eax, 5
jmp 0x101cab95
mov eax, 0xa
jmp 0x101cabaa
mov eax, 3
jmp 0x101cab95
mov eax, 9
jmp 0x101cabaa
mov eax, 4
push eax
push 1
call fcn.1001ac80
add esp, 8
jmp 0x101cac41
mov eax, 0xd
push eax
push 1
call fcn.1001ac80
add esp, 8
jmp 0x101cac41
push ebx
push 1
call fcn.1001ac80
add esp, 8
jmp 0x101cac41
call fcn.1001ac40
jmp 0x101cac41
push 0x4000
push 1
call fcn.1001ac80
add esp, 8
ud2
movsd xmm0, qword [ebp - 0x20]
movsd qword [ebp - 0x50], xmm0
lea eax, [ebp - 0x50]
push 0x10441dc4
push 0x1043ecb0
push eax
push 0x2b
push str.called__Result::unwrap____on_an__Err__value
call fcn.10027650
add esp, 0x14
jmp 0x101cac41
movsd xmm0, qword [ebp - 0x20]
movsd qword [ebp - 0x50], xmm0
lea eax, [ebp - 0x50]
push 0x10441dd4
push 0x1043ecb0
push eax
push 0x2b
push str.called__Result::unwrap____on_an__Err__value
call fcn.10027650
add esp, 0x14
ud2