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

Disassembly:
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbp
push rbx
sub rsp, 0x98
xor eax, eax
mov qword [rsp + 0x48], rax
xorps xmm4, xmm4
movaps xmmword [rsp + 0x50], xmm4
movaps xmmword [rsp + 0x60], xmm4
movaps xmmword [rsp + 0x70], xmm4
mov qword [rsp + 0x80], rax
mov rbx, rcx
mov rbp, rdx
lea r8, [0x140772ef8]
cmp qword [r8 - 8], 0
jne 0x140417f1a
mov r8, qword [0x140f0d398]
mov r8, qword [r8 + 8]
mov rcx, rbp
mov edx, 0x1e
call fcn.1403af3b0
mov rcx, rax
lea rdx, [0x1406fdd80]
call fcn.1401c69a0
test eax, eax
je 0x140417f4e
mov ecx, dword [rbp + 0x10]
mov eax, dword [rbp + 8]
sub ecx, eax
add ecx, 2
mov edx, dword [rbp + 0xc]
sub edx, eax
cmp edx, ecx
jb 0x140417f9a
add ecx, eax
mov dword [rbp + 0x10], ecx
mov rcx, rbp
call fcn.1403aec80
mov r14d, eax
mov rcx, rbp
call fcn.1403aec80
mov rcx, rbp
call fcn.1403aec80
mov r15d, eax
mov rcx, rbp
call fcn.1403aec80
mov r13d, eax
mov dword [rsp + 0x94], r13d
mov rcx, rbp
call fcn.1403aec80
lea eax, [r13 + r14 - 1]
xor edx, edx
div r14d
mov r12d, eax
lea eax, [r14 + r12*4 - 1]
xor edx, edx
div r14d
mov dword [rsp + 0x90], eax
mov edx, r15d
imul edx, r14d
mov ecx, dword [rbp + 0xc]
sub ecx, dword [rbp + 8]
cmp edx, ecx
jne 0x140417f74
mov r13d, dword [rsp + 0x94]
movsxd rdx, r15d
lea rcx, [0x1409a08f8]
call fcn.14000bc50
mov rdi, rax
mov qword [rsp + 0x28], rdi
xor eax, eax
xor r10d, r10d
mov dword [rsp + 0x7c], r10d
test r15d, r15d
jbe 0x140417aeb
test r15d, r15d
jl 0x140417a7f
mov r11d, dword [rdi + 8]
cmp r11d, r15d
jl 0x140417a7f
lea rdx, [rsp + 0x60]
mov rcx, rbp
mov dword [rsp + 0x8c], eax
mov r8d, eax
mov r9d, r14d
call fcn.1403aea90
mov ecx, dword [rsp + 0x7c]
lea rcx, [rcx + rcx*2]
lea rdi, [rdi + rcx*8 + 0x10]
lea rsi, [rsp + 0x60]
call fcn.14000bf30
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
mov eax, r14d
add eax, dword [rsp + 0x8c]
mov esi, eax
mov eax, dword [rsp + 0x7c]
inc eax
cmp eax, r15d
mov dword [rsp + 0x7c], eax
mov rdi, qword [rsp + 0x28]
jb 0x140417a7b
jmp 0x140417aeb
mov eax, esi
jmp 0x140417a24
lea rdx, [rsp + 0x60]
mov rcx, rbp
mov dword [rsp + 0x8c], eax
mov r8d, eax
mov r9d, r14d
call fcn.1403aea90
mov r11d, dword [rdi + 8]
mov eax, r11d
mov ecx, dword [rsp + 0x7c]
cmp ecx, eax
jae 0x140417fb9
mov dword [rsp + 0x7c], ecx
mov eax, ecx
lea rax, [rax + rax*2]
lea rdi, [rdi + rax*8 + 0x10]
lea rsi, [rsp + 0x60]
call fcn.14000bf30
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
mov eax, r14d
add eax, dword [rsp + 0x8c]
mov esi, eax
mov edi, dword [rsp + 0x7c]
inc edi
cmp edi, r15d
mov dword [rsp + 0x7c], edi
mov eax, esi
mov rdi, qword [rsp + 0x28]
jb 0x140417a7f
movsxd rdx, r12d
lea rcx, [0x1409a08f8]
call fcn.14000bc50
mov r15, rax
xor eax, eax
xor r8d, r8d
jmp 0x140417c6a
mov r10d, dword [rbp + 0x10]
mov dword [rsp + 0x44], r10d
mov ecx, dword [rbp + 0xc]
sub ecx, r10d
cmp ecx, 4
jb 0x140417fa7
mov rcx, qword [rbp]
mov edx, r10d
mov r9, qword [rcx]
call qword [r9 + WSAStartup]
mov ecx, dword [rsp + 0x44]
add ecx, 4
mov dword [rbp + 0x10], ecx
mov ecx, dword [rdi + 8]
mov r8d, ecx
mov dword [rsp + 0x34], r8d
cmp eax, r8d
jae 0x140417fb9
mov ecx, eax
lea rcx, [rcx + rcx*2]
lea rcx, [rdi + rcx*8 + 0x10]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rax
mov r10d, dword [rcx + 8]
mov dword [rsp + 0x40], r10d
mov r9d, dword [rcx + 0xc]
mov dword [rsp + 0x3c], r9d
mov r11d, r10d
jmp 0x140417c2f
mov r13d, r11d
mov ecx, r9d
sub ecx, r13d
cmp ecx, 4
jb 0x140417fa7
mov rcx, rax
mov edx, r13d
mov r11, qword [rax]
call qword [r11 + WSAStartup]
lea r11d, [r13 + 4]
mov dword [rsp + 0x38], r11d
mov r13d, dword [rsp + 0x34]
cmp eax, r13d
jae 0x140417fb9
mov eax, eax
lea rax, [rax + rax*2]
movups xmm0, xmmword [rdi + rax*8 + 0x10]
movups xmmword [rsp + 0x48], xmm0
mov rcx, qword [rdi + rax*8 + 0x20]
mov qword [rsp + 0x58], rcx
mov eax, dword [rsp + 0x88]
cmp eax, dword [r15 + 8]
jae 0x140417fb9
mov dword [rsp + 0x88], eax
mov ecx, eax
lea rcx, [rcx + rcx*2]
lea rdi, [r15 + rcx*8 + 0x10]
lea rsi, [rsp + 0x48]
call fcn.14000bf30
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
mov eax, dword [rsp + 0x88]
inc eax
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x34], r13d
mov rax, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov r9d, dword [rsp + 0x3c]
mov r10d, dword [rsp + 0x40]
mov r11d, dword [rsp + 0x38]
mov r13d, dword [rsp + 0x94]
mov ecx, r11d
sub ecx, r10d
mov edx, r9d
sub edx, r10d
cmp ecx, edx
jae 0x140417c5b
movsxd rcx, dword [rsp + 0x88]
mov r13d, r12d
cmp rcx, r13
jl 0x140417b78
mov r13d, dword [rsp + 0x94]
mov r8d, dword [rsp + 0x78]
inc r8d
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0x78], r8d
movsxd rcx, r8d
mov edx, dword [rsp + 0x90]
cmp rcx, rdx
jge 0x140417c94
mov dword [rsp + 0x88], eax
movsxd rcx, eax
mov edx, r12d
cmp rcx, rdx
jl 0x140417b07
lea rcx, [0x1407fa898]
call fcn.14000bb30
mov rbp, rax
mov rcx, rbp
mov rdx, r15
mov r8d, r13d
call fcn.1404172c0
mov rcx, rbx
mov rdx, rbp
mov r8, rdi
mov r9d, r14d
call fcn.140418040
mov rcx, rbx
call fcn.1404182a0
mov rcx, rbx
call fcn.1404177e0
test eax, eax
jne 0x140417cea
add rsp, 0x98
pop rbx
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rbx
call fcn.140418580
mov rcx, rbx
call fcn.140418760
mov dword [rsp + 0x80], eax
lea rcx, [0x14084f9f0]
call fcn.14000bb30
mov rsi, rax
mov r8, qword [0x140f0d260]
mov r8, qword [r8 + 8]
mov rcx, rsi
xor edx, edx
call fcn.1405fba50
lea rcx, [rbx + 0x30]
mov rdx, rsi
call fcn.14000bd40
mov rsi, qword [rbx + 0x20]
mov edi, dword [rsi + 0x14]
xor ebp, ebp
jmp 0x140417d74
movzx edx, word [rcx + 0x34]
mov r8d, edx
cmp r8d, 0xffff
je 0x140417d74
mov r14, qword [rbx + 8]
cmp dword [r14 + 8], r8d
jle 0x140417d74
cmp edx, dword [r14 + 8]
jae 0x140417fb9
mov r8, qword [r14 + rdx*8 + 0x10]
cmp byte [r8], r8b
add r8, 8
mov rdx, rbx
call fcn.1404159f0
mov rcx, rsi
cmp edi, dword [rcx + 0x14]
jne 0x140417fb3
mov ecx, dword [rsi + 0x10]
cmp ebp, ecx
jae 0x140417d9f
mov rcx, qword [rsi + 8]
cmp ebp, dword [rcx + 8]
jae 0x140417fb9
mov edx, ebp
mov rcx, qword [rcx + rdx*8 + 0x10]
inc ebp
jmp 0x140417d3c
movzx ecx, word [rsp + 0x82]
movzx edx, byte [rsp + 0x80]
test edx, edx
jne 0x140417dba
mov eax, 0xffff
jmp 0x140417dbd
movzx eax, cx
movzx ecx, ax
cmp ecx, 0xffff
je 0x140417e0a
mov r14, qword [rbx + 8]
cmp dword [r14 + 8], ecx
jle 0x140417e0a
mov rcx, r14
test edx, edx
je 0x140417fad
movzx edx, word [rsp + 0x82]
cmp edx, dword [rcx + 8]
jae 0x140417fb9
movzx edx, word [rsp + 0x82]
mov r8, qword [rcx + rdx*8 + 0x10]
cmp byte [r8], r8b
lea rdx, [r8 + 8]
mov rcx, rbx
call fcn.140418ce0
lea rcx, [0x1408687f0]
call fcn.14000bb30
mov rsi, rax
mov rcx, rsi
xor edx, edx
xor r8d, r8d
call fcn.140486560
lea rcx, [rbx + 0x38]
mov rdx, rsi
call fcn.14000bd40
mov rsi, qword [rbx + 0x20]
mov edi, dword [rsi + 0x14]
xor ebp, ebp
jmp 0x140417ea1
mov r14, qword [rcx + 0x18]
mov r15d, dword [r14 + 0x14]
xor r13d, r13d
jmp 0x140417e70
lea rcx, [r12 + 8]
mov rdx, rbx
call fcn.14000bd40
mov rcx, qword [rbx + 0x38]
mov edx, dword [r12 + 0x30]
cmp byte [rcx], cl
mov r8, r12
mov r9d, 2
call fcn.1404869a0
mov rcx, r14
cmp r15d, dword [rcx + 0x14]
jne 0x140417fb3
mov ecx, dword [r14 + 0x10]
cmp r13d, ecx
jae 0x140417ea1
mov rcx, qword [r14 + 8]
cmp r13d, dword [rcx + 8]
jae 0x140417fb9
mov edx, r13d
mov r12, qword [rcx + rdx*8 + 0x10]
inc r13d
jmp 0x140417e4a
mov rcx, rsi
cmp edi, dword [rcx + 0x14]
jne 0x140417fb3
mov ecx, dword [rsi + 0x10]
cmp ebp, ecx
jae 0x140417ecf
mov rcx, qword [rsi + 8]
cmp ebp, dword [rcx + 8]
jae 0x140417fb9
mov edx, ebp
mov rcx, qword [rcx + rdx*8 + 0x10]
inc ebp
jmp 0x140417e3d
mov rcx, rbx
lea rdx, [0x14073ef28]
call fcn.140417fc0
lea rcx, [rbx + 0x40]
mov rdx, rax
call fcn.14000bd40
mov rcx, rbx
lea rdx, [0x14073f020]
call fcn.140417fc0
lea rcx, [rbx + 0x48]
mov rdx, rax
call fcn.14000bd40
nop
add rsp, 0x98
pop rbx
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.140002f4d
mov r8, qword [0x140f0d398]
mov r8, qword [r8 + 8]
mov rcx, rbp
mov edx, 0x1e
call fcn.1403af3b0
mov rcx, rax
lea rdx, [0x1406fdd80]
call fcn.1401c69a0
test eax, eax
jne 0x14041795b
lea rcx, [0x1407fa8e8]
call fcn.14000bb30
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1406f79b0]
call fcn.140417750
mov rcx, rbx
call fcn.14000c120
lea rcx, [0x1407fa8e8]
call fcn.14000bb30
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1406ee4e0]
call fcn.140417750
mov rcx, rbx
call fcn.14000c120
lea rcx, [0x1406f7468]
call fcn.1403ae9d0
int3
call fcn.1403ae9a0
int3
call fcn.1401f42a0
int3
call fcn.1401f4240
int3
call fcn.14027f100
int3