Function at 0x140056f0c
Capabilities:
Connect socket

Disassembly:
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbp
sub rsp, 0x2f0
mov edi, r9d
mov r14, r8
mov r15, rdx
mov rsi, rcx
mov r12d, dword [rsp + 0x360]
mov rax, qword [0x140079508]
mov qword [rsp + 0x2e0], rax
xor r13d, r13d
test rsi, rsi
mov qword [rsp + 0x2d8], 0
mov dword [rsp + 0x5c], 0
je 0x14005796c
mov rbp, rsi
test r15, r15
je 0x140057981
mov qword [rsp + 0x50], rsi
test r12d, r12d
mov dword [rsp + 0x58], 4
mov edx, dword [rbp + 0x2c20]
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x298], rbx
mov r12d, 1
mov ecx, reloc.WS2_32.dll_ntohs
mov ebx, edi
jne 0x140056fa5
mov r12d, 0
xor eax, eax
imul r8d, dword [rbp + 0x2c20], 0x3e8
cmp edx, 0
cmove r12d, eax
cmove r8d, ecx
lea rax, [rsp + 0x140]
mov dword [rsp + 0x40], r8d
mov rax, qword [rbp + 0x1aa0]
test rax, rax
je 0x140057955
mov rdx, qword [rax + 0x28]
test rdx, rdx
je 0x140057955
mov rdx, qword [rax + 0x30]
test rdx, rdx
je 0x140057955
mov rdx, qword [rax + 0x38]
test rdx, rdx
je 0x140057955
mov rdx, qword [rax + 0x40]
test rdx, rdx
je 0x140057955
mov rdx, qword [rax + 0x48]
test rdx, rdx
je 0x140057955
mov rdx, qword [rax + 0x50]
test rdx, rdx
je 0x140057955
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x140057955
mov rdx, qword [rax + 0x60]
test rdx, rdx
je 0x140057955
mov rdx, qword [rax + 0x68]
test rdx, rdx
je 0x140057955
mov rdx, qword [rax + 0x70]
test rdx, rdx
je 0x140057955
mov rdx, qword [rax + 0x78]
test rdx, rdx
je 0x140057955
mov rax, qword [rax + 0x80]
test rax, rax
je 0x140057235
mov rsi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
mov edi, ebx
mov rbx, qword [rsp + 0x298]
mov rcx, rbp
mov edx, 0x60
call fcn.14000afa0
test rax, rax
je 0x1400579a6
mov qword [rsp + 0x2d8], rax
pxor xmm0, xmm0
movaps xmmword [rsp + 0x240], xmm0
movlps qword [rsp + 0x250], xmm0
mov dword [rsp + 0x258], 0
mov eax, 0x17
mov word [rsp + 0x240], ax
mov ecx, edi
call qword [sym.imp.WS2_32.dll_htons]
mov word [rsp + 0x242], ax
mov qword [rsp + 0x290], 0
pxor xmm0, xmm0
movaps xmmword [rsp + 0x260], xmm0
movaps xmmword [rsp + 0x270], xmm0
movaps xmmword [rsp + 0x280], xmm0
mov dword [rsp + 0x264], 0x17
lea r12, [rsp + 0x40]
xor eax, eax
mov byte [r12], al
mov dword [rsp + 0x260], eax
mov dword [rsp + 0x268], 1
mov rcx, r12
lea rdx, [0x14006a40c]
mov r8d, edi
call sub.oracore11.dll_lstprintf
lea r8, [rsp + 0x260]
lea r9, [rsp + 0x290]
mov rcx, r14
mov rdx, r12
call fcn.14004d3d8
mov rcx, qword [rsp + 0x290]
mov rax, rcx
test rcx, rcx
je 0x140057193
mov edx, dword [rax + 4]
cmp edx, 0x17
je 0x1400575b7
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x140057174
test rcx, rcx
je 0x140057193
call fcn.14004d098
lea r8, [rsp + 0x240]
mov rax, qword [rbp + 0x1aa0]
mov rdx, qword [rbp + 0x1a98]
mov rcx, rbp
mov r9d, 0x1c
call qword [rax + 0x80]
mov rdx, qword [rsp + 0x2d8]
mov dword [rdx], eax
mov rax, qword [rsp + 0x2d8]
mov dword [rax + 8], 1
mov rdx, qword [rsp + 0x2d8]
mov ecx, dword [rdx]
test ecx, ecx
jl 0x140057573
mov dword [rdx + 4], edi
mov rsi, qword [rsp + 0x2d8]
add rsi, 0xc
mov rdi, r14
mov rax, rsi
mov dl, byte [rdi]
add rdi, 1
mov byte [rsi], dl
add rsi, 1
test dl, dl
jne 0x1400571f8
mov rax, qword [rsp + 0x2d8]
mov qword [r15], rax
mov rcx, qword [rsp + 0x2e0]
call fcn.14005fbf0
xor eax, eax
add rsp, 0x2f0
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsp + 0x50]
lea rdx, [rsp + 0x2d8]
call fcn.140056bf2
mov r15d, eax
test r15d, r15d
jne 0x1400579cb
mov rax, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x48]
mov qword [rdx], rax
pxor xmm0, xmm0
movaps xmmword [rsp + 0x240], xmm0
movlps qword [rsp + 0x250], xmm0
mov dword [rsp + 0x258], 0
mov eax, 0x17
mov word [rsp + 0x240], ax
mov ecx, ebx
call qword [sym.imp.WS2_32.dll_htons]
mov word [rsp + 0x242], ax
mov qword [rsp + 0x2d0], 0
pxor xmm0, xmm0
movaps xmmword [rsp + 0x2a0], xmm0
movaps xmmword [rsp + 0x2b0], xmm0
movaps xmmword [rsp + 0x2c0], xmm0
mov dword [rsp + 0x2a4], 0x17
lea rcx, [rsp + 0x140]
xor eax, eax
mov byte [rcx], al
mov dword [rsp + 0x2a0], eax
mov dword [rsp + 0x2a8], 1
lea rdx, [0x14006a40c]
mov r8d, ebx
call sub.oracore11.dll_lstprintf
lea rdx, [rsp + 0x140]
lea r8, [rsp + 0x2a0]
lea r9, [rsp + 0x2d0]
mov rcx, r14
call fcn.14004d3d8
mov rcx, qword [rsp + 0x2d0]
mov rax, rcx
test rcx, rcx
je 0x14005734e
mov edx, dword [rax + 4]
cmp edx, 0x17
je 0x140057915
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14005732f
test rcx, rcx
je 0x14005734e
call fcn.14004d098
mov rdx, qword [rsp + 0x2d8]
mov dword [rdx + 4], ebx
mov rsi, qword [rsp + 0x2d8]
add rsi, 0xc
mov rdi, r14
mov rax, rsi
mov dl, byte [rdi]
add rdi, 1
mov byte [rsi], dl
add rsi, 1
test dl, dl
jne 0x14005736b
mov rax, qword [rbp + 0x1aa0]
test rax, rax
je 0x1400573ee
mov rdx, qword [rax + 0x28]
test rdx, rdx
je 0x1400573ee
mov rdx, qword [rax + 0x30]
test rdx, rdx
je 0x1400573ee
mov rdx, qword [rax + 0x38]
test rdx, rdx
je 0x1400573ee
mov rdx, qword [rax + 0x40]
test rdx, rdx
je 0x1400573ee
mov rdx, qword [rax + 0x48]
test rdx, rdx
je 0x1400573ee
mov rdx, qword [rax + 0x50]
test rdx, rdx
je 0x1400573ee
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x1400573ee
mov rdx, qword [rax + 0x60]
test rdx, rdx
je 0x1400573ee
mov rdx, qword [rax + 0x68]
test rdx, rdx
je 0x1400573ee
mov rdx, qword [rax + 0x70]
test rdx, rdx
je 0x1400573ee
mov rax, qword [rax + 0x78]
test rax, rax
jne 0x14005783c
test r12d, r12d
je 0x140057412
mov rdx, qword [rsp + 0x2d8]
mov rcx, rbp
mov r8d, 1
call fcn.140055552
cmp eax, 0xffffffff
je 0x140057802
mov rax, qword [rsp + 0x2d8]
lea rdx, [rsp + 0x240]
movsxd rcx, dword [rax]
mov r8d, 0x1c
call qword [sym.imp.orauts.dll_connect]
test eax, eax
jge 0x140057744
test r12d, r12d
je 0x1400576f5
call qword [sym.imp.orauts.dll_WSAGetLastError]
cmp eax, 0x2733
jl 0x14005745a
cmp eax, 0x2734
jle 0x1400575f7
cmp eax, 0x2714
je 0x140057468
cmp eax, 0x2747
jne 0x1400574db
add r13d, 1
cmp r13d, 3
jae 0x1400574db
mov rdx, qword [rsp + 0x2d8]
test rdx, rdx
je 0x14005749f
mov rcx, rbp
call fcn.140050278
mov rdx, qword [rsp + 0x2d8]
mov rcx, rbp
call fcn.140050222
mov rdx, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x28], 0x19
lea r8, str.Retry_connection_to_host_:__s_n
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x20], rdx
mov edx, pe_nt_image_headers64
mov qword [rsp + 0x30], r14
mov r9d, 5
call fcn.14001f070
jmp 0x140056fca
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x298]
mov rax, qword [rsp + 0x2d8]
mov dword [rsp + 0x28], 0x19
mov rcx, rsi
mov edx, pe_nt_image_headers64
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x20], rax
lea r8, str.CONNECT_ERROR_:_Socket__d_to_host_:__s_n
mov qword [rsp + 0x30], r14
mov r9d, 5
call fcn.14001f070
mov r15d, 3
mov rdx, qword [rsp + 0x2d8]
test rdx, rdx
je 0x140057550
mov rcx, rbp
call fcn.140050278
mov rdx, qword [rsp + 0x2d8]
mov rcx, rbp
call fcn.140050222
mov rcx, qword [rsp + 0x2e0]
call fcn.14005fbf0
mov eax, r15d
add rsp, 0x2f0
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rsi
call fcn.14000adf4
mov edx, 0x7fffffff
mov rcx, rsi
lea r8, str.sgslunnNewCtn:_Unable_to_create_communication_endpoint_n
xor r9d, r9d
call fcn.14001f070
mov rcx, qword [rsp + 0x2e0]
call fcn.14005fbf0
mov eax, 2
add rsp, 0x2f0
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
mov r8, qword [rax + 0x20]
mov rax, qword [r8]
mov qword [rsp + 0x240], rax
mov rdx, qword [r8 + 8]
mov qword [rsp + 0x248], rdx
mov rcx, qword [r8 + 0x10]
mov qword [rsp + 0x250], rcx
mov r9d, dword [r8 + 0x18]
mov dword [rsp + 0x258], r9d
mov rcx, qword [rsp + 0x290]
jmp 0x140057189
mov r8d, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x298]
mov rdx, qword [rsp + 0x2d8]
mov rcx, rbp
call fcn.140050058
test eax, eax
jne 0x1400576b3
mov rax, qword [rsp + 0x2d8]
lea rdi, [rsp + 0x58]
movsxd rcx, dword [rax]
mov edx, 0xffff
mov r8d, 0x1007
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x5c]
call qword [sym.imp.WS2_32.dll_getsockopt]
test eax, eax
jl 0x1400576b3
mov eax, dword [rsp + 0x5c]
test eax, eax
jne 0x1400576b3
mov rdx, qword [rsp + 0x2d8]
mov rcx, rbp
mov r8d, 2
call fcn.140055552
cmp eax, 0xffffffff
je 0x140057681
test r15d, r15d
jne 0x14005752b
jmp 0x140057550
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x28], 0
mov rcx, rsi
mov edx, pe_nt_image_headers64
mov qword [rsp + 0x20], rax
lea r8, str.non_blocking_switch_failed_on__d_n
mov r9d, 5
call fcn.14001f070
jmp 0x140057673
mov rax, qword [rsp + 0x2d8]
mov dword [rsp + 0x28], 0x19
mov rcx, rsi
mov edx, pe_nt_image_headers64
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x20], rax
lea r8, str.CONNECT_ERROR_:_Timeout_or_Error_on_Socket__d_to_host_:__s_n
mov qword [rsp + 0x30], r14
mov r9d, 5
call fcn.14001f070
jmp 0x140057525
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x298]
mov rax, qword [rsp + 0x2d8]
mov edx, 0x1000000
mov rcx, rsi
lea r8, str.CONNECT_ERROR_:_Socket__d_to_host_:__s_n
mov dword [rsp + 0x28], 0x19
mov qword [rsp + 0x20], rax
mov r9d, 5
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], r14
call fcn.14001f070
jmp 0x140057525
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x298]
mov rax, qword [rsp + 0x2d8]
mov edx, 0x1000000
mov rcx, rsi
lea r8, str.sd__d_connected_to:__s_n
mov dword [rsp + 0x28], 0x19
mov qword [rsp + 0x20], rax
mov r9d, 5
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], r14
call fcn.14001f070
test r12d, r12d
je 0x1400577ae
mov rdx, qword [rsp + 0x2d8]
mov rcx, rbp
mov r8d, 2
call fcn.140055552
cmp eax, 0xffffffff
je 0x1400577d0
mov rcx, qword [rsp + 0x2e0]
call fcn.14005fbf0
xor eax, eax
add rsp, 0x2f0
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x28], 0
mov rcx, rsi
lea r8, str.non_blocking_switch_failed_on__d_n
mov qword [rsp + 0x20], rax
mov edx, 0x1000000
mov r9d, 5
call fcn.14001f070
jmp 0x1400577ae
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x50]
mov edx, 0x7fffffff
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
lea r8, str.Setting_non_blocking_failed_on__d_n
mov r9d, 5
call fcn.14001f070
xor r12d, r12d
jmp 0x140057412
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x298]
mov rdi, qword [rsp + 0x2d8]
mov rdx, qword [rbp + 0x1a98]
mov r8d, dword [rdi]
mov rcx, rbp
mov dword [rsp + 0x20], 0x1c
lea r9, [rsp + 0x240]
call rax
test eax, eax
jl 0x1400578d3
mov rax, qword [rsp + 0x2d8]
mov dword [rsp + 0x28], 0x19
mov rcx, rsi
lea r8, str.sd__d_connected_to:__s_n
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x20], rax
mov r9d, 5
mov qword [rsp + 0x30], r14
mov edx, 0x1000000
call fcn.14001f070
mov rcx, qword [rsp + 0x2e0]
call fcn.14005fbf0
xor eax, eax
add rsp, 0x2f0
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x2d8]
mov dword [rsp + 0x28], 0x19
mov rcx, rsi
lea r8, str.CONNECT_ERROR_:_Socket__d_to_host_:__s_n
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x20], rax
mov r9d, 5
mov qword [rsp + 0x30], r14
mov edx, 0x1000000
call fcn.14001f070
jmp 0x140057525
mov rsi, qword [rax + 0x20]
mov rax, qword [rsi]
mov qword [rsp + 0x240], rax
mov rdx, qword [rsi + 8]
mov qword [rsp + 0x248], rdx
mov rcx, qword [rsi + 0x10]
mov qword [rsp + 0x250], rcx
mov r8d, dword [rsi + 0x18]
mov dword [rsp + 0x258], r8d
mov rcx, qword [rsp + 0x2d0]
jmp 0x140057344
mov rcx, qword [rsp + 0x50]
lea rdx, [rsp + 0x2d8]
call fcn.140056bf2
jmp 0x140057247
mov dword [rsp + 0x58], 0
call fcn.140006c40
mov rbp, rax
jmp 0x140056f64
mov rcx, qword [rsp + 0x2e0]
call fcn.14005fbf0
mov eax, 3
add rsp, 0x2f0
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsp + 0x2e0]
call fcn.14005fbf0
mov eax, 5
add rsp, 0x2f0
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
mov rbx, qword [rsp + 0x298]
mov rcx, qword [rsp + 0x2e0]
call fcn.14005fbf0
mov eax, r15d
add rsp, 0x2f0
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret