Function at 0x1801095c0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
push rbx
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x38
xor ebx, ebx
mov rsi, rdx
mov r14, rcx
test rdx, rdx
jne 0x1801095e9
mov r15d, ebx
jmp 0x180109620
movzx ecx, word [rdx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x180109609
cmp byte [rsi + 0x16], 1
jne 0x180109609
mov r15, qword [rsi + 8]
jmp 0x180109620
test cl, 1
je 0x180109613
mov r15, rbx
jmp 0x180109620
mov dl, 1
mov rcx, rsi
call fcn.18005fad0
mov r15, rax
movzx ecx, word [rsi + 0x14]
mov qword [rsp + 0x70], rbp
test cl, 2
je 0x180109639
cmp byte [rsi + 0x16], 1
jne 0x180109639
mov ebp, dword [rsi + 0x10]
jmp 0x180109664
test cl, 0x10
je 0x18010964f
mov ebp, dword [rsi + 0x10]
mov eax, 0x400
test ax, cx
je 0x180109664
add ebp, dword [rsi]
jmp 0x180109664
test cl, 1
je 0x180109658
mov ebp, ebx
jmp 0x180109664
mov dl, 1
mov rcx, rsi
call fcn.180060190
mov ebp, eax
or eax, 0xffffffff
mov dword [rsp + 0x78], ebx
mov dword [rsp + 0x20], eax
mov rdi, rbx
mov r12d, ebx
test r15, r15
jne 0x180109681
xor eax, eax
jmp 0x180109919
mov qword [rsp + 0x30], r13
mov r13d, ebx
nop dword [rax]
mov rax, qword [r14 + 0x18]
lea edx, [r13 - 0x68f72]
mov rcx, qword [rax + 0x128]
test rcx, rcx
je 0x1801096c1
cmp dword [rcx + 4], edx
jne 0x1801096b8
mov eax, dword [r14 + 0x20]
cmp dword [rcx], eax
je 0x1801096e3
test edx, edx
js 0x1801096e3
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x1801096a7
mov dword [rsp + 0x78], r13d
test rdi, rdi
je 0x18010978d
lea ecx, [r12 + 1]
mov byte [rdi + 0x32], 0
mov dword [rdi + 0x4c], ecx
mov rax, rdi
jmp 0x180109914
mov rbx, qword [rcx + 8]
test rbx, rbx
je 0x1801096c1
test rdi, rdi
jne 0x180109760
cmp dword [rbx + 0x3c], ebp
jne 0x18010972c
cmp byte [rbx + 0x37], dil
je 0x180109707
mov eax, dword [rsp + 0x88]
test eax, eax
jne 0x180109733
mov rcx, qword [rbx + 0x10]
cmp rcx, r15
je 0x18010971f
movsxd r8, ebp
mov rdx, r15
call fcn.180153530
test eax, eax
jne 0x18010972c
mov byte [rbx + 0x32], 0
mov rdi, rbx
mov byte [rbx + 0x36], 0
jmp 0x180109772
mov eax, dword [rsp + 0x88]
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x180109760
test eax, eax
jne 0x180109760
cmp dword [rbx + 0x40], ebp
jne 0x180109760
movsxd r8, ebp
mov rdx, r15
call fcn.180153530
test eax, eax
jne 0x180109760
mov byte [rbx + 0x32], al
mov rdi, rbx
mov byte [rbx + 0x36], 1
jmp 0x180109772
mov eax, dword [rbx + 0x4c]
cmp eax, dword [rsp + 0x20]
jae 0x180109772
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x78], r13d
cmp dword [rbx + 0x4c], r12d
cmova r12d, dword [rbx + 0x4c]
inc r13d
cmp r13d, 4
jl 0x180109690
jmp 0x1801096c6
movzx eax, word [rsi + 0x14]
mov edx, reloc.WS2_32.dll_inet_ntoa
test al, 0x12
setne cl
bt ax, dx
lea ebx, [rdx - 0xb]
setb al
test al, cl
je 0x1801097bd
lea rax, [0x18003b910]
cmp qword [rsi + 0x30], rax
jne 0x1801097bd
mov edi, ebx
xor r13d, r13d
jmp 0x1801097c3
xor r13d, r13d
mov edi, r13d
call fcn.1800e5630
test eax, eax
jne 0x1801098e2
mov eax, r13d
lea esi, [rbp + 1]
test edi, edi
cmove eax, esi
movsxd rcx, eax
add rcx, 0x50
call fcn.180038990
mov rbx, rax
test rax, rax
je 0x1801098dd
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 0x50]
call fcn.1801530a0
test edi, edi
je 0x180109813
inc qword [r15 - 8]
mov qword [rbx + 0x10], r15
mov byte [rbx + 0x34], 1
jmp 0x180109826
lea rcx, [rbx + 0x50]
movsxd r8, esi
mov rdx, r15
mov qword [rbx + 0x10], rcx
call fcn.180150e10
mov rdi, qword [rsp + 0x80]
mov rcx, rbx
mov rdx, rdi
mov dword [rbx + 0x38], 1
call fcn.1801093d0
test eax, eax
je 0x18010987c
test rdi, rdi
jne 0x180109855
mov byte [rbx + 0x32], 1
mov rax, rbx
jmp 0x180109914
mov eax, dword [rbx + 0x38]
cmp eax, 1
jbe 0x180109867
dec eax
mov dword [rbx + 0x38], eax
jmp 0x180109912
mov rcx, rbx
call fcn.1801071c0
mov rcx, rbx
call fcn.180038ac0
jmp 0x180109912
mov edi, dword [rsp + 0x78]
lea eax, [r12 + 1]
add edi, 0xfff9708e
mov dword [rbx + 0x3c], ebp
mov edx, edi
mov dword [rbx + 0x4c], eax
lea r9, [0x1801072f0]
mov r8, rbx
mov rcx, r14
call fcn.180067ab0
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + 0x128]
test rcx, rcx
je 0x1801098d8
cmp dword [rcx + 4], edi
jne 0x1801098c6
mov eax, dword [r14 + 0x20]
cmp dword [rcx], eax
je 0x1801098d4
test edi, edi
js 0x1801098d4
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x1801098b5
mov rax, r13
jmp 0x180109914
mov r13, qword [rcx + 8]
mov rax, r13
jmp 0x180109914
mov ebx, 1
mov rax, qword [r14]
mov ecx, 0x9000
test word [rax + 0x14], cx
je 0x1801098fa
mov rcx, rax
call fcn.18005ee50
jmp 0x1801098fe
mov word [rax + 0x14], bx
mov rcx, qword [r14]
mov dword [r14 + 0x24], 7
mov rcx, qword [rcx + 0x18]
call fcn.180039510
xor eax, eax
mov r13, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x70]
add rsp, 0x38
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret