Function at 0x140015d74
Capabilities:
Link many functions at runtime

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0xb0
mov qword [rbp + 0x10], rcx
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 8], rax
cmp qword [rbp - 8], 0
jne 0x140015db2
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 8], rax
cmp qword [rbp - 8], 0
jne 0x140015dc3
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 8]
lea rdx, str.WinUsb_Initialize
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131000], rax
mov rax, qword [0x140131000]
test rax, rax
jne 0x140015e4b
mov rax, qword [rbp - 8]
lea rdx, str.WinUsb_InitializeA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131000], rax
mov rax, qword [0x140131000]
test rax, rax
jne 0x140015e4b
mov rax, qword [rbp - 8]
lea rdx, str.WinUsb_InitializeW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131000], rax
mov rax, qword [0x140131000]
test rax, rax
jne 0x140015e4b
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x10], rax
cmp qword [rbp - 0x10], 0
jne 0x140015e7b
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x10], rax
cmp qword [rbp - 0x10], 0
jne 0x140015e8c
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x10]
lea rdx, str.WinUsb_Free
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131008], rax
mov rax, qword [0x140131008]
test rax, rax
jne 0x140015f14
mov rax, qword [rbp - 0x10]
lea rdx, str.WinUsb_FreeA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131008], rax
mov rax, qword [0x140131008]
test rax, rax
jne 0x140015f14
mov rax, qword [rbp - 0x10]
lea rdx, str.WinUsb_FreeW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131008], rax
mov rax, qword [0x140131008]
test rax, rax
jne 0x140015f14
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x18], rax
cmp qword [rbp - 0x18], 0
jne 0x140015f44
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x18], rax
cmp qword [rbp - 0x18], 0
jne 0x140015f55
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x18]
lea rdx, str.WinUsb_GetAssociatedInterface
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131010], rax
mov rax, qword [0x140131010]
test rax, rax
jne 0x140015fdd
mov rax, qword [rbp - 0x18]
lea rdx, str.WinUsb_GetAssociatedInterfaceA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131010], rax
mov rax, qword [0x140131010]
test rax, rax
jne 0x140015fdd
mov rax, qword [rbp - 0x18]
lea rdx, str.WinUsb_GetAssociatedInterfaceW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131010], rax
mov rax, qword [0x140131010]
test rax, rax
jne 0x140015fdd
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x20], rax
cmp qword [rbp - 0x20], 0
jne 0x14001600d
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x20], rax
cmp qword [rbp - 0x20], 0
jne 0x14001601e
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x20]
lea rdx, str.WinUsb_GetDescriptor
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131018], rax
mov rax, qword [0x140131018]
test rax, rax
jne 0x1400160a6
mov rax, qword [rbp - 0x20]
lea rdx, str.WinUsb_GetDescriptorA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131018], rax
mov rax, qword [0x140131018]
test rax, rax
jne 0x1400160a6
mov rax, qword [rbp - 0x20]
lea rdx, str.WinUsb_GetDescriptorW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131018], rax
mov rax, qword [0x140131018]
test rax, rax
jne 0x1400160a6
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x28], rax
cmp qword [rbp - 0x28], 0
jne 0x1400160d6
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x28], rax
cmp qword [rbp - 0x28], 0
jne 0x1400160e7
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x28]
lea rdx, str.WinUsb_QueryInterfaceSettings
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131020], rax
mov rax, qword [0x140131020]
test rax, rax
jne 0x14001616f
mov rax, qword [rbp - 0x28]
lea rdx, str.WinUsb_QueryInterfaceSettingsA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131020], rax
mov rax, qword [0x140131020]
test rax, rax
jne 0x14001616f
mov rax, qword [rbp - 0x28]
lea rdx, str.WinUsb_QueryInterfaceSettingsW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131020], rax
mov rax, qword [0x140131020]
test rax, rax
jne 0x14001616f
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x30], rax
cmp qword [rbp - 0x30], 0
jne 0x14001619f
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x30], rax
cmp qword [rbp - 0x30], 0
jne 0x1400161b0
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x30]
lea rdx, str.WinUsb_QueryDeviceInformation
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131028], rax
mov rax, qword [0x140131028]
test rax, rax
jne 0x140016238
mov rax, qword [rbp - 0x30]
lea rdx, str.WinUsb_QueryDeviceInformationA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131028], rax
mov rax, qword [0x140131028]
test rax, rax
jne 0x140016238
mov rax, qword [rbp - 0x30]
lea rdx, str.WinUsb_QueryDeviceInformationW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131028], rax
mov rax, qword [0x140131028]
test rax, rax
jne 0x140016238
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x38], rax
cmp qword [rbp - 0x38], 0
jne 0x140016268
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x38], rax
cmp qword [rbp - 0x38], 0
jne 0x140016279
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x38]
lea rdx, str.WinUsb_SetCurrentAlternateSetting
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131030], rax
mov rax, qword [0x140131030]
test rax, rax
jne 0x140016301
mov rax, qword [rbp - 0x38]
lea rdx, str.WinUsb_SetCurrentAlternateSettingA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131030], rax
mov rax, qword [0x140131030]
test rax, rax
jne 0x140016301
mov rax, qword [rbp - 0x38]
lea rdx, str.WinUsb_SetCurrentAlternateSettingW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131030], rax
mov rax, qword [0x140131030]
test rax, rax
jne 0x140016301
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x40], rax
cmp qword [rbp - 0x40], 0
jne 0x140016331
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x40], rax
cmp qword [rbp - 0x40], 0
jne 0x140016342
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x40]
lea rdx, str.WinUsb_GetCurrentAlternateSetting
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131038], rax
mov rax, qword [0x140131038]
test rax, rax
jne 0x1400163ca
mov rax, qword [rbp - 0x40]
lea rdx, str.WinUsb_GetCurrentAlternateSettingA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131038], rax
mov rax, qword [0x140131038]
test rax, rax
jne 0x1400163ca
mov rax, qword [rbp - 0x40]
lea rdx, str.WinUsb_GetCurrentAlternateSettingW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131038], rax
mov rax, qword [0x140131038]
test rax, rax
jne 0x1400163ca
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x48], rax
cmp qword [rbp - 0x48], 0
jne 0x1400163fa
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x48], rax
cmp qword [rbp - 0x48], 0
jne 0x14001640b
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x48]
lea rdx, str.WinUsb_QueryPipe
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131040], rax
mov rax, qword [0x140131040]
test rax, rax
jne 0x140016493
mov rax, qword [rbp - 0x48]
lea rdx, str.WinUsb_QueryPipeA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131040], rax
mov rax, qword [0x140131040]
test rax, rax
jne 0x140016493
mov rax, qword [rbp - 0x48]
lea rdx, str.WinUsb_QueryPipeW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131040], rax
mov rax, qword [0x140131040]
test rax, rax
jne 0x140016493
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x50], rax
cmp qword [rbp - 0x50], 0
jne 0x1400164c3
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x50], rax
cmp qword [rbp - 0x50], 0
jne 0x1400164d4
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x50]
lea rdx, str.WinUsb_SetPipePolicy
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131048], rax
mov rax, qword [0x140131048]
test rax, rax
jne 0x14001655c
mov rax, qword [rbp - 0x50]
lea rdx, str.WinUsb_SetPipePolicyA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131048], rax
mov rax, qword [0x140131048]
test rax, rax
jne 0x14001655c
mov rax, qword [rbp - 0x50]
lea rdx, str.WinUsb_SetPipePolicyW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131048], rax
mov rax, qword [0x140131048]
test rax, rax
jne 0x14001655c
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x58], rax
cmp qword [rbp - 0x58], 0
jne 0x14001658c
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x58], rax
cmp qword [rbp - 0x58], 0
jne 0x14001659d
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x58]
lea rdx, str.WinUsb_GetPipePolicy
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131050], rax
mov rax, qword [0x140131050]
test rax, rax
jne 0x140016625
mov rax, qword [rbp - 0x58]
lea rdx, str.WinUsb_GetPipePolicyA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131050], rax
mov rax, qword [0x140131050]
test rax, rax
jne 0x140016625
mov rax, qword [rbp - 0x58]
lea rdx, str.WinUsb_GetPipePolicyW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131050], rax
mov rax, qword [0x140131050]
test rax, rax
jne 0x140016625
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x60], rax
cmp qword [rbp - 0x60], 0
jne 0x140016655
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x60], rax
cmp qword [rbp - 0x60], 0
jne 0x140016666
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x60]
lea rdx, str.WinUsb_ReadPipe
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131058], rax
mov rax, qword [0x140131058]
test rax, rax
jne 0x1400166ee
mov rax, qword [rbp - 0x60]
lea rdx, str.WinUsb_ReadPipeA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131058], rax
mov rax, qword [0x140131058]
test rax, rax
jne 0x1400166ee
mov rax, qword [rbp - 0x60]
lea rdx, str.WinUsb_ReadPipeW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131058], rax
mov rax, qword [0x140131058]
test rax, rax
jne 0x1400166ee
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x68], rax
cmp qword [rbp - 0x68], 0
jne 0x14001671e
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x68], rax
cmp qword [rbp - 0x68], 0
jne 0x14001672f
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x68]
lea rdx, str.WinUsb_WritePipe
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131060], rax
mov rax, qword [0x140131060]
test rax, rax
jne 0x1400167b7
mov rax, qword [rbp - 0x68]
lea rdx, str.WinUsb_WritePipeA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131060], rax
mov rax, qword [0x140131060]
test rax, rax
jne 0x1400167b7
mov rax, qword [rbp - 0x68]
lea rdx, str.WinUsb_WritePipeW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131060], rax
mov rax, qword [0x140131060]
test rax, rax
jne 0x1400167b7
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x70], rax
cmp qword [rbp - 0x70], 0
jne 0x1400167e7
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x70], rax
cmp qword [rbp - 0x70], 0
jne 0x1400167f8
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x70]
lea rdx, str.WinUsb_ControlTransfer
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131068], rax
mov rax, qword [0x140131068]
test rax, rax
jne 0x140016880
mov rax, qword [rbp - 0x70]
lea rdx, str.WinUsb_ControlTransferA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131068], rax
mov rax, qword [0x140131068]
test rax, rax
jne 0x140016880
mov rax, qword [rbp - 0x70]
lea rdx, str.WinUsb_ControlTransferW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131068], rax
mov rax, qword [0x140131068]
test rax, rax
jne 0x140016880
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x78], rax
cmp qword [rbp - 0x78], 0
jne 0x1400168b0
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x78], rax
cmp qword [rbp - 0x78], 0
jne 0x1400168c1
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x78]
lea rdx, str.WinUsb_ResetPipe
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131070], rax
mov rax, qword [0x140131070]
test rax, rax
jne 0x140016949
mov rax, qword [rbp - 0x78]
lea rdx, str.WinUsb_ResetPipeA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131070], rax
mov rax, qword [0x140131070]
test rax, rax
jne 0x140016949
mov rax, qword [rbp - 0x78]
lea rdx, str.WinUsb_ResetPipeW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131070], rax
mov rax, qword [0x140131070]
test rax, rax
jne 0x140016949
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x80], rax
cmp qword [rbp - 0x80], 0
jne 0x140016979
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x80], rax
cmp qword [rbp - 0x80], 0
jne 0x14001698a
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x80]
lea rdx, str.WinUsb_AbortPipe
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131078], rax
mov rax, qword [0x140131078]
test rax, rax
jne 0x140016a12
mov rax, qword [rbp - 0x80]
lea rdx, str.WinUsb_AbortPipeA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131078], rax
mov rax, qword [0x140131078]
test rax, rax
jne 0x140016a12
mov rax, qword [rbp - 0x80]
lea rdx, str.WinUsb_AbortPipeW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131078], rax
mov rax, qword [0x140131078]
test rax, rax
jne 0x140016a12
mov eax, 0xfffffffb
jmp 0x140016afd
nop
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call rax
mov qword [rbp - 0x88], rax
cmp qword [rbp - 0x88], 0
jne 0x140016a4b
lea rcx, str.winusb.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
call rax
mov qword [rbp - 0x88], rax
cmp qword [rbp - 0x88], 0
jne 0x140016a5f
mov eax, 0xfffffffb
jmp 0x140016afd
mov rax, qword [rbp - 0x88]
lea rdx, str.WinUsb_FlushPipe
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131080], rax
mov rax, qword [0x140131080]
test rax, rax
jne 0x140016aed
mov rax, qword [rbp - 0x88]
lea rdx, str.WinUsb_FlushPipeA
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131080], rax
mov rax, qword [0x140131080]
test rax, rax
jne 0x140016aed
mov rax, qword [rbp - 0x88]
lea rdx, str.WinUsb_FlushPipeW
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x140131080], rax
mov rax, qword [0x140131080]
test rax, rax
jne 0x140016aed
mov eax, 0xfffffffb
jmp 0x140016afd
nop
mov dword [0x140130f78], 1
mov eax, 0
add rsp, 0xb0
pop rbp
ret