Function at 0x1400602d0
Capabilities:
Link many functions at runtime

Disassembly:
push rbp
push rdi
sub rsp, 0x148
lea rbp, [rsp + 0x20]
lea rcx, [0x1401a16c4]
call fcn.140068b20
lea rax, [0x14009a640]
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov eax, dword [rax]
and eax, 0xfffffffd
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 4
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
lea rcx, str.NPcapPacket.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [rbp + 0x28], rax
cmp qword [rbp + 0x28], 0
jne 0x14006033d
lea rcx, str.Packet.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [rbp + 0x28], rax
cmp qword [rbp + 0x28], 0
jne 0x1400603f8
mov rax, qword [rbp + 8]
mov eax, dword [rax]
shr eax, 2
and eax, 1
test eax, eax
je 0x1400603f8
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x114], eax
cmp dword [rbp + 0x114], 0x7e
je 0x140060373
jmp 0x1400603b8
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
lea r8, str.Packet.dll
lea rdx, str._s:_not_found_n
mov rcx, rax
call fcn.140001b10
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
lea rdx, str.__HINT:_you_must_install_either_WinPcap_or_Npcap_n
mov rcx, rax
call fcn.140001b10
mov eax, 0xffffffff
jmp 0x140060d29
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x114], eax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov ecx, dword [rbp + 0x114]
mov r9d, ecx
lea r8, str.Packet.dll
lea rdx, str._s:_couldnt_load__d_n
mov rcx, rax
call fcn.140001b10
mov eax, 0xffffffff
jmp 0x140060d29
lea rcx, str.Npcapwpcap.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [rbp + 0x48], rax
cmp qword [rbp + 0x48], 0
jne 0x140060421
lea rcx, str.wpcap.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [rbp + 0x48], rax
cmp qword [rbp + 0x48], 0
jne 0x140060478
mov rax, qword [rbp + 8]
mov eax, dword [rax]
shr eax, 2
and eax, 1
test eax, eax
je 0x14006046e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp + 0x114], eax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov ecx, dword [rbp + 0x114]
mov r9d, ecx
lea r8, str.wpcap.dll
lea rdx, str._s:_couldnt_load__d_n
mov rcx, rax
call fcn.140001b10
mov eax, 0xffffffff
jmp 0x140060d29
lea rdx, str.pcap_close
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x10], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x10], 0
jne 0x1400604ba
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005f960]
mov qword [rax + 0x10], rcx
lea rdx, str.pcap_datalink
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x18], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x18], 0
jne 0x1400604fc
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fa90]
mov qword [rax + 0x18], rcx
lea rdx, str.pcap_dispatch
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x20], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x20], 0
jne 0x14006053e
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fbd0]
mov qword [rax + 0x20], rcx
lea rdx, str.pcap_findalldevs
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x28], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x28], 0
jne 0x140060580
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fc40]
mov qword [rax + 0x28], rcx
lea rdx, str.pcap_freealldevs
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x30], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x30], 0
jne 0x1400605c2
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fca0]
mov qword [rax + 0x30], rcx
lea rdx, str.pcap_lib_version
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x40], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x40], 0
jne 0x140060604
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fd20]
mov qword [rax + 0x40], rcx
lea rdx, str.pcap_lookupdev
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x38], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x38], 0
jne 0x140060646
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fd50]
mov qword [rax + 0x38], rcx
lea rdx, str.pcap_major_version
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x48], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x48], 0
jne 0x140060688
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fda0]
mov qword [rax + 0x48], rcx
lea rdx, str.pcap_minor_version
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x50], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x50], 0
jne 0x1400606ca
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fde0]
mov qword [rax + 0x50], rcx
lea rdx, str.pcap_open_live
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x58], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x58], 0
jne 0x14006070c
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fe70]
mov qword [rax + 0x58], rcx
lea rdx, str.pcap_open_offline
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x60], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x60], 0
jne 0x14006074e
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fef0]
mov qword [rax + 0x60], rcx
lea rdx, str.pcap_sendpacket
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x68], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x68], 0
jne 0x140060790
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005ffb0]
mov qword [rax + 0x68], rcx
lea rdx, str.pcap_next
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x70], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x70], 0
jne 0x1400607d2
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fe20]
mov qword [rax + 0x70], rcx
lea rdx, str.pcap_setdirection
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x78], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x78], 0
jne 0x140060814
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x140060160]
mov qword [rax + 0x78], rcx
lea rdx, str.pcap_datalink_val_to_name
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x80], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x80], 0
jne 0x14006085f
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fad0]
mov qword [rax + 0x80], rcx
lea rdx, str.pcap_perror
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x88], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x88], 0
jne 0x1400608aa
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005ff40]
mov qword [rax + 0x88], rcx
lea rdx, str.pcap_geterr
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x90], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x90], 0
jne 0x1400608f5
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fce0]
mov qword [rax + 0x90], rcx
mov rax, qword [rbp + 8]
lea rcx, [0x14005fb50]
mov qword [rax + 0x98], rcx
mov rax, qword [rbp + 8]
lea rcx, [0x14005fb10]
mov qword [rax + 0xa0], rcx
mov rax, qword [rbp + 8]
lea rcx, [0x14005fb90]
mov qword [rax + 0xa8], rcx
lea rdx, str.pcap_sendqueue_alloc
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0xb0], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0xb0], 0
jne 0x140060976
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x140060010]
mov qword [rax + 0xb0], rcx
lea rdx, str.pcap_sendqueue_transmit
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0xb8], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0xb8], 0
jne 0x1400609c1
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x140060100]
mov qword [rax + 0xb8], rcx
lea rdx, str.pcap_sendqueue_destroy
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0xc0], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0xc0], 0
jne 0x140060a0c
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x140060050]
mov qword [rax + 0xc0], rcx
lea rdx, str.pcap_sendqueue_queue
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0xc8], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0xc8], 0
jne 0x140060a57
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x1400600a0]
mov qword [rax + 0xc8], rcx
lea rdx, str.pcap_create
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0xd0], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0xd0], 0
jne 0x140060aa2
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fa60]
mov qword [rax + 0xd0], rcx
lea rdx, str.pcap_set_snaplen
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0xd8], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0xd8], 0
jne 0x140060aed
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x140060270]
mov qword [rax + 0xd8], rcx
lea rdx, str.pcap_set_promisc
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0xe0], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0xe0], 0
jne 0x140060b38
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x140060210]
mov qword [rax + 0xe0], rcx
lea rdx, str.pcap_set_timeout
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0xe8], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0xe8], 0
jne 0x140060b83
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x1400602a0]
mov qword [rax + 0xe8], rcx
lea rdx, str.pcap_set_immediate_mode
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0xf0], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0xf0], 0
jne 0x140060bce
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x1400601e0]
mov qword [rax + 0xf0], rcx
lea rdx, str.pcap_set_buffer_size
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0xf8], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0xf8], 0
jne 0x140060c19
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x1400601b0]
mov qword [rax + 0xf8], rcx
lea rdx, str.pcap_set_rfmon
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x100], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x100], 0
jne 0x140060c64
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x140060240]
mov qword [rax + 0x100], rcx
lea rdx, str.pcap_can_set_rfmon
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x108], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x108], 0
jne 0x140060caf
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fa30]
mov qword [rax + 0x108], rcx
lea rdx, str.pcap_activate
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
mov qword [rcx + 0x110], rax
mov rax, qword [rbp + 8]
cmp qword [rax + 0x110], 0
jne 0x140060cfa
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 1
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
mov rax, qword [rbp + 8]
lea rcx, [0x14005fa00]
mov qword [rax + 0x110], rcx
mov rax, qword [rbp + 8]
mov eax, dword [rax]
and eax, 1
test eax, eax
jne 0x140060d18
mov rax, qword [rbp + 8]
mov eax, dword [rax]
or eax, 2
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
jmp 0x140060d27
mov rax, qword [rbp + 8]
mov eax, dword [rax]
and eax, 0xfffffffd
mov rcx, qword [rbp + 8]
mov dword [rcx], eax
xor eax, eax
lea rsp, [rbp + 0x128]
pop rdi
pop rbp
ret