Function at 0x140025980
Capabilities:
Resolve dns
Set socket configuration

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x38
lea rbp, [rsp + 0x30]
mov qword [rbp], 0xfffffffffffffffe
mov r13d, r8d
mov r14, rdx
cmp dword [0x1400cc0c8], 0xa
jl 0x1400259c2
mov eax, dword [0x1400cc0cc]
lea edx, [rax + 1]
imul edx, eax
and edx, 1
je 0x1400259c2
nop dword [rax]
jmp 0x1400259c0
mov eax, 0x30
call fcn.1400957c0
sub rsp, rax
mov r12, rsp
mov eax, reloc.WS2_32.dll_recv
call fcn.1400957c0
sub rsp, rax
mov rsi, rsp
mov eax, 0x20
call fcn.1400957c0
sub rsp, rax
mov rbx, rsp
mov eax, reloc.WS2_32.dll_recv
call fcn.1400957c0
sub rsp, rax
mov rdi, rsp
mov eax, reloc.WS2_32.dll_recv
call fcn.1400957c0
sub rsp, rax
mov r15, rsp
xorps xmm0, xmm0
movups xmmword [r12], xmm0
movups xmmword [r12 + 0x20], xmm0
movups xmmword [r12 + 0x10], xmm0
mov dword [r12 + 8], 1
cmp qword [r14 + 0x10], 0
je 0x140025a47
mov eax, 4
xor r9d, r9d
cmp qword [r14 + 0x18], 0x10
jae 0x140025a5b
jmp 0x140025a63
mov eax, dword [rbp + 0x70]
cmp qword [rcx + 0x10], 0
je 0x140025a60
mov r14, rcx
cmp qword [r14 + 0x18], 0x10
jb 0x140025a63
mov r14, qword [r14]
jmp 0x140025a63
xor r14d, r14d
mov dword [r12 + 4], r9d
mov dword [r12], eax
nop dword [rax]
cmp dword [0x1400cb5d8], 0xa
jl 0x140025ae4
mov eax, dword [0x1400cb5dc]
lea ecx, [rax + 1]
imul ecx, eax
and ecx, 1
je 0x140025ae4
sub rsp, 0x20
mov rcx, rbx
mov edx, r13d
call fcn.140076220
add rsp, 0x20
sub rsp, 0x20
mov rcx, rbx
mov edx, r13d
call fcn.140076220
add rsp, 0x20
jmp 0x140025a70
mov eax, dword [0x1400cb5dc]
lea ecx, [rax + 1]
imul ecx, eax
and ecx, 1
je 0x140025b00
sub rsp, 0x20
mov rcx, rbx
mov edx, r13d
call fcn.140076220
add rsp, 0x20
sub rsp, 0x20
mov rcx, rbx
mov edx, r13d
call fcn.140076220
add rsp, 0x20
cmp dword [0x1400cb5d8], 0xa
jge 0x140025ac0
cmp dword [0x1400cc0c8], 0xa
jl 0x140025b1a
mov eax, dword [0x1400cc0cc]
lea ecx, [rax + 1]
imul ecx, eax
and ecx, 1
jne 0x140025b60
cmp qword [rbx + 0x18], 0x10
mov rdx, rbx
jb 0x140025b27
mov rdx, qword [rbx]
sub rsp, 0x20
mov rcx, r14
mov r8, r12
mov r9, rsi
call qword [sym.imp.WS2_32.dll_getaddrinfo]
add rsp, 0x20
mov ecx, dword [0x1400cc0cc]
mov edx, dword [0x1400cc0c8]
lea r8d, [rcx + 1]
imul r8d, ecx
and r8d, 1
cmp edx, 0xa
jl 0x140025b86
test r8d, r8d
je 0x140025b86
cmp qword [rbx + 0x18], 0x10
mov rdx, rbx
jb 0x140025b6d
mov rdx, qword [rbx]
sub rsp, 0x20
mov rcx, r14
mov r8, r12
mov r9, rsi
call qword [sym.imp.WS2_32.dll_getaddrinfo]
add rsp, 0x20
jmp 0x140025b1a
test eax, eax
je 0x140025bb2
mov rdi, 0xffffffffffffffff
cmp edx, 0xa
jl 0x140026102
test r8d, r8d
je 0x140026102
nop word cs:[rax + rax]
jmp 0x140025bb0
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], rbx
mov r12, qword [rsi]
test r12, r12
je 0x140026142
mov r15, qword [sym.imp.WS2_32.dll_WSASocketW]
mov rbx, qword [sym.imp.WS2_32.dll_closesocket]
mov qword [rbp - 0x10], rdi
jmp 0x140025c0d
mov r8d, dword [r12 + 0xc]
mov ecx, dword [r12 + 4]
mov edx, dword [r12 + 8]
sub rsp, 0x30
mov dword [rsp + 0x28], 0x81
mov dword [rsp + 0x20], 0
xor r9d, r9d
call r15
add rsp, 0x30
mov r8d, dword [r12 + 0xc]
mov ecx, dword [r12 + 4]
mov edx, dword [r12 + 8]
sub rsp, 0x30
mov dword [rsp + 0x28], 0x81
mov dword [rsp + 0x20], 0
xor r9d, r9d
call r15
add rsp, 0x30
mov r14, rax
mov ecx, dword [0x1400cc0cc]
mov edx, dword [0x1400cc0c8]
lea r8d, [rcx + 1]
imul r8d, ecx
and r8d, 1
cmp edx, 0xa
jl 0x140025c5f
test r8d, r8d
jne 0x140025be0
cmp r14, 0xffffffffffffffff
je 0x140025ee0
cmp edx, 0xa
jl 0x140025c77
test r8d, r8d
jne 0x1400260b0
cmp r14, 0xffffffffffffffff
je 0x140025f6a
cmp byte [rbp + 0x78], 0
je 0x140025d3f
mov dword [rdi], 1
sub rsp, 0x30
mov dword [rsp + 0x20], 4
mov rcx, r14
mov edx, 6
mov r8d, 1
mov r9, rdi
call qword [sym.imp.WS2_32.dll_setsockopt]
nop word cs:[rax + rax]
add rsp, 0x30
mov eax, dword [0x1400cc0cc]
mov edx, dword [0x1400cc0c8]
lea r8d, [rax + 1]
imul r8d, eax
and r8d, 1
cmp edx, 0xa
jl 0x140025d3f
test r8d, r8d
je 0x140025d3f
mov dword [rdi], 1
sub rsp, 0x30
mov dword [rsp + 0x20], 4
mov rcx, r14
mov edx, 6
mov r8d, 1
mov r9, rdi
mov r13, qword [sym.imp.WS2_32.dll_setsockopt]
call r13
add rsp, 0x30
mov dword [rdi], 1
sub rsp, 0x30
mov dword [rsp + 0x20], 4
mov rcx, r14
mov edx, 6
mov r8d, 1
mov r9, rdi
call r13
jmp 0x140025cc0
test r8d, r8d
sete cl
cmp edx, 0xa
setl al
or al, cl
nop dword [rax]
test al, al
je 0x140025d50
mov rax, qword [rbp + 0x80]
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140025da0
mov qword [rbp - 0x28], r14
mov rax, qword [rcx]
sub rsp, 0x20
lea rdx, [rbp - 0x28]
call qword [rax + reloc.WS2_32.dll_recv]
add rsp, 0x20
mov eax, dword [0x1400cc0cc]
mov edx, dword [0x1400cc0c8]
lea r8d, [rax + 1]
imul r8d, eax
and r8d, 1
cmp edx, 0xa
jl 0x140025da0
test r8d, r8d
jne 0x140026100
cmp edx, 0xa
jl 0x140025dae
test r8d, r8d
jne 0x1400260d0
cmp dword [r12 + 4], 0x17
jne 0x140025dfd
mov r9, qword [rbp - 0x20]
mov dword [r9], 0
sub rsp, 0x30
mov dword [rsp + 0x20], 4
mov rcx, r14
mov edx, 0x29
mov r8d, 0x1b
call qword [sym.imp.WS2_32.dll_setsockopt]
add rsp, 0x30
mov eax, dword [0x1400cc0cc]
mov edx, dword [0x1400cc0c8]
lea r8d, [rax + 1]
imul r8d, eax
and r8d, 1
cmp edx, 0xa
jl 0x140025e0b
test r8d, r8d
jne 0x1400260e0
sub rsp, 0x20
mov rcx, qword [rbp + 0x88]
mov rdx, r14
mov r8, r12
call fcn.1400264e0
add rsp, 0x20
cmp dword [0x1400cc0c8], 0xa
jl 0x140025e43
mov ecx, dword [0x1400cc0cc]
lea edx, [rcx + 1]
imul edx, ecx
and edx, 1
jne 0x1400260f0
test al, al
je 0x140025f9b
mov rcx, qword [rsi]
sub rsp, 0x20
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
add rsp, 0x20
mov ecx, dword [0x1400cc0cc]
mov edx, dword [0x1400cc0c8]
lea r8d, [rcx + 1]
imul r8d, ecx
and r8d, 1
mov r13d, 1
cmp edx, 0xa
jl 0x140026099
nop word cs:[rax + rax]
test r8d, r8d
je 0x140025ed3
mov rcx, qword [rsi]
sub rsp, 0x20
mov rdi, qword [sym.imp.WS2_32.dll_freeaddrinfo]
call rdi
add rsp, 0x20
mov rcx, qword [rsi]
sub rsp, 0x20
call rdi
add rsp, 0x20
mov ecx, dword [0x1400cc0cc]
mov edx, dword [0x1400cc0c8]
lea r8d, [rcx + 1]
imul r8d, ecx
and r8d, 1
cmp edx, 0xa
jge 0x140025e90
mov qword [rbp - 8], r14
mov rdi, qword [rbp - 0x10]
jmp 0x140025f70
mov r8d, dword [r12 + 0xc]
mov ecx, dword [r12 + 4]
mov edx, dword [r12 + 8]
sub rsp, 0x20
call qword [sym.imp.WS2_32.dll_socket]
nop dword [rax]
add rsp, 0x20
mov r14, rax
mov ecx, dword [0x1400cc0cc]
mov edx, dword [0x1400cc0c8]
lea r8d, [rcx + 1]
imul r8d, ecx
and r8d, 1
cmp edx, 0xa
jl 0x140025c69
test r8d, r8d
je 0x140025c69
mov r8d, dword [r12 + 0xc]
mov ecx, dword [r12 + 4]
mov edx, dword [r12 + 8]
sub rsp, 0x20
mov r14, qword [sym.imp.WS2_32.dll_socket]
call r14
add rsp, 0x20
mov r8d, dword [r12 + 0xc]
mov ecx, dword [r12 + 4]
mov edx, dword [r12 + 8]
sub rsp, 0x20
call r14
jmp 0x140025f00
mov r13d, 4
cmp edx, 0xa
jl 0x140025f7e
test r8d, r8d
jne 0x1400260c0
test r13b, 3
jne 0x140026359
mov r12, qword [r12 + 0x28]
test r12, r12
jne 0x140025c0d
jmp 0x140026142
mov eax, dword [0x1400cc05c]
mov ecx, dword [0x1400cc058]
nop word [rax + rax]
cmp ecx, 0xa
jl 0x140025fc0
lea ecx, [rax + 1]
imul ecx, eax
and ecx, 1
jne 0x140025fe7
sub rsp, 0x20
mov rcx, r14
call rbx
add rsp, 0x20
cmp dword [0x1400cc058], 0xa
jl 0x140026000
mov eax, dword [0x1400cc05c]
lea ecx, [rax + 1]
imul ecx, eax
and ecx, 1
je 0x140026000
sub rsp, 0x20
mov rcx, r14
call rbx
add rsp, 0x20
jmp 0x140025fc0
mov ecx, dword [0x1400cc0cc]
mov edx, dword [0x1400cc0c8]
lea r8d, [rcx + 1]
imul r8d, ecx
and r8d, 1
xor r13d, r13d
cmp edx, 0xa
jl 0x140025f70
test r8d, r8d
je 0x140025f70
sub rsp, 0x20
mov rcx, r14
call rbx
add rsp, 0x20
mov eax, dword [0x1400cc05c]
mov ecx, dword [0x1400cc058]
cmp ecx, 0xa
jl 0x140025fb0
lea edx, [rax + 1]
imul edx, eax
and edx, 1
je 0x140025fb0
nop
sub rsp, 0x20
mov rcx, r14
call rbx
mov rcx, r14
call rbx
add rsp, 0x20
mov eax, dword [0x1400cc05c]
mov ecx, dword [0x1400cc058]
lea edx, [rax + 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x140025fb0
test edx, edx
jne 0x140026060
jmp 0x140025fb0
mov qword [rbp - 8], r14
jmp 0x140025f70
jmp 0x1400260b0
jmp 0x1400260c0
jmp 0x1400260d0
jmp 0x1400260e0
jmp 0x1400260f0
jmp 0x140026100
sub rsp, 0x20
mov rcx, rbx
call fcn.140001f60
add rsp, 0x20
mov eax, dword [0x1400cc050]
mov edx, dword [0x1400cc054]
cmp edx, 0xa
jl 0x140026162
lea ecx, [rax + 1]
imul ecx, eax
and ecx, 1
mov rsi, qword [rbp + 0x80]
je 0x140026170
nop word cs:[rax + rax]
jmp 0x140026140
cmp edx, 0xa
mov rbx, qword [rbp - 0x18]
jl 0x1400262b2
lea eax, [rcx + 1]
imul eax, ecx
and eax, 1
je 0x1400262b2
nop
jmp 0x140026160
mov rsi, qword [rbp + 0x80]
nop dword [rax]
mov rcx, qword [rsi + 0x38]
test rcx, rcx
je 0x1400261a1
cmp rcx, rsi
setne dl
mov rax, qword [rcx]
sub rsp, 0x20
call qword [rax + 0x20]
add rsp, 0x20
mov qword [rsi + 0x38], 0
mov eax, dword [0x1400cc050]
mov edx, dword [0x1400cc054]
cmp edx, 0xa
jl 0x1400261b5
lea ecx, [rax + 1]
imul ecx, eax
and ecx, 1
jne 0x140026290
cmp dword [0x1400cc0c8], 0xa
jl 0x140026345
mov eax, dword [0x1400cc0cc]
lea ecx, [rax + 1]
imul ecx, eax
and ecx, 1
je 0x140026345
sub rsp, 0x20
mov rcx, rbx
call fcn.140001f60
add rsp, 0x20
mov ecx, dword [0x1400cc050]
mov edx, dword [0x1400cc054]
lea eax, [rcx + 1]
imul eax, ecx
and eax, 1
cmp edx, 0xa
jl 0x140026209
test eax, eax
jne 0x1400262a0
mov rcx, qword [rsi + 0x38]
test rcx, rcx
je 0x140026243
cmp rcx, rsi
setne dl
mov rax, qword [rcx]
sub rsp, 0x20
call qword [rax + 0x20]
add rsp, 0x20
mov qword [rsi + 0x38], 0
mov ecx, dword [0x1400cc050]
mov edx, dword [0x1400cc054]
lea eax, [rcx + 1]
imul eax, ecx
and eax, 1
cmp edx, 0xa
jl 0x14002624c
test eax, eax
jne 0x1400262b0
sub rsp, 0x20
mov rcx, rbx
call fcn.140001f60
add rsp, 0x20
mov eax, dword [0x1400cc050]
mov edx, dword [0x1400cc054]
cmp edx, 0xa
jl 0x140026170
lea ecx, [rax + 1]
imul ecx, eax
and ecx, 1
je 0x140026170
jmp 0x140026140
jmp 0x140026290
jmp 0x1400262a0
jmp 0x1400262b0
mov rcx, qword [rsi]
sub rsp, 0x20
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
add rsp, 0x20
mov eax, dword [0x1400cc0cc]
mov edx, dword [0x1400cc0c8]
lea r8d, [rax + 1]
imul r8d, eax
and r8d, 1
cmp edx, 0xa
jl 0x140025b8a
test r8d, r8d
je 0x140025b8a
mov rdi, qword [sym.imp.WS2_32.dll_freeaddrinfo]
nop word cs:[rax + rax]
mov rcx, qword [rsi]
sub rsp, 0x20
call rdi
add rsp, 0x20
mov rcx, qword [rsi]
sub rsp, 0x20
call rdi
add rsp, 0x20
mov eax, dword [0x1400cc0cc]
mov edx, dword [0x1400cc0c8]
lea r8d, [rax + 1]
imul r8d, eax
and r8d, 1
cmp edx, 0xa
jl 0x140025b8a
test r8d, r8d
jne 0x140026300
jmp 0x140025b8a
mov rax, rdi
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
cmp edx, 0xa
mov rbx, qword [rbp - 0x18]
mov rdi, qword [rbp - 8]
jl 0x140025b91
test r8d, r8d
jne 0x140026160
jmp 0x140025b91