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

Disassembly:
mov rax, rsp
push rbx
push rsi
push rdi
push r15
sub rsp, 0x58
mov rbx, qword [0x14023b450]
xor r15d, r15d
mov qword [rax + 0x10], rbp
mov edi, r15d
mov qword [rax + 0x18], r12
mov qword [rax - 0x28], r14
xor r14b, r14b
movaps xmmword [rax - 0x38], xmm6
movsxd rax, dword [rbx + 0x1d98]
test eax, eax
jle 0x140062151
mov r8, qword [rbx + 0x1da0]
lea rdx, [rax - 1]
lea rcx, [rdx + rdx*2]
add r8, 8
shl rcx, 4
add r8, rcx
mov r9, qword [r8]
test r9, r9
je 0x140062147
test dword [r9 + 0xc], 0x8000000
jne 0x1400621ce
sub r8, 0x30
sub rdx, 1
jns 0x140062131
mov r10, qword [rbx + 0x1ef8]
mov r9, r15
xorps xmm6, xmm6
cmp qword [rbx + 0x1f00], rdi
je 0x1400621a6
test r10, r10
jne 0x1400621a6
comiss xmm6, dword [rbx + 0x1f44]
movss xmm1, dword [rbx + 0x1f14]
movss xmm0, dword [rbx + 0x18]
mulss xmm0, dword [0x140209180]
subss xmm1, xmm0
maxss xmm1, xmm6
movss dword [rbx + 0x1f14], xmm1
jb 0x1400621a6
comiss xmm6, xmm1
jb 0x1400621a6
mov qword [rbx + 0x1f00], r15
mov r12d, 1
test r9, r9
jne 0x1400621da
test r10, r10
jne 0x1400621da
mov edx, r12d
lea ecx, [r12 + 2]
call fcn.14005ff70
comiss xmm0, xmm6
jbe 0x1400621da
movzx r8d, dl
jmp 0x1400621e7
mov qword [rbx + 0x1ef8], r15
mov r10, r15
jmp 0x14006215b
xor r8b, r8b
test r9, r9
jne 0x14006220c
test r10, r10
jne 0x14006220c
cmp byte [rbx + 0x140], dil
je 0x14006220c
mov ecx, dword [rbx + 0x3c]
test ecx, ecx
js 0x14006220c
call fcn.140057930
test al, al
je 0x14006220c
test byte [rbx + 8], r12b
je 0x14006220c
movzx esi, r12b
jmp 0x14006220f
xor sil, sil
mov ebp, 0xffffffff
test r8b, r8b
jne 0x14006221e
test sil, sil
je 0x140062276
mov rax, qword [rbx + 0x1dc8]
test rax, rax
jne 0x140062244
mov ecx, dword [rbx + 0x1bc0]
mov r8d, ebp
dec ecx
mov edx, 0x80000001
call fcn.140061fd0
test rax, rax
je 0x140062276
mov rax, qword [rax + 0x388]
xor sil, r12b
mov qword [rbx + 0x1f00], rax
mov qword [rbx + 0x1ef8], rax
movzx eax, sil
mov byte [rbx + 0x1f18], al
add eax, 2
mov dword [rbx + 0x1dfc], eax
mov qword [rbx + 0x1f10], r15
movss xmm0, dword [rbx + 0x1f10]
mov r10, qword [rbx + 0x1ef8]
movss xmm5, dword [0x14020909c]
mov r8, r10
movaps xmmword [rsp + 0x30], xmm7
addss xmm0, dword [rbx + 0x18]
movss dword [rbx + 0x1f10], xmm0
test r10, r10
je 0x140062376
cmp dword [rbx + 0x1dfc], 3
jne 0x140062376
subss xmm0, dword [0x140209038]
divss xmm0, dword [0x140209020]
comiss xmm6, xmm0
jbe 0x1400622d2
xorps xmm1, xmm1
jmp 0x1400622d9
movaps xmm1, xmm5
minss xmm1, xmm0
movss xmm7, dword [rbx + 0x1f14]
mov edx, 4
maxss xmm7, xmm1
lea ecx, [rdx + 9]
movss dword [rbx + 0x1f14], xmm7
call fcn.14005ff70
comiss xmm0, xmm6
mov r9d, r15d
lea ecx, [rdx + 8]
seta r9b
call fcn.14005ff70
comiss xmm0, xmm6
mov ecx, r15d
mov r8, r10
seta cl
sub ecx, r9d
je 0x140062336
call fcn.140062060
mov r8, qword [rbx + 0x1ef8]
movaps xmm7, xmm5
mov dword [rbx + 0x1f14], 0x3f800000
movss xmm0, dword [rbx + 0x350]
comiss xmm0, xmm6
ja 0x140062376
comiss xmm5, xmm7
seta al
and byte [rbx + 0x1f18], al
je 0x14006236a
cmp qword [rbx + 0x1dc8], rdi
je 0x14006236d
movzx r14d, r12b
mov qword [rbx + 0x1ef8], r15
jmp 0x1400623f2
mov rdi, r8
mov qword [rbx + 0x1ef8], r15
jmp 0x1400623f2
test r8, r8
je 0x1400623f2
cmp dword [rbx + 0x1dfc], 2
jne 0x1400623f2
movss xmm0, dword [rbx + 0x1f10]
subss xmm0, dword [0x140209038]
divss xmm0, dword [0x140209020]
comiss xmm6, xmm0
jbe 0x1400623a6
xorps xmm5, xmm5
jmp 0x1400623aa
minss xmm5, xmm0
movss xmm0, dword [rbx + 0x1f14]
maxss xmm0, xmm5
movss dword [rbx + 0x1f14], xmm0
mov ecx, dword [rbx + 0x3c]
test ecx, ecx
js 0x1400623e7
call fcn.140057930
test al, al
je 0x1400623e7
cmp byte [rbx + 0x141], dil
cmovne ebp, r12d
mov ecx, ebp
call fcn.140062060
mov r8, qword [rbx + 0x1ef8]
cmp byte [rbx + 0x140], dil
cmove rdi, r8
mov edx, r12d
mov ecx, reloc.WS2_32.dll_recv
call fcn.14005ff70
comiss xmm0, xmm6
mov rbp, qword [rsp + 0x88]
movaps xmm7, xmmword [rsp + 0x30]
jbe 0x140062417
mov byte [rbx + 0x1f18], dl
cmp dword [rbx + 0x1c5c], r15d
je 0x14006242d
cmp byte [rbx + 0x1c69], r15b
je 0x1400624ba
cmp byte [rbx + 0x1f18], r15b
je 0x1400624ba
mov edx, 2
lea ecx, [rdx + 0xe]
call fcn.14005ff70
comiss xmm0, xmm6
jbe 0x1400624ba
lea rax, [rbx + 0x128]
test rax, rax
jne 0x14006245f
lea rax, [rbx + 0x128]
movss xmm0, dword [rax]
movss xmm1, dword [0x140209420]
comiss xmm0, xmm1
movss xmm2, dword [rax + 4]
jb 0x140062480
comiss xmm2, xmm1
jb 0x140062480
movzx ecx, r12b
jmp 0x140062482
xor cl, cl
lea rax, [rbx + 0x3c4]
test rax, rax
jne 0x140062495
lea rax, [rbx + 0x128]
movss xmm0, dword [rax]
comiss xmm0, xmm1
movss xmm2, dword [rax + 4]
jb 0x1400624ae
comiss xmm2, xmm1
jb 0x1400624ae
movzx eax, r12b
jmp 0x1400624b0
xor al, al
cmp cl, al
movzx r14d, r14b
cmove r14d, r12d
mov rsi, qword [rbx + 0x1ef8]
test rsi, rsi
je 0x1400625ba
test byte [rsi + 0xc], 4
jne 0x1400625ba
mov eax, dword [rbx + 0x1dfc]
cmp eax, 2
jne 0x1400624f1
cmp byte [rbx + 0x141], r15b
jne 0x1400625ba
mov edx, r12d
jmp 0x1400624fd
cmp eax, 3
jne 0x1400625ba
lea edx, [rax + 1]
xorps xmm3, xmm3
movss dword [rsp + 0x20], xmm6
xor r8d, r8d
lea rcx, [rsp + 0x80]
call fcn.1400600f0
movss xmm3, dword [rax]
ucomiss xmm3, xmm6
movss xmm4, dword [rax + 4]
jp 0x140062531
jne 0x140062531
ucomiss xmm4, xmm6
jp 0x140062531
je 0x1400625ba
movss xmm1, dword [rbx + 0xc0]
lea rdx, [rsp + 0x80]
movss xmm0, dword [rbx + 0x18]
mov r8d, r12d
minss xmm1, dword [rbx + 0xc4]
mov rcx, qword [rsi + 0x388]
mulss xmm0, dword [0x140209358]
mulss xmm1, xmm0
cvttss2si eax, xmm1
movd xmm2, eax
cvtdq2ps xmm2, xmm2
mulss xmm3, xmm2
mulss xmm4, xmm2
addss xmm3, dword [rcx + 0x10]
addss xmm4, dword [rcx + 0x14]
movss dword [rsp + 0x80], xmm3
movss dword [rsp + 0x84], xmm4
call fcn.14005cf40
test dword [rcx + 0xc], 0x100
jne 0x1400625b3
comiss xmm6, dword [rbx + 0x3034]
jb 0x1400625b3
mov eax, dword [rbx + 0x1c]
mov dword [rbx + 0x3034], eax
mov byte [rbx + 0x1e1f], r12b
movaps xmm6, xmmword [rsp + 0x40]
test rdi, rdi
je 0x14006263b
mov rax, qword [rbx + 0x1dc8]
test rax, rax
je 0x1400625d9
cmp rdi, qword [rax + 0x388]
je 0x140062634
call fcn.140053ff0
mov word [rbx + 0x1e1e], 0x100
mov rax, qword [rdi + 0x3a0]
test rax, rax
je 0x1400625fe
cmp byte [rax + 0x8f], r15b
cmovne rdi, rax
xor edx, edx
mov rcx, rdi
call fcn.14005e920
mov rcx, rdi
call fcn.14005ca60
cmp dword [rdi + 0x3a8], r15d
jne 0x140062623
xor edx, edx
mov rcx, rdi
call fcn.14005fd70
cmp word [rdi + 0x152], 2
jne 0x140062634
mov dword [rbx + 0x1e14], r12d
mov qword [rbx + 0x1ef8], r15
mov r12, qword [rsp + 0x90]
test r14b, r14b
mov r14, qword [rsp + 0x50]
je 0x1400626ff
cmp qword [rbx + 0x1dc8], r15
je 0x1400626ff
call fcn.140053ff0
mov rsi, qword [rbx + 0x1dc8]
mov rdi, rsi
lea rcx, [rsi + 0x380]
cmp qword [rcx], r15
je 0x1400626a7
nop dword [rax]
test byte [rdi + 0x150], 2
jne 0x1400626a7
mov eax, dword [rdi + 0xc]
and eax, 0x15000000
cmp eax, 0x1000000
jne 0x1400626a7
mov rdi, qword [rcx]
lea rcx, [rdi + 0x380]
cmp qword [rcx], r15
jne 0x140062680
cmp rdi, rsi
je 0x1400626c2
mov rcx, rdi
call fcn.14005ca60
mov qword [rdi + 0x3a0], rsi
mov rsi, qword [rbx + 0x1dc8]
mov word [rbx + 0x1e1e], 0x100
test byte [rsi + 0x150], 2
je 0x1400626f7
mov ecx, dword [rbx + 0x1e14]
xor ecx, 1
cmp ecx, 1
jne 0x1400626fa
mov dword [rsi + 0x3ac], r15d
add rsp, 0x58
pop r15
pop rdi
pop rsi
pop rbx
jmp fcn.14005fc90
mov ecx, r15d
call fcn.14005fc90
add rsp, 0x58
pop r15
pop rdi
pop rsi
pop rbx
ret