Function at 0x101f0cb
Capabilities:
Reference absolute stream path on windows

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
push esi
push edi
xor esi, esi
push ebx
mov dword [ebp - 8], esi
mov dword [ebp - 4], esi
call dword [eax + 0x7c]
cmp eax, 9
sete al
push eax
push 0x101125c
push esi
push esi
push esi
push 0x1011178
push dword [0x102256c]
push 4
pop edi
push edi
call fcn.01020f34
mov eax, dword [ebx]
push esi
push esi
lea ecx, [ebp - 8]
push ecx
push ebx
mov dword [ebp + 0xc], esi
call dword [eax + 0x94]
cmp dword [ebp - 8], 0x8002c400
sete al
push eax
push 0x101114c
push esi
push esi
push esi
push 0x1011068
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebx]
push esi
push esi
push esi
lea ecx, [ebp + 0xc]
push ecx
push ebx
call dword [eax + 0x8c]
cmp dword [ebp + 0xc], esi
setne al
push eax
push 0x101104c
push esi
push esi
push esi
push 0x1010f68
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
mov edx, 0x102
cmp ecx, edx
jg 0x101f428
je 0x101f3e9
cmp ecx, 0x1e
jg 0x101f323
je 0x101f2ed
dec ecx
je 0x101f2ba
dec ecx
je 0x101f25b
sub ecx, 6
je 0x101f21d
dec ecx
jne 0x101f458
cmp word [eax], 0x1c
sete al
push eax
push 0x1010f20
push esi
push esi
push esi
push 0x1010e38
push dword [0x102256c]
push edi
call fcn.01020f34
push dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0x10], esi
movzx ecx, byte [eax + 0xc]
push esi
push dword [eax + 0x14]
push dword [eax + 0x18]
push ecx
push dword [eax + 4]
je 0x101f216
call sub.WINUSB.DLL_WinUsb_ReadPipe
cmp eax, esi
jne 0x101f20a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
cmp edi, 0x3e5
jne 0x101f62e
mov dword [ebp - 4], 1
jmp 0x101f2b0
call sub.WINUSB.DLL_WinUsb_WritePipe
jmp 0x101f1f2
cmp word [eax], 0x20
sete al
push eax
push 0x1010df4
push esi
push esi
push esi
push 0x1010d10
push dword [0x102256c]
push edi
call fcn.01020f34
push dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
push esi
push dword [eax + 0x14]
push dword [eax + 0x10]
push dword [eax + 0x1c]
push dword [eax + 0x18]
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_ControlTransfer
jmp 0x101f1f2
cmp word [eax], 0x14
sete al
push eax
push 0x1010cd4
push esi
push esi
push esi
push 0x1010bf0
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + 0xc]
push ecx
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_AbortPipe
xor ecx, ecx
cmp eax, esi
jne 0x101f2a8
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, esi
jle 0x101f2a6
and eax, 0xffff
or eax, 0x80070000
mov ecx, eax
push esi
push ecx
mov eax, dword [ebx]
push ebx
call dword [eax + 0x10]
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
leave
ret 0x10
cmp word [eax], 0x10
sete al
push eax
push 0x1010bac
push esi
push esi
push esi
push 0x1010ac8
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + 0xc]
push ecx
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_SetCurrentAlternateSetting
jmp 0x101f28c
cmp word [eax], 0x14
sete al
push eax
push 0x1010cd4
push esi
push esi
push esi
push 0x10109e0
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + 0xc]
push ecx
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_ResetPipe
jmp 0x101f28c
sub ecx, 0x27
je 0x101f3b4
dec ecx
je 0x101f37a
sub ecx, 0xd9
jne 0x101f458
cmp word [eax], 0x1c
sete al
push eax
push 0x10109a4
push esi
push esi
push esi
push 0x10108c0
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
lea ecx, [eax + 0x10]
push ecx
movzx ecx, byte [eax + 0xd]
push ecx
movzx ecx, byte [eax + 0xc]
push ecx
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_QueryPipe
jmp 0x101f28c
cmp word [eax], 0x18
sete al
push eax
push 0x1010878
push esi
push esi
push esi
push 0x1010790
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
lea ecx, [eax + 0xd]
push ecx
movzx ecx, byte [eax + 0xc]
push ecx
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_QueryInterfaceSettings
jmp 0x101f28c
cmp word [eax], 0x10
sete al
push eax
push 0x1010bac
push esi
push esi
push esi
push 0x10106a8
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
lea ecx, [eax + 0xc]
push ecx
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_GetCurrentAlternateSetting
jmp 0x101f28c
cmp word [eax], 0x1c
sete al
push eax
push 0x1010660
push esi
push esi
push esi
push 0x1010578
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
push dword [eax + 0x18]
movzx ecx, byte [eax + 0xc]
push dword [eax + 0x14]
push dword [eax + 0x10]
push ecx
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_SetPipePolicy
jmp 0x101f28c
sub ecx, 0x103
je 0x101f5ee
dec ecx
je 0x101f5b4
dec ecx
je 0x101f579
sub ecx, 3
je 0x101f543
dec ecx
je 0x101f509
dec ecx
je 0x101f4ce
dec ecx
je 0x101f485
push esi
push 0x1010544
push esi
push esi
push esi
push 0x1010460
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebx]
push esi
push 0x80070001
push ebx
call dword [eax + 0x10]
xor eax, eax
jmp 0x101f2b3
cmp word [eax], 0x18
sete al
push eax
push 0x1010420
push esi
push esi
push esi
push 0x1010338
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
lea ecx, [eax + 0x10]
push ecx
push dword [ecx]
movzx ecx, word [eax + 0xe]
push dword [eax + 0x14]
push ecx
movzx ecx, byte [eax + 0xd]
push ecx
movzx ecx, byte [eax + 0xc]
push ecx
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_GetDescriptor
jmp 0x101f28c
cmp word [eax], 0x18
sete al
push eax
push 0x10102f8
push esi
push esi
push esi
push 0x1010210
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
push dword [eax + 0x14]
lea ecx, [eax + 0x10]
push ecx
push dword [eax + 0xc]
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_QueryDeviceInformation
jmp 0x101f28c
cmp word [eax], 0x14
sete al
push eax
push 0x10101c8
push esi
push esi
push esi
push 0x10100e0
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
lea ecx, [eax + 0x10]
push ecx
movzx ecx, byte [eax + 0xc]
push ecx
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_GetAssociatedInterface
jmp 0x101f28c
cmp word [eax], 0x14
sete al
push eax
push 0x1010cd4
push esi
push esi
push esi
push 0x100fff8
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + 0xc]
push ecx
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_FlushPipe
jmp 0x101f28c
cmp word [eax], 0x18
sete al
push eax
push 0x100ffb0
push esi
push esi
push esi
push 0x100fec8
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
push dword [eax + 0x14]
lea ecx, [eax + 0x10]
push ecx
push dword [eax + 0xc]
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_GetPowerPolicy
jmp 0x101f28c
cmp word [eax], 0x18
sete al
push eax
push 0x100ffb0
push esi
push esi
push esi
push 0x100fde0
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
push dword [eax + 0x14]
push dword [eax + 0x10]
push dword [eax + 0xc]
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_SetPowerPolicy
jmp 0x101f28c
cmp word [eax], 0x1c
sete al
push eax
push 0x1010660
push esi
push esi
push esi
push 0x100fcf8
push dword [0x102256c]
push edi
call fcn.01020f34
mov eax, dword [ebp + 0xc]
push dword [eax + 0x18]
lea ecx, [eax + 0x14]
push ecx
push dword [eax + 0x10]
movzx ecx, byte [eax + 0xc]
push ecx
push dword [eax + 4]
call sub.WINUSB.DLL_WinUsb_GetPipePolicy
jmp 0x101f28c
mov eax, dword [0x102200c]
cmp eax, 0x102200c
je 0x101f668
test dword [eax + 0x9c], 0x10000
je 0x101f668
cmp byte [eax + 0x99], 2
jb 0x101f668
push edi
push 0x100f808
push 0xd
push dword [eax + 0x94]
push dword [eax + 0x90]
call fcn.01013553
cmp edi, esi
jle 0x101f678
and edi, 0xffff
or edi, 0x80070000
push esi
push edi
jmp 0x101f2aa