Function at 0x14013eb20
Capabilities:
Create tcp socket
Create udp socket
Get local ipv4 addresses
Get socket information

Disassembly:
mov word [rsp + 0x20], r9w
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
mov eax, 0x1090
call fcn.1401d4c90
sub rsp, rax
mov qword [rsp + 0x1030], 0xfffffffffffffffe
mov rax, qword [0x1402a15c0]
xor rax, rsp
mov qword [rsp + 0x1088], rax
mov dword [rsp + 0x30], 0
mov rax, qword [rsp + 0x10a8]
cmp dword [rax + 0xc], 0
jge 0x14013eb81
mov eax, 1
jmp 0x14013f5ea
mov rax, qword [rsp + 0x10a8]
cmp dword [rax + 0xc], 0x40
jl 0x14013ec02
mov rdx, qword [rsp + 0x10a8]
add rdx, 0xb0
lea rcx, [rsp + 0x1000]
call fcn.140010530
mov qword [rsp + 0x1038], rax
mov rax, qword [rsp + 0x1038]
mov qword [rsp + 0x1040], rax
mov rcx, qword [rsp + 0x1040]
call fcn.1400105c0
mov r8, rax
mov rax, qword [rsp + 0x10a8]
mov r9d, dword [rax + 0xc]
lea rdx, str._ERROR__ip__s_targetid__d_is_invalid
xor ecx, ecx
call fcn.1400dc610
nop
lea rcx, [rsp + 0x1000]
call fcn.140002e70
xor eax, eax
jmp 0x14013f5ea
mov qword [rsp + 0x3a0], 0
mov rcx, qword [rsp + 0x10a0]
add rcx, 0x518
call fcn.140010210
mov rcx, qword [rsp + 0x10a0]
add rcx, 0x4e0
lea r8, [rsp + 0x3a0]
mov rax, qword [rsp + 0x10a8]
mov edx, dword [rax]
call fcn.14001ecf0
test eax, eax
je 0x14013ec5d
mov rax, qword [rsp + 0x3a0]
cmp dword [rax + 0x84], 0
jne 0x14013ec85
mov rcx, qword [rsp + 0x10a0]
add rcx, 0x518
mov rax, qword [rsp + 0x10a0]
mov rax, qword [rax + 0x518]
call qword [rax + 0x28]
xor eax, eax
jmp 0x14013f5ea
mov rcx, qword [rsp + 0x10a0]
add rcx, 0x518
mov rax, qword [rsp + 0x10a0]
mov rax, qword [rax + 0x518]
call qword [rax + 0x28]
mov rcx, qword [rsp + 0x3a0]
call fcn.14001d590
cmp dword [rsp + 0x10b0], 2
je 0x14013eecb
cmp dword [rsp + 0x10b0], 4
je 0x14013eecb
mov dword [rsp + 0x3ac], 1
mov dword [rsp + 0x7b0], 0
xor eax, eax
mov word [rsp + 0x3b0], ax
lea rdi, [rsp + 0x3b2]
xor eax, eax
mov ecx, 0x3fe
rep stosb byte [rdi], al
mov r8d, 0x200
lea rdx, [rsp + 0x3b0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea r8, [rsp + 0x7b0]
lea rdx, [rsp + 0x3ac]
lea rcx, [rsp + 0x3b0]
call qword [sym.imp.imagehlp.dll_MapFileAndCheckSumW]
test eax, eax
je 0x14013ed83
mov dword [rsp + 0x7b4], 0
jmp 0x14013ed56
mov eax, dword [rsp + 0x7b4]
add eax, 1
mov dword [rsp + 0x7b4], eax
movsxd rax, dword [rsp + 0x7b4]
cmp rax, 0xa
jae 0x14013ed81
movsxd rcx, dword [rsp + 0x7b4]
mov rax, qword [rsp + 0x10a0]
mov dword [rax + rcx*4 + 0x4ac], 1
jmp 0x14013ed45
jmp 0x14013eddc
mov eax, dword [rsp + 0x7b0]
cmp dword [rsp + 0x3ac], eax
je 0x14013eddc
mov dword [rsp + 0x7b8], 0
jmp 0x14013edb1
mov eax, dword [rsp + 0x7b8]
add eax, 1
mov dword [rsp + 0x7b8], eax
movsxd rax, dword [rsp + 0x7b8]
cmp rax, 0xa
jae 0x14013eddc
movsxd rcx, dword [rsp + 0x7b8]
mov rax, qword [rsp + 0x10a0]
mov dword [rax + rcx*4 + 0x4ac], 1
jmp 0x14013eda0
mov rax, qword [rsp + 0x10a8]
movzx eax, word [rax + 0x18]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x10a8]
mov r9d, dword [rax + 0xc]
mov r8, qword [rsp + 0x3a0]
mov r8, qword [r8 + 0x48]
lea rdx, str.Reinstatement_iSCSI_connection__s_targetid__d_connectionid__d
xor ecx, ecx
call fcn.1400dc610
mov r8d, 1
mov rax, qword [rsp + 0x10a8]
mov edx, dword [rax + 0xc]
mov rcx, qword [rsp + 0x3a0]
call fcn.140136130
mov dword [rsp + 0x3a8], 1
mov rax, qword [rsp + 0x10a8]
mov edx, dword [rax + 0xc]
mov rcx, qword [rsp + 0x3a0]
call fcn.14001d570
test eax, eax
jne 0x14013eeb2
mov rax, qword [rsp + 0x10a8]
movzx eax, word [rax + 0x18]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x10a8]
mov r9d, dword [rax + 0xc]
mov r8, qword [rsp + 0x3a0]
mov r8, qword [r8 + 0x48]
lea rdx, str.Reinstatement_iSCSI_connection_Open__s_targetid__d_connectionid__d
xor ecx, ecx
call fcn.1400dc610
mov r8d, 1
mov rax, qword [rsp + 0x10a8]
mov edx, dword [rax + 0xc]
mov rcx, qword [rsp + 0x3a0]
call fcn.14013b240
mov dword [rsp + 0x3a8], eax
mov rcx, qword [rsp + 0x3a0]
call fcn.14001d5c0
mov eax, dword [rsp + 0x3a8]
jmp 0x14013f5ea
mov dword [rsp + 0x34], reloc.OLEAUT32.dll_SafeArrayGetDim
lea r8, [rsp + 0x34]
lea rdx, [rsp + 0x48]
mov rcx, qword [rsp + 0x10a8]
mov rcx, qword [rcx + 0x10]
call qword [sym.imp.WS2_32.dll_getsockname]
mov ecx, dword [rsp + 0x4c]
call qword [sym.imp.WS2_32.dll_inet_ntoa]
mov rdx, rax
lea rcx, [rsp + 0x1008]
call fcn.140010530
mov qword [rsp + 0x1048], rax
mov rax, qword [rsp + 0x1048]
mov qword [rsp + 0x1050], rax
mov rcx, qword [rsp + 0x1050]
call fcn.1400105c0
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.1400020d0
nop
lea rcx, [rsp + 0x1008]
call fcn.140002e70
mov rax, qword [rsp + 0x10a8]
movzx ecx, word [rax + 0x18]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rax, qword [rsp + 0x10a8]
mov r9d, dword [rax + 0xc]
mov r8, qword [rsp + 0x3a0]
mov r8, qword [r8 + 0x48]
lea rdx, str.New_iSCSI_connection__s_targetid__d_connectionid__d_serverip__s
xor ecx, ecx
call fcn.1400dc610
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, eax
mov rax, qword [rsp + 0x3a0]
mov dword [rax + 0xe0], edx
lea rcx, [rsp + 0x60]
call fcn.1401cc380
nop
mov rax, qword [rsp + 0x10a8]
mov eax, dword [rax]
mov dword [rsp + 0x1f8], eax
lea rcx, [rsp + 0x60]
call fcn.1401d0fb0
test eax, eax
je 0x14013f385
lea rcx, [rsp + 0x2f0]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
test eax, eax
je 0x14013f385
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x7c0]
call fcn.140001430
nop
mov dword [rsp + 0x7d0], 0
lea rcx, [rsp + 0x7c8]
call fcn.140002db0
nop
lea r9, [rsp + 0x7d0]
lea r8, [0x140230674]
lea rdx, [rsp + 0x1010]
lea rcx, [rsp + 0x7c0]
call fcn.1400065a0
mov qword [rsp + 0x1058], rax
mov rax, qword [rsp + 0x1058]
mov qword [rsp + 0x1060], rax
mov rdx, qword [rsp + 0x1060]
lea rcx, [rsp + 0x7c8]
call fcn.140002d80
nop
lea rcx, [rsp + 0x1010]
call fcn.140001490
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x7c8]
call fcn.14001d8a0
movzx eax, al
test eax, eax
je 0x14013f36a
cmp dword [rsp + 0x7d0], 0xffffffff
je 0x14013f36a
lea r9, [rsp + 0x7d0]
lea r8, [0x1402306ec]
lea rdx, [rsp + 0x1018]
lea rcx, [rsp + 0x7c0]
call fcn.1400065a0
mov qword [rsp + 0x1068], rax
mov rax, qword [rsp + 0x1068]
mov qword [rsp + 0x1070], rax
mov rdx, qword [rsp + 0x1070]
lea rcx, [rsp + 0x7c8]
call fcn.140002d80
nop
lea rcx, [rsp + 0x1018]
call fcn.140001490
lea rcx, [rsp + 0x7c8]
call fcn.140001a40
test eax, eax
jle 0x14013f36a
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x7c8]
call fcn.14001d8f0
movzx eax, al
test eax, eax
je 0x14013f36a
mov rcx, qword [rsp + 0x3a0]
add rcx, 0x100
lea rdx, [rsp + 0x7c8]
call fcn.140002d80
mov rax, qword [rsp + 0x3a0]
cmp qword [rax + 0x88], 0xffffffffffffffff
je 0x14013f18a
mov rcx, qword [rsp + 0x3a0]
mov rcx, qword [rcx + 0x88]
call qword [sym.imp.WS2_32.dll_closesocket]
mov rdx, qword [rsp + 0x3a0]
mov qword [rdx + 0x88], 0xffffffffffffffff
xor r8d, r8d
mov edx, 1
mov ecx, 2
call qword [sym.imp.WS2_32.dll_socket]
mov rdx, rax
mov rax, qword [rsp + 0x3a0]
mov qword [rax + 0x88], rdx
mov rcx, qword [rsp + 0x3a0]
add rcx, 0x100
call fcn.140023510
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9d, 0x3e8
mov r8, rax
mov rdx, qword [rsp + 0x3a0]
mov rdx, qword [rdx + 0x88]
mov rcx, qword [rsp + 0x10a0]
call fcn.1400d8e50
test eax, eax
je 0x14013f342
lea rcx, [rsp + 0xbe0]
call fcn.140002db0
nop
mov rax, qword [rsp + 0x3a0]
mov rax, qword [rax + 0x108]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x10a8]
mov r9d, dword [rax]
mov r8, qword [rsp + 0x3a0]
mov r8, qword [r8 + 0x100]
lea rdx, str.SyncConnect___HTTP_1.0_r_nHost:__s_r_nUserID:__d_r_nComputerName:__s_r_n_r_n
lea rcx, [rsp + 0xbe0]
call fcn.140002c40
lea rcx, [rsp + 0xbe0]
call fcn.140023510
mov rdx, rax
lea rcx, [rsp + 0x1020]
call fcn.140002de0
mov qword [rsp + 0x1078], rax
mov rax, qword [rsp + 0x1078]
mov qword [rsp + 0x1080], rax
lea rcx, [rsp + 0xbe0]
call fcn.140001a40
movsxd rdi, eax
mov rcx, qword [rsp + 0x1080]
call fcn.140002e90
mov r9, rdi
mov r8, rax
mov rdx, qword [rsp + 0x3a0]
mov rdx, qword [rdx + 0x88]
lea rcx, [0x1403aa660]
call fcn.1400d89a0
nop
lea rcx, [rsp + 0x1020]
call fcn.140002e70
lea rdx, str.send_SyncConnect
xor ecx, ecx
call fcn.1400dc610
mov r9d, 0x400
lea r8, [rsp + 0x7e0]
mov rdx, qword [rsp + 0x3a0]
mov rdx, qword [rdx + 0x88]
lea rcx, [0x1403aa660]
call fcn.1400d82f0
mov r9d, 0x400
lea r8, [rsp + 0x7e0]
mov rdx, qword [rsp + 0x3a0]
mov rdx, qword [rdx + 0x88]
lea rcx, [0x1403aa660]
call fcn.1400d82f0
nop
lea rcx, [rsp + 0xbe0]
call fcn.140001490
jmp 0x14013f36a
mov rcx, qword [rsp + 0x3a0]
mov rcx, qword [rcx + 0x88]
call qword [sym.imp.WS2_32.dll_closesocket]
mov rdx, qword [rsp + 0x3a0]
mov qword [rdx + 0x88], 0xffffffffffffffff
lea rcx, [rsp + 0x7c8]
call fcn.140001490
nop
lea rcx, [rsp + 0x7c0]
call fcn.140001490
mov r8d, 1
mov rax, qword [rsp + 0x10a8]
mov edx, dword [rax + 0xc]
mov rcx, qword [rsp + 0x3a0]
call fcn.140136130
mov dword [rsp + 0xbe8], 1
mov dword [rsp + 0xff0], 0
xor eax, eax
mov word [rsp + 0xbf0], ax
lea rdi, [rsp + 0xbf2]
xor eax, eax
mov ecx, 0x3fe
rep stosb byte [rdi], al
mov r8d, 0x200
lea rdx, [rsp + 0xbf0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea r8, [rsp + 0xff0]
lea rdx, [rsp + 0xbe8]
lea rcx, [rsp + 0xbf0]
call qword [sym.imp.imagehlp.dll_MapFileAndCheckSumW]
test eax, eax
je 0x14013f457
mov dword [rsp + 0xff4], 0
jmp 0x14013f42a
mov eax, dword [rsp + 0xff4]
add eax, 1
mov dword [rsp + 0xff4], eax
movsxd rax, dword [rsp + 0xff4]
cmp rax, 0xa
jae 0x14013f455
movsxd rcx, dword [rsp + 0xff4]
mov rax, qword [rsp + 0x10a0]
mov dword [rax + rcx*4 + 0x4ac], 1
jmp 0x14013f419
jmp 0x14013f4b0
mov eax, dword [rsp + 0xff0]
cmp dword [rsp + 0xbe8], eax
je 0x14013f4b0
mov dword [rsp + 0xff8], 0
jmp 0x14013f485
mov eax, dword [rsp + 0xff8]
add eax, 1
mov dword [rsp + 0xff8], eax
movsxd rax, dword [rsp + 0xff8]
cmp rax, 0xa
jae 0x14013f4b0
movsxd rcx, dword [rsp + 0xff8]
mov rax, qword [rsp + 0x10a0]
mov dword [rax + rcx*4 + 0x4ac], 1
jmp 0x14013f474
mov rax, qword [rsp + 0x3a0]
cmp dword [rax + 0x80], 0
jne 0x14013f4f2
mov r8d, 1
mov rax, qword [rsp + 0x10a8]
mov edx, dword [rax + 0xc]
mov rcx, qword [rsp + 0x3a0]
call fcn.1401351e0
mov rdx, qword [rsp + 0x3a0]
mov qword [rdx + 0xd0], 0
mov rax, qword [rsp + 0x10a8]
movzx eax, word [rax + 0x18]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x10a8]
mov r9d, dword [rax + 0xc]
mov r8, qword [rsp + 0x3a0]
mov r8, qword [r8 + 0x48]
lea rdx, str.New_iSCSI_connection_Open__s_targetid__d_connectionid__d
xor ecx, ecx
call fcn.1400dc610
mov r8d, 1
mov rax, qword [rsp + 0x10a8]
mov edx, dword [rax + 0xc]
mov rcx, qword [rsp + 0x3a0]
call fcn.14013b240
test eax, eax
jne 0x14013f5b6
mov rax, qword [rsp + 0x10a8]
movzx eax, word [rax + 0x18]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x10a8]
mov r9d, dword [rax + 0xc]
mov r8, qword [rsp + 0x3a0]
mov r8, qword [r8 + 0x48]
lea rdx, str.New_iSCSI_connection_Open__s_targetid__d_connectionid__d_False
xor ecx, ecx
call fcn.1400dc610
mov rcx, qword [rsp + 0x3a0]
call fcn.14001d5c0
mov dword [rsp + 0x1028], 0
lea rcx, [rsp + 0x60]
call fcn.140005db0
nop
lea rcx, [rsp + 0x38]
call fcn.140001490
mov eax, dword [rsp + 0x1028]
jmp 0x14013f5ea
mov rcx, qword [rsp + 0x3a0]
call fcn.14001d5c0
mov dword [rsp + 0x102c], 1
lea rcx, [rsp + 0x60]
call fcn.140005db0
nop
lea rcx, [rsp + 0x38]
call fcn.140001490
mov eax, dword [rsp + 0x102c]
mov rcx, qword [rsp + 0x1088]
xor rcx, rsp
call fcn.1400a8050
add rsp, 0x1090
pop rdi
ret