Function at 0x14003e370
Capabilities:
Initialize winsock library
Terminate process

Disassembly:
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rbp
push rsi
push rdi
mov eax, 0x2060
call fcn.14006bba0
sub rsp, rax
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0x690
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov ecx, dword [rsp + 0x2088]
mov rax, qword [0x14009f088]
xor rax, rbp
mov qword [rbp + 0x2038], rax
lea rcx, [0x1401a4bfc]
call fcn.14006b9e0
mov dword [rbp + 0x16a4], 0
mov dword [rbp + 0x16c4], 0
call fcn.1400450b0
mov qword [0x1401a0820], rax
lea rdx, [rbp + 0x16f0]
mov cx, 0x101
call sub.WS2_32.dll_WSAStartup
xor ecx, ecx
call fcn.140041a00
mov qword [0x1401a0828], rax
mov dword [rbp + 0x18a4], 1
mov dword [rbp + 0x1684], 1
jmp 0x14003e425
mov eax, dword [rbp + 0x1684]
inc eax
mov dword [rbp + 0x1684], eax
mov eax, dword [rbp + 0x2060]
cmp dword [rbp + 0x1684], eax
jae 0x14003e460
mov eax, dword [rbp + 0x1684]
lea rdx, str.__nobacktrace
mov rcx, qword [rbp + 0x2068]
mov rcx, qword [rcx + rax*8]
call sub.ucrtbased.dll_strcmp
test eax, eax
jne 0x14003e45e
mov dword [rbp + 0x18a4], 0
jmp 0x14003e417
cmp dword [rbp + 0x18a4], 0
je 0x14003e482
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rbp + 0x2068]
mov rcx, qword [rcx + rax]
call fcn.140015720
mov r8d, 0x1658
xor edx, edx
lea rcx, [rbp + 0x10]
call sub.VCRUNTIME140D.dll_memset
mov dword [rbp + 0x164c], send
mov eax, dword [rbp + 0xf3c]
or eax, 1
mov dword [rbp + 0xf3c], eax
mov eax, dword [rbp + 0xf3c]
or eax, 0x20
mov dword [rbp + 0xf3c], eax
mov dword [rbp + 0xcf8], 0xa
movsd xmm0, qword [0x140089380]
movsd qword [rbp + 0xce8], xmm0
mov dword [rbp + 0xbb0], 1
mov dword [rbp + 0xd18], 1
mov dword [rbp + 0xd1c], 1
mov dword [rbp + 0x1648], 0x3c
call fcn.1400653d0
mov qword [rbp + 0x1280], rax
call fcn.140064e50
mov qword [rbp + 0x1288], rax
lea r8, [0x140086a58]
mov edx, 0x100
lea rcx, [rbp + 0xf50]
call qword [sym.imp.ucrtbased.dll_strcpy_s]
mov eax, dword [rbp + 0xcf4]
or eax, 0x40
mov dword [rbp + 0xcf4], eax
mov r8, qword [rbp + 0x2068]
mov edx, dword [rbp + 0x2060]
lea rcx, str.__readscan
call fcn.140036200
test eax, eax
je 0x14003e56a
mov eax, dword [rbp + 0xcf4]
bts eax, 0xc
mov dword [rbp + 0xcf4], eax
mov r8, qword [rbp + 0x2068]
mov edx, dword [rbp + 0x2060]
lea rcx, [rbp + 0x10]
call fcn.140034930
cmp qword [rbp + 0xd28], 0
jne 0x14003e596
call fcn.140063c60
mov qword [rbp + 0xd28], rax
lea rcx, [rbp + 0x10]
call fcn.1400370e0
mov eax, dword [rbp + 0xcf4]
shr eax, 0x13
and eax, 1
test eax, eax
je 0x14003e5b8
lea rcx, [rbp + 0x10]
call fcn.140059a30
call fcn.140063170
test eax, eax
je 0x14003e5d2
lea rdx, str.libpcap:_failed_to_load_n
mov ecx, 2
call fcn.14002f7e0
call fcn.1400533d0
call fcn.140027900
call fcn.14004b8c0
lea rcx, [rbp + 0xbb8]
call fcn.14000ffa0
test eax, eax
jne 0x14003e60d
lea rcx, [rbp + 0xbb8]
call fcn.140010000
test eax, eax
jne 0x14003e60d
mov dword [rbp + 0x2034], 0
jmp 0x14003e617
mov dword [rbp + 0x2034], 1
mov eax, dword [rbp + 0x2034]
mov dword [rbp + 0x16a4], eax
lea rcx, [rbp + 0xbb8]
call fcn.1400100b0
mov dword [rbp + 0x16c4], eax
lea rdx, [rbp + 0xc40]
lea rcx, [rbp + 0xbb8]
call fcn.14000fe80
cmp dword [rbp + 0x16c4], 0
jne 0x14003e66d
cmp dword [rbp + 0x10], 5
jne 0x14003e66d
xor r8d, r8d
lea rdx, [0x140074990]
lea rcx, [rbp + 0xbb8]
call fcn.14000fc10
lea rcx, [rbp + 0xbb8]
call fcn.140010110
lea rdx, [rbp + 0xbb8]
lea rcx, [rbp + 0x1f28]
call fcn.14000d8f0
lea rcx, [rbp + 0x1fc0]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rcx, [rbp + 0x1fc0]
call fcn.140006dd0
cmp eax, 0x3f
jbe 0x14003e750
lea rdx, [rbp + 0xbb8]
lea rcx, [rbp + 0x1f58]
call fcn.14000d8f0
lea rcx, [rbp + 0x1ff0]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rcx, [rbp + 0x1ff0]
call fcn.140006dd0
mov dword [rbp + 0x2034], eax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov ecx, dword [rbp + 0x2034]
mov r8d, ecx
lea rdx, str.____FAIL:_scan_range_too_large__max_is_63_bits__requested_is__u_bits_n
mov rcx, rax
call fcn.140001b10
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
lea rdx, str.____Hint:_scan_range_is_number_of_IP_addresses_times_number_of_ports_n
mov rcx, rax
call fcn.140001b10
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
lea rdx, str.____Hint:_IPv6_subnet_must_be_at_least__66__n
mov rcx, rax
call fcn.140001b10
mov ecx, 1
call qword [sym.imp.ucrtbased.dll_exit]
mov eax, dword [rbp + 0x10]
mov dword [rbp + 0x2034], eax
cmp dword [rbp + 0x2034], 0xa
ja case.default.0x14003e77e
movsxd rax, dword [rbp + 0x2034]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0x3ed20]
add rax, rcx
jmp rax
call fcn.14003a220
jmp case.default.0x14003e77e
lea rcx, [rbp + 0xbb8]
call fcn.14000b160
test rax, rax
jne 0x14003e824
lea rdx, [rbp + 0xbd8]
lea rcx, [rbp + 0x1f88]
call fcn.14000e2d0
lea rcx, [rbp + 0x2020]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rcx, [rbp + 0x2020]
call fcn.14003e210
test eax, eax
je 0x14003e824
lea rdx, str.FAIL:_target_IP_address_list_empty_n
xor ecx, ecx
call fcn.14002f7e0
cmp dword [rbp + 0x16a4], 0
je 0x14003e7fd
lea rdx, str.__hint__all_addresses_were_removed_by_exclusion_ranges_n
xor ecx, ecx
call fcn.14002f7e0
jmp 0x14003e819
lea rdx, str.__hint__try_something_like____range_10.0.0.0_8__n
xor ecx, ecx
call fcn.14002f7e0
lea rdx, str.__hint__try_something_like____range_192.168.0.100_192.168.0.200__n
xor ecx, ecx
call fcn.14002f7e0
mov ecx, 1
call qword [sym.imp.ucrtbased.dll_exit]
lea rcx, [rbp + 0xc00]
call fcn.14000b160
test rax, rax
jne 0x14003e882
cmp dword [rbp + 0x16c4], 0
je 0x14003e84e
lea rdx, str.__hint__all_ports_were_removed_by_exclusion_ranges_n
xor ecx, ecx
call fcn.14002f7e0
jmp 0x14003e878
lea rdx, str.FAIL:_no_ports_were_specified_n
xor ecx, ecx
call fcn.14002f7e0
lea rdx, str.__hint__try_something_like___p80_8000_9000__n
xor ecx, ecx
call fcn.14002f7e0
lea rdx, str.__hint__try_something_like____ports_0_65535__n
xor ecx, ecx
call fcn.14002f7e0
mov eax, 1
jmp 0x14003ecf0
lea rcx, [rbp + 0x10]
call fcn.14003ed50
jmp 0x14003ecf0
lea rcx, [rbp + 0x10]
call fcn.140002980
xor eax, eax
jmp 0x14003ecf0
call fcn.140054140
jmp case.default.0x14003e77e
mov dword [rbp + 0x1684], 0
jmp 0x14003e8c4
mov eax, dword [rbp + 0x1684]
inc eax
mov dword [rbp + 0x1684], eax
mov eax, dword [rbp + 0xbb0]
cmp dword [rbp + 0x1684], eax
jae 0x14003e8ee
mov eax, dword [rbp + 0x1684]
imul rax, rax, 0x170
lea rax, [rbp + rax + 0x30]
mov rcx, rax
call fcn.140054520
jmp 0x14003e8b6
xor eax, eax
jmp 0x14003ecf0
lea rcx, [rbp + 0x10]
call fcn.140003a20
xor eax, eax
jmp 0x14003ecf0
mov dword [rbp + 0x18c4], 1
jmp 0x14003e91f
mov eax, dword [rbp + 0x18c4]
inc eax
mov dword [rbp + 0x18c4], eax
mov eax, dword [rbp + 0x2060]
cmp dword [rbp + 0x18c4], eax
jae 0x14003e966
mov eax, dword [rbp + 0x18c4]
mov r8d, 0xa
lea rdx, str.__readscan
mov rcx, qword [rbp + 0x2068]
mov rcx, qword [rcx + rax*8]
call sub.VCRUNTIME140D.dll_memcmp
test eax, eax
jne 0x14003e964
mov eax, dword [rbp + 0x18c4]
inc eax
mov dword [rbp + 0x18c4], eax
jmp 0x14003e966
jmp 0x14003e911
mov eax, dword [rbp + 0x18c4]
inc eax
mov dword [rbp + 0x18e4], eax
jmp 0x14003e984
mov eax, dword [rbp + 0x18e4]
inc eax
mov dword [rbp + 0x18e4], eax
mov eax, dword [rbp + 0x2060]
cmp dword [rbp + 0x18e4], eax
jae 0x14003e9b7
mov eax, dword [rbp + 0x18e4]
mov ecx, 1
imul rcx, rcx, 0
mov rdx, qword [rbp + 0x2068]
mov rax, qword [rdx + rax*8]
movsx eax, byte [rax + rcx]
cmp eax, 0x2d
je 0x14003e9b7
jmp 0x14003e976
mov r9, qword [rbp + 0x2068]
mov r8d, dword [rbp + 0x18e4]
mov edx, dword [rbp + 0x18c4]
lea rcx, [rbp + 0x10]
call fcn.140005bf0
jmp case.default.0x14003e77e
mov edx, 0x40
lea rcx, str._benchmarking___u_bits___n_n
call fcn.1400024a0
mov ecx, dword [rbp + 0x164c]
call fcn.14004c890
mov ecx, dword [rbp + 0x164c]
call fcn.140001f50
call fcn.14005bdf0
mov ecx, 1
call qword [sym.imp.ucrtbased.dll_exit]
jmp case.default.0x14003e77e
mov ecx, 1
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x10]
call fcn.140036280
xor ecx, ecx
call qword [sym.imp.ucrtbased.dll_exit]
jmp case.default.0x14003e77e
mov ecx, 1
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x10]
call fcn.140036280
xor ecx, ecx
call qword [sym.imp.ucrtbased.dll_exit]
jmp case.default.0x14003e77e
mov dword [rbp + 0x1904], 0
call fcn.140010380
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.14000f470
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.14003b7f0
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.14006b160
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140006b40
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140019630
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.14005cf10
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140021f40
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.1400018e0
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.1400166e0
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140044ae0
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.14005ac80
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140021270
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140027ec0
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140065ab0
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.14004cd50
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.1400544f0
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.14004d800
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140068950
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.14000c3a0
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140009420
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140045310
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.1400590a0
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140034790
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.14004c1c0
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.1400561d0
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
call fcn.140010a20
mov ecx, dword [rbp + 0x1904]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1904], eax
cmp dword [rbp + 0x1904], 0
je 0x14003ecd0
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
lea rdx, str.regression_test:_failed_:___n
mov rcx, rax
call fcn.140001b10
mov eax, 1
jmp 0x14003ecf0
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
lea rdx, str.regression_test:_success__n
mov rcx, rax
call fcn.140001b10
xor eax, eax
jmp 0x14003ecf0
xor eax, eax
mov rdi, rax
lea rcx, [rbp - 0x20]
lea rdx, [0x140089e30]
call fcn.14006b950
mov rax, rdi
mov rcx, qword [rbp + 0x2038]
xor rcx, rbp
call fcn.14006bb70
lea rsp, [rbp + 0x2040]
pop rdi
pop rsi
pop rbp
ret