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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0xc0
mov r14, qword [rsp + 0x160]
mov rbp, qword [rsp + 0x158]
mov rsi, qword [rsp + 0x150]
lea rax, [rdx + r8]
mov rdi, r8
mov rbx, rcx
mov rcx, qword [rsp + 0x128]
mov r8, rax
mov qword [rsp + 0x68], rax
and r8, qword [rsp + 0x120]
mov r10, qword [rcx + 0x10]
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x90], r8
mov r8, qword [rsp + 0x130]
mov r11d, __WSAFDIsSet
cmp rax, r8
mov r9, r8
mov qword [rsp + 0x30], rbp
cmovb r9, rax
add rax, r10
mov r12d, 5
mov qword [rsp + 0x80], r9
cmp rax, r8
mov r9, r8
cmovb r9, rax
mov rax, rbx
mov qword [rsp + 0x28], rsi
sub rax, rdi
mov qword [rsp + 0x78], r9
mov r9d, 0x145
mov qword [rsp + 0x108], rax
mov eax, dword [rcx + 4]
cmp eax, 0xa
mov rax, qword [rsp + 0x138]
cmovle r9d, r11d
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x88], r9
mov r9d, 1
cmovle r12d, r9d
mov r9, qword [rcx + 0x60]
lea rcx, [r10 + rdx]
xor r13d, r13d
mov rdx, rdi
mov qword [rsp + 0xa8], r12
mov qword [rsp + 0x70], r9
mov qword [rsp + 0x40], r13
call fcn.140086f20
movss xmm0, dword [rsi + 0xb18]
mov rcx, qword [rsi + 0xb10]
mov rdx, qword [rbp + 0x100]
mov r10d, 2
neg rdx
mov qword [rsp + 0x58], r10
lea r8d, [r13 + 4]
movss xmm1, dword [rcx + rdi*4]
and edx, 7
shl rdx, 5
mov rax, qword [rdx + rbp]
addss xmm0, dword [rdx + rbp + 0x1c]
lea edx, [r13 + 0xa]
subss xmm1, dword [rcx + rax*4]
lea rax, [rdi + 2]
addss xmm1, xmm0
cmp rax, rbx
ja 0x1400871da
movss xmm0, dword [0x1402abbb0]
mov rax, rdi
add rax, rax
lea rcx, [r14 + rax*8 + 0x2c]
comiss xmm1, dword [rcx]
jb 0x1400871d5
inc r10
add rcx, 0x10
cmp r10, rdx
jne 0x1400871cc
add rdx, r8
addss xmm1, xmm0
add r8, r8
lea rax, [r10 + rdi]
cmp rax, rbx
jbe 0x1400871b1
mov qword [rsp + 0x58], r10
xor edx, edx
mov qword [rsp + 0x50], rdx
test r12, r12
je 0x140087a19
mov qword [rsp + 0xb8], r15
lea ebx, [rdx + 0x15]
lea edi, [rdx + 0x16]
lea r9d, [rdx + 0x17]
lea r11, [0x140000000]
mov dword [rsp + 0x130], 0xc0
nop
mov rcx, qword [rbp + 0x100]
mov eax, 8
cmp rcx, rax
cmovb rax, rcx
cmp rdx, rax
jae 0x1400879fc
mov r8, qword [rsp + 0x110]
mov r12, rdx
sub r12, rcx
mov r15, r8
and r12d, 7
shl r12, 5
add r12, rbp
mov qword [rsp + 0x48], r12
mov rax, qword [r12]
sub r15, rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x100], r15
cmp r15, 6
jb 0x1400872e5
cmp r15, 0x82
jae 0x14008729b
lea rdx, [r15 - 2]
xor ecx, ecx
mov rax, rdx
shr rax, 1
je 0x140087289
inc ecx
shr rax, 1
jne 0x140087282
dec ecx
shr rdx, cl
inc cx
lea r15d, [rcx + rcx]
add r15w, dx
jmp 0x1400872dd
cmp r15, 0x842
jae 0x1400872bd
lea rcx, [r15 - 0x42]
xor eax, eax
shr rcx, 1
je 0x1400872b7
nop
inc eax
shr rcx, 1
jne 0x1400872b0
lea r15d, [rax + 0xa]
jmp 0x1400872dd
cmp r15, 0x1842
jae 0x1400872cc
movzx r15d, bx
jmp 0x1400872dd
cmp r15, 0x5842
movzx r15d, di
jb 0x1400872dd
movzx r15d, r9w
mov qword [rsp + 0x100], r15
mov rcx, qword [rsi + 0xb10]
mov r9, qword [rsp + 0x108]
pxor xmm3, xmm3
movzx eax, r15w
lea rdi, [r10 - 1]
xor ebp, ebp
movss xmm0, dword [rcx + r8*4]
subss xmm0, dword [rcx]
mov eax, dword [r11 + rax*4 + 0x2c76c0]
cvtsi2ss xmm3, rax
addss xmm3, dword [r12 + 0x18]
addss xmm3, xmm0
jmp 0x140087337
lea r11, [0x140000000]
cmp rdi, r9
jae 0x1400876c2
mov eax, dword [r11 + rbp*4 + 0x2abb30]
mov r10, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x68]
mov eax, dword [r12 + rax*4 + 8]
add eax, dword [r11 + rbp*4 + 0x2abb70]
mov r11, qword [rsp + 0x120]
movsxd rsi, eax
mov rax, qword [rsp + 0x90]
lea rdx, [rax + r10]
add rax, rdi
sub rcx, rsi
movzx ebx, byte [rdx + rdi]
cmp rax, r11
ja 0x1400876c2
mov r8, qword [rsp + 0x78]
mov rax, qword [rsp + 0x70]
add rax, r8
cmp rsi, rax
ja 0x1400876b5
cmp rsi, qword [rsp + 0x80]
ja 0x14008742d
cmp rcx, qword [rsp + 0x68]
jae 0x1400876b5
and rcx, r11
lea rax, [rcx + rdi]
cmp rax, r11
ja 0x1400876b5
cmp bl, byte [rax + r10]
jne 0x1400876b5
add r9, rdx
lea r11, [rcx + r10]
xor r10d, r10d
lea r8, [r9 - 4]
cmp rdx, r8
ja 0x140087404
mov rcx, r11
sub rcx, rdx
nop
mov eax, dword [rcx + rdx]
cmp dword [rdx], eax
jne 0x140087404
add rdx, 4
add r10, 4
cmp rdx, r8
jbe 0x1400873f0
cmp rdx, r9
jae 0x140087504
nop dword [rax]
movzx eax, byte [rdx]
cmp byte [r10 + r11], al
jne 0x140087504
inc rdx
inc r10
cmp rdx, r9
jb 0x140087410
jmp 0x140087504
cmp rsi, r8
jbe 0x1400876b5
mov r11, qword [rsp + 0x128]
xor r9d, r9d
mov rax, qword [r11 + 0x60]
lea r10, [r8 + rax]
lea r8, [r11 + 0x170]
mov rax, qword [r8]
lea rcx, [rsi + rax]
cmp r10, rcx
jb 0x140087474
nop dword [rax]
mov rax, qword [r8 + 8]
add r8, 8
inc r9
lea rcx, [rsi + rax]
cmp r10, rcx
jae 0x140087460
mov rcx, qword [r11 + r9*8 + 0x168]
mov r8, qword [r11 + r9*8 + 0xe8]
lea rax, [rsi + rcx]
sub r10, rax
mov rax, qword [r11 + r9*8 + 0x170]
mov r9, qword [rsp + 0x108]
sub rax, r10
sub rax, rcx
cmp rax, r9
cmova rax, r9
cmp rdi, rax
jae 0x1400876b5
lea r11, [r8 + r10]
cmp bl, byte [r11 + rdi]
jne 0x1400876b5
lea r9, [rdx + rax]
xor r10d, r10d
lea r8, [r9 - 4]
cmp rdx, r8
ja 0x1400874e9
mov rcx, r11
sub rcx, rdx
mov eax, dword [rdx + rcx]
cmp dword [rdx], eax
jne 0x1400874e9
add rdx, 4
add r10, 4
cmp rdx, r8
jbe 0x1400874d5
cmp rdx, r9
jae 0x140087504
nop
movzx eax, byte [rdx]
cmp byte [r11 + r10], al
jne 0x140087504
inc rdx
inc r10
cmp rdx, r9
jb 0x1400874f0
mov rbx, qword [rsp + 0x150]
lea r9, [rdi + 1]
movaps xmm2, xmm3
mov rax, qword [rbx + 0xb00]
addss xmm2, dword [rax + rbp*4]
cmp r9, r10
ja 0x1400876ad
mov r12, qword [rsp + 0x60]
movzx r11d, r15w
and r11w, 7
shl r11w, 3
nop dword [rax + rax]
cmp r9, 0xa
jae 0x14008754c
lea edx, [r9 - 2]
jmp 0x1400875a1
cmp r9, 0x86
jae 0x14008757b
lea rdx, [r9 - 6]
xor ecx, ecx
mov rax, rdx
shr rax, 1
je 0x14008756a
inc ecx
shr rax, 1
jne 0x140087563
dec ecx
shr rdx, cl
add cx, 2
add cx, cx
add dx, cx
jmp 0x1400875a1
cmp r9, 0x846
jae 0x14008759c
lea rcx, [r9 - 0x46]
xor eax, eax
shr rcx, 1
je 0x140087597
nop
inc eax
shr rcx, 1
jne 0x140087590
lea edx, [rax + 0xc]
jmp 0x1400875a1
mov edx, reloc.WS2_32.dll_socket
movzx r8d, dx
and r8w, 7
or r8w, r11w
test rbp, rbp
jne 0x1400875cd
cmp r15w, 8
jae 0x1400875cd
cmp dx, 0x10
jae 0x1400875cd
cmp dx, 8
jb 0x1400875ff
or r8w, 0x40
jmp 0x1400875ff
movzx eax, r15w
mov edi, 0xc0
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, dx
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, di
add ax, cx
or r8w, ax
mov eax, 0x80
cmp r8w, ax
jae 0x14008760f
movaps xmm0, xmm3
jmp 0x140087612
movaps xmm0, xmm2
movzx eax, dx
pxor xmm1, xmm1
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0x2c7780]
cvtsi2ss xmm1, rax
movzx eax, r8w
mov r8, qword [rsp + 0x110]
lea rdx, [r9 + r8]
shl rdx, 4
addss xmm1, xmm0
movss xmm0, dword [rdx + r14 + 0xc]
addss xmm1, dword [rbx + rax*4]
comiss xmm0, xmm1
jbe 0x140087694
mov eax, r9d
mov rcx, rbp
movss dword [rdx + r14 + 0xc], xmm1
or eax, 0x12000000
shl rcx, 0x1b
mov dword [rdx + r14 + 4], esi
mov dword [rdx + r14], eax
mov eax, r8d
add ecx, 0x8000000
sub eax, r12d
or ecx, eax
cmp r13, r9
mov rax, r9
cmova rax, r13
mov dword [rdx + r14 + 8], ecx
mov r13, rax
mov rdi, r9
inc r9
cmp r9, r10
jbe 0x140087540
mov r12, qword [rsp + 0x48]
mov qword [rsp + 0x40], r13
mov r9, qword [rsp + 0x108]
inc rbp
cmp rbp, 0x10
jb 0x140087330
mov rdx, qword [rsp + 0x50]
cmp rdx, 2
jae 0x1400879bd
mov rdi, qword [rsp + 0x58]
xor r12d, r12d
mov qword [rsp + 0x48], r12
cmp qword [rsp + 0x140], r12
jbe 0x1400879bd
mov r13, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x150]
add r13, qword [rsp + 0x78]
mov qword [rsp + 0x98], r13
nop word [rax + rax]
mov rax, qword [rsp + 0x148]
xor r11d, r11d
mov rax, qword [rax + r12*8]
mov ebp, eax
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x128]
mov r9d, dword [rax + 0x3c]
mov r10d, dword [rax + 0x38]
cmp rbp, r13
lea r8, [rbp + 0xf]
lea rax, [r9 + 0x10]
seta r11b
cmp r8, rax
jb 0x1400877be
lea ecx, [r10 + 2]
mov edx, 1
shl rdx, cl
xor ecx, ecx
sub rdx, r9
lea rbx, [rdx + r8 - 0x10]
mov rax, rbx
shr rax, 1
je 0x140087777
nop dword [rax + rax]
inc ecx
shr rax, 1
jne 0x140087770
lea eax, [rcx - 1]
mov rdx, rbx
mov ecx, eax
mov r8d, eax
shr rdx, cl
sub r8, r10
mov rcx, r10
and dx, 1
lea eax, [r8 - 1]
shl r8w, 0xa
add ax, ax
add dx, ax
mov eax, 1
shl dx, cl
shl ax, cl
dec ax
and ax, bx
add dx, ax
add dx, r9w
add dx, 0x10
or r8w, dx
mov ebx, dword [rsp + 0xa4]
mov rcx, qword [rsi + 0xb00]
movzx edx, r8w
shr r8w, 0xa
and edx, 0x3ff
mov r9d, ebx
movzx eax, r8w
shr r9, 5
movd xmm2, eax
cvtdq2ps xmm2, xmm2
addss xmm2, xmm3
addss xmm2, dword [rcx + rdx*4]
cmp rdi, r9
jae 0x14008780d
test r11d, r11d
jne 0x14008780a
cmp r9, qword [rsp + 0x88]
jbe 0x14008780d
mov rdi, r9
movsxd r10, r11d
cmp rdi, r9
ja 0x14008799d
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x60]
movzx eax, r15w
shr eax, 3
lea r11d, [rax + rax*2]
movzx eax, r15w
mov r15, qword [rsp + 0x150]
and ax, 7
shl ax, 3
movzx esi, ax
test r10, r10
je 0x140087859
mov rax, rbx
mov r8, r9
and eax, 0x1f
cmovne r8, rax
jmp 0x14008785c
mov r8, rdi
cmp r8, 0xa
jae 0x140087868
lea edx, [r8 - 2]
jmp 0x1400878c1
cmp r8, 0x86
jae 0x140087898
lea rdx, [r8 - 6]
xor ecx, ecx
mov rax, rdx
shr rax, 1
je 0x140087887
nop
inc ecx
shr rax, 1
jne 0x140087880
dec ecx
shr rdx, cl
add cx, 2
add cx, cx
add dx, cx
jmp 0x1400878c1
cmp r8, 0x846
jae 0x1400878bc
lea rcx, [r8 - 0x46]
xor eax, eax
shr rcx, 1
je 0x1400878b7
nop dword [rax]
inc eax
shr rcx, 1
jne 0x1400878b0
lea edx, [rax + 0xc]
jmp 0x1400878c1
mov edx, reloc.WS2_32.dll_socket
movzx ecx, dx
movzx edx, dx
pxor xmm1, xmm1
shr ecx, 3
mov eax, 0x520d40
add ecx, r11d
add ecx, ecx
shr eax, cl
add cx, 2
and ax, word [rsp + 0x130]
shl cx, 5
add ax, cx
movzx ecx, ax
mov eax, edx
and eax, 7
or rcx, rax
lea rax, [0x140000000]
mov eax, dword [rax + rdx*4 + 0x2c7780]
mov rdx, qword [rsp + 0x110]
or rcx, rsi
cvtsi2ss xmm1, rax
addss xmm1, xmm2
addss xmm1, dword [r15 + rcx*4]
lea rcx, [rdi + rdx]
add rcx, rcx
movss xmm0, dword [r14 + rcx*8 + 0xc]
comiss xmm0, xmm1
jbe 0x14008796f
shl r8, 0x19
mov rax, rdi
movss dword [r14 + rcx*8 + 0xc], xmm1
shl rax, 0x19
mov dword [r14 + rcx*8 + 4], ebp
sub eax, r8d
add eax, 0x12000000
or eax, edi
mov dword [r14 + rcx*8], eax
mov eax, edx
sub eax, r12d
cmp r13, rdi
mov dword [r14 + rcx*8 + 8], eax
mov rax, rdi
cmova rax, r13
mov r13, rax
inc rdi
cmp rdi, r9
jbe 0x140087845
mov r12, qword [rsp + 0x48]
mov r15, qword [rsp + 0x100]
mov rsi, qword [rsp + 0x150]
mov qword [rsp + 0x40], r13
mov r13, qword [rsp + 0x98]
inc r12
mov qword [rsp + 0x48], r12
cmp r12, qword [rsp + 0x140]
jb 0x140087710
mov r13, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x150]
mov r10, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x158]
inc rdx
mov r9d, reloc.WS2_32.dll_socket
lea r11, [0x140000000]
lea ebx, [r9 - 2]
mov qword [rsp + 0x50], rdx
lea edi, [rbx + 1]
cmp rdx, qword [rsp + 0xa8]
jb 0x140087210
mov r15, qword [rsp + 0xb8]
mov rax, r13
add rsp, 0xc0
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rax, r13
jmp 0x140087a07