Function at 0x14003bd20
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, 0x1e70
call fcn.140068ce0
sub rsp, rax
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0x614
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov ecx, dword [rsp + 0x1e98]
mov rax, qword [0x14009ad80]
xor rax, rbp
mov qword [rbp + 0x1e48], rax
lea rcx, [0x1401a0bc2]
call fcn.140068b20
mov dword [rbp + 0x14b4], 0
mov dword [rbp + 0x14d4], 0
call fcn.1400427c0
mov qword [0x14019c540], rax
lea rdx, [rbp + 0x1500]
mov cx, 0x101
call sub.WS2_32.dll_WSAStartup
xor ecx, ecx
call fcn.14003f110
mov qword [0x14019c548], rax
mov dword [rbp + 0x16b4], 1
mov dword [rbp + 0x1494], 1
jmp 0x14003bdd5
mov eax, dword [rbp + 0x1494]
inc eax
mov dword [rbp + 0x1494], eax
mov eax, dword [rbp + 0x1e70]
cmp dword [rbp + 0x1494], eax
jae 0x14003be10
mov eax, dword [rbp + 0x1494]
lea rdx, str.__nobacktrace
mov rcx, qword [rbp + 0x1e78]
mov rcx, qword [rcx + rax*8]
call sub.ucrtbased.dll_strcmp
test eax, eax
jne 0x14003be0e
mov dword [rbp + 0x16b4], 0
jmp 0x14003bdc7
cmp dword [rbp + 0x16b4], 0
je 0x14003be32
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rbp + 0x1e78]
mov rcx, qword [rcx + rax]
call fcn.140015870
mov r8d, 0x1468
xor edx, edx
lea rcx, [rbp + 0x10]
call sub.VCRUNTIME140D.dll_memset
mov dword [rbp + 0x145c], send
mov eax, dword [rbp + 0xf34]
or eax, 2
mov dword [rbp + 0xf34], eax
mov eax, dword [rbp + 0xf34]
or eax, 0x40
mov dword [rbp + 0xf34], eax
mov dword [rbp + 0xcf8], 0xa
movsd xmm0, qword [0x140085900]
movsd qword [rbp + 0xce8], xmm0
mov dword [rbp + 0xbb0], 1
mov dword [rbp + 0xd18], 1
mov dword [rbp + 0xd1c], 1
mov dword [rbp + 0x1458], 0x3c
call fcn.140062510
mov qword [rbp + 0x1278], rax
call fcn.140061f90
mov qword [rbp + 0x1280], rax
lea r8, [0x140083170]
mov edx, 0x100
lea rcx, [rbp + 0xf48]
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 + 0x1e78]
mov edx, dword [rbp + 0x1e70]
lea rcx, str.__readscan
call fcn.140033990
test eax, eax
je 0x14003bf1a
mov eax, dword [rbp + 0xcf4]
bts eax, 0xc
mov dword [rbp + 0xcf4], eax
mov r8, qword [rbp + 0x1e78]
mov edx, dword [rbp + 0x1e70]
lea rcx, [rbp + 0x10]
call fcn.1400320c0
cmp qword [rbp + 0xd28], 0
jne 0x14003bf46
call fcn.140060dc0
mov qword [rbp + 0xd28], rax
lea rcx, [rbp + 0x10]
call fcn.140034950
mov eax, dword [rbp + 0xcf4]
shr eax, 0x13
and eax, 1
test eax, eax
je 0x14003bf68
lea rcx, [rbp + 0x10]
call fcn.140056fd0
call fcn.1400602d0
test eax, eax
je 0x14003bf82
lea rdx, str.libpcap:_failed_to_load_n
mov ecx, 2
call fcn.14002ddd0
call fcn.140050970
call fcn.1400261c0
call fcn.140048fd0
lea rcx, [rbp + 0xbb8]
call fcn.140010160
test eax, eax
jne 0x14003bfbd
lea rcx, [rbp + 0xbb8]
call fcn.1400101c0
test eax, eax
jne 0x14003bfbd
mov dword [rbp + 0x1e44], 0
jmp 0x14003bfc7
mov dword [rbp + 0x1e44], 1
mov eax, dword [rbp + 0x1e44]
mov dword [rbp + 0x14b4], eax
lea rcx, [rbp + 0xbb8]
call fcn.140010270
mov dword [rbp + 0x14d4], eax
lea rdx, [rbp + 0xc40]
lea rcx, [rbp + 0xbb8]
call fcn.140010040
cmp dword [rbp + 0x14d4], 0
jne 0x14003c01d
cmp dword [rbp + 0x10], 5
jne 0x14003c01d
xor r8d, r8d
lea rdx, [0x140071b80]
lea rcx, [rbp + 0xbb8]
call fcn.14000fdd0
lea rcx, [rbp + 0xbb8]
call fcn.1400102d0
lea rdx, [rbp + 0xbb8]
lea rcx, [rbp + 0x1d38]
call fcn.14000dab0
lea rcx, [rbp + 0x1dd0]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rcx, [rbp + 0x1dd0]
call fcn.140006d60
cmp eax, 0x3f
jbe 0x14003c100
lea rdx, [rbp + 0xbb8]
lea rcx, [rbp + 0x1d68]
call fcn.14000dab0
lea rcx, [rbp + 0x1e00]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rcx, [rbp + 0x1e00]
call fcn.140006d60
mov dword [rbp + 0x1e44], eax
mov ecx, 2
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov ecx, dword [rbp + 0x1e44]
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 + 0x1e44], eax
cmp dword [rbp + 0x1e44], 0xa
ja case.default.0x14003c12e
movsxd rax, dword [rbp + 0x1e44]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0x3c6d0]
add rax, rcx
jmp rax
call fcn.140037d30
jmp case.default.0x14003c12e
lea rcx, [rbp + 0xbb8]
call fcn.14000b320
test rax, rax
jne 0x14003c1d4
lea rdx, [rbp + 0xbd8]
lea rcx, [rbp + 0x1d98]
call fcn.14000e490
lea rcx, [rbp + 0x1e30]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rcx, [rbp + 0x1e30]
call fcn.14003bbc0
test eax, eax
je 0x14003c1d4
lea rdx, str.FAIL:_target_IP_address_list_empty_n
xor ecx, ecx
call fcn.14002ddd0
cmp dword [rbp + 0x14b4], 0
je 0x14003c1ad
lea rdx, str.__hint__all_addresses_were_removed_by_exclusion_ranges_n
xor ecx, ecx
call fcn.14002ddd0
jmp 0x14003c1c9
lea rdx, str.__hint__try_something_like____range_10.0.0.0_8__n
xor ecx, ecx
call fcn.14002ddd0
lea rdx, str.__hint__try_something_like____range_192.168.0.100_192.168.0.200__n
xor ecx, ecx
call fcn.14002ddd0
mov ecx, 1
call qword [sym.imp.ucrtbased.dll_exit]
lea rcx, [rbp + 0xc00]
call fcn.14000b320
test rax, rax
jne 0x14003c232
cmp dword [rbp + 0x14d4], 0
je 0x14003c1fe
lea rdx, str.__hint__all_ports_were_removed_by_exclusion_ranges_n
xor ecx, ecx
call fcn.14002ddd0
jmp 0x14003c228
lea rdx, str.FAIL:_no_ports_were_specified_n
xor ecx, ecx
call fcn.14002ddd0
lea rdx, str.__hint__try_something_like___p80_8000_9000__n
xor ecx, ecx
call fcn.14002ddd0
lea rdx, str.__hint__try_something_like____ports_0_65535__n
xor ecx, ecx
call fcn.14002ddd0
mov eax, 1
jmp 0x14003c6a0
lea rcx, [rbp + 0x10]
call fcn.14003c700
jmp 0x14003c6a0
lea rcx, [rbp + 0x10]
call fcn.140002980
xor eax, eax
jmp 0x14003c6a0
call fcn.1400516e0
jmp case.default.0x14003c12e
mov dword [rbp + 0x1494], 0
jmp 0x14003c274
mov eax, dword [rbp + 0x1494]
inc eax
mov dword [rbp + 0x1494], eax
mov eax, dword [rbp + 0xbb0]
cmp dword [rbp + 0x1494], eax
jae 0x14003c29e
mov eax, dword [rbp + 0x1494]
imul rax, rax, 0x170
lea rax, [rbp + rax + 0x30]
mov rcx, rax
call fcn.140051ac0
jmp 0x14003c266
xor eax, eax
jmp 0x14003c6a0
lea rcx, [rbp + 0x10]
call fcn.140003a20
xor eax, eax
jmp 0x14003c6a0
mov dword [rbp + 0x16d4], 1
jmp 0x14003c2cf
mov eax, dword [rbp + 0x16d4]
inc eax
mov dword [rbp + 0x16d4], eax
mov eax, dword [rbp + 0x1e70]
cmp dword [rbp + 0x16d4], eax
jae 0x14003c316
mov eax, dword [rbp + 0x16d4]
mov r8d, 0xa
lea rdx, str.__readscan
mov rcx, qword [rbp + 0x1e78]
mov rcx, qword [rcx + rax*8]
call sub.VCRUNTIME140D.dll_memcmp
test eax, eax
jne 0x14003c314
mov eax, dword [rbp + 0x16d4]
inc eax
mov dword [rbp + 0x16d4], eax
jmp 0x14003c316
jmp 0x14003c2c1
mov eax, dword [rbp + 0x16d4]
inc eax
mov dword [rbp + 0x16f4], eax
jmp 0x14003c334
mov eax, dword [rbp + 0x16f4]
inc eax
mov dword [rbp + 0x16f4], eax
mov eax, dword [rbp + 0x1e70]
cmp dword [rbp + 0x16f4], eax
jae 0x14003c367
mov eax, dword [rbp + 0x16f4]
mov ecx, 1
imul rcx, rcx, 0
mov rdx, qword [rbp + 0x1e78]
mov rax, qword [rdx + rax*8]
movsx eax, byte [rax + rcx]
cmp eax, 0x2d
je 0x14003c367
jmp 0x14003c326
mov r9, qword [rbp + 0x1e78]
mov r8d, dword [rbp + 0x16f4]
mov edx, dword [rbp + 0x16d4]
lea rcx, [rbp + 0x10]
call fcn.140005bf0
jmp case.default.0x14003c12e
mov edx, 0x40
lea rcx, str._benchmarking___u_bits___n_n
call fcn.1400024a0
mov ecx, dword [rbp + 0x145c]
call fcn.140049fa0
mov ecx, dword [rbp + 0x145c]
call fcn.140001f50
call fcn.140059390
mov ecx, 1
call qword [sym.imp.ucrtbased.dll_exit]
jmp case.default.0x14003c12e
mov ecx, 1
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x10]
call fcn.140033a10
xor ecx, ecx
call qword [sym.imp.ucrtbased.dll_exit]
jmp case.default.0x14003c12e
mov ecx, 1
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x10]
call fcn.140033a10
xor ecx, ecx
call qword [sym.imp.ucrtbased.dll_exit]
jmp case.default.0x14003c12e
mov dword [rbp + 0x1714], 0
call fcn.140010540
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.14000f630
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140039300
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.1400682a0
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140006b00
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140019780
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.14005a2e0
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140020800
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.1400018e0
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140016830
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.1400421f0
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140058220
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.14001fb30
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140026780
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140062bf0
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.14004a460
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140051a90
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.14004af10
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140065a90
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.14000c560
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.1400095e0
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140042a20
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140056640
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140031f20
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.1400498d0
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140053770
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
call fcn.140010be0
mov ecx, dword [rbp + 0x1714]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x1714], eax
cmp dword [rbp + 0x1714], 0
je 0x14003c680
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 0x14003c6a0
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 0x14003c6a0
xor eax, eax
mov rdi, rax
lea rcx, [rbp - 0x20]
lea rdx, [0x1400863b0]
call fcn.140068a90
mov rax, rdi
mov rcx, qword [rbp + 0x1e48]
xor rcx, rbp
call fcn.140068cb0
lea rsp, [rbp + 0x1e50]
pop rdi
pop rsi
pop rbp
ret