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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x1e8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x150], xmm15
movaps xmmword [rbp + 0x140], xmm14
movaps xmmword [rbp + 0x130], xmm13
movaps xmmword [rbp + 0x120], xmm12
movaps xmmword [rbp + 0x110], xmm11
movaps xmmword [rbp + 0x100], xmm10
movaps xmmword [rbp + 0xf0], xmm9
movaps xmmword [rbp + 0xe0], xmm8
movaps xmmword [rbp + 0xd0], xmm7
movaps xmmword [rbp + 0xc0], xmm6
mov qword [rbp + 0xb8], 0xfffffffffffffffe
mov rbx, r9
movaps xmm15, xmm2
mov r15, rdx
mov r12, rcx
mov r13d, dword [rbp + 0x200]
mov rdi, qword [rbp + 0x1e8]
mov rsi, qword [rbp + 0x1e0]
test rdi, rdi
jne 0x14001d1a9
mov rcx, rsi
call fcn.1401a60f0
mov rdi, rax
add rdi, rsi
movq xmm11, rbx
mov rbx, qword [rbp + 0x1d8]
test r13d, 0x200
jne 0x14001d1d1
movsd xmm0, qword [r12 + 0x40]
addps xmm0, xmm11
cvttps2dq xmm0, xmm0
cvtdq2ps xmm11, xmm0
movaps xmm10, xmm11
shufps xmm10, xmm11, 0x55
movss xmm6, dword [rbx + 0xc]
ucomiss xmm10, xmm6
ja 0x14001dd4b
movss xmm12, dword [rbp + 0x1f0]
movss xmm14, dword [r12 + 0x14]
divss xmm15, xmm14
mulss xmm14, xmm15
movaps xmm7, xmm10
addss xmm7, xmm14
movss xmm8, dword [rbx + 4]
ucomiss xmm7, xmm8
jae 0x14001d262
xorps xmm0, xmm0
ucomiss xmm12, xmm0
ja 0x14001d262
cmp rdi, rsi
jbe 0x14001d262
nop word cs:[rax + rax]
movaps xmm10, xmm7
mov r8, rdi
sub r8, rsi
mov rcx, rsi
mov edx, 0xa
call fcn.1403562b0
lea rsi, [rax + 1]
test rax, rax
cmove rsi, rdi
addss xmm7, xmm14
ucomiss xmm7, xmm8
jae 0x14001d262
cmp rsi, rdi
jb 0x14001d230
mov rax, rdi
sub rax, rsi
cmp rax, 0x2711
jl 0x14001ddad
xorps xmm0, xmm0
ucomiss xmm12, xmm0
ja 0x14001d2cf
mov r14, rsi
ucomiss xmm10, xmm6
jae 0x14001d2d2
cmp rsi, rdi
jae 0x14001d2d2
mov r14, rsi
movaps xmm7, xmm10
nop word cs:[rax + rax]
mov r8, rdi
sub r8, r14
mov rcx, r14
mov edx, 0xa
call fcn.1403562b0
lea r14, [rax + 1]
test rax, rax
cmove r14, rdi
addss xmm7, xmm14
ucomiss xmm7, xmm6
jae 0x14001d2d2
cmp r14, rdi
jb 0x14001d2a0
jmp 0x14001d2d2
mov r14, rdi
cmp rsi, r14
je 0x14001dd4b
mov edi, dword [rbp + 0x1d0]
mov eax, r14d
sub eax, esi
lea r8d, [rax*4]
add eax, eax
lea edx, [rax + rax*2]
mov eax, dword [r15 + 0x10]
mov dword [rbp + 0x20], eax
mov rcx, r15
mov dword [rbp + 0x24], edx
call fcn.140026460
mov rax, qword [r15 + 0x50]
mov qword [rbp + 0x40], rax
mov rax, qword [r15 + 0x58]
mov qword [rbp + 0x48], rax
mov eax, dword [r15 + 0x48]
mov qword [rbp + 0x50], rax
mov dword [rbp + 0x94], edi
cmp rsi, r14
jae 0x14001dcf9
movaps xmm9, xmm11
addss xmm11, xmm12
shr edi, 0x18
mov dword [rbp + 0x28], edi
xorps xmm8, xmm8
xor eax, eax
mov qword [rbp - 8], rax
xorps xmm6, xmm6
movaps xmm13, xmm9
mov dword [rbp + 0x8c], 0
movss dword [rbp + 0xb4], xmm6
mov rcx, qword [rbp - 8]
mov rdi, rsi
movaps xmm6, xmm10
movaps xmm7, xmm13
jmp 0x14001d38a
mov rdi, r14
addss xmm6, xmm14
mov ecx, 0
movaps xmm7, xmm9
cmp rdi, r14
jae 0x14001dcf9
ucomiss xmm12, xmm8
jbe 0x14001d414
test rcx, rcx
jne 0x14001d3c4
movaps xmm0, xmm11
subss xmm0, xmm7
movss dword [rsp + 0x20], xmm0
mov rcx, r12
movaps xmm1, xmm15
mov r8, rdi
mov r9, r14
call fcn.14002fe50
xor ecx, ecx
cmp rax, rdi
sete cl
add rcx, rax
cmp rdi, rcx
jb 0x14001d405
cmp rdi, r14
jae 0x14001d373
mov rax, r14
sub rax, rdi
jmp 0x14001d3e8
inc rdi
dec rax
je 0x14001d370
movzx ecx, byte [rdi]
cmp ecx, 0x20
je 0x14001d3e0
cmp ecx, 9
je 0x14001d3e0
lea rax, [rdi + 1]
cmp cl, 0xa
cmove rdi, rax
jmp 0x14001d373
mov rsi, rdi
movaps xmm10, xmm6
movaps xmm13, xmm7
mov qword [rbp - 8], rcx
movsx edx, byte [rsi]
mov dword [rbp + 0xb0], edx
cmp edx, 7
mov edi, dword [rbp + 0x1d0]
movss xmm6, dword [rbp + 0xb4]
jne 0x14001d4cc
movabs rax, 0x16a50c3d200dadab
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp - 0x40], rax
movabs rcx, 0x3d8927458517c4e8
mov qword [rbp + 0x60], rcx
mov rax, qword [rbp + 0x60]
mov qword [rbp - 0x38], rax
movabs rax, 0x16f14068614be8ef
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x38], rcx
mov rax, qword [rbp + 0x38]
mov qword [rbp + 0x68], rax
lea rax, [rbp + 0x60]
mov qword [rbp + 0x38], rax
mov rax, qword [rbp + 0x38]
movaps xmm0, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rax]
movaps xmmword [rbp - 0x40], xmm0
lea rcx, [rsi + 1]
mov r8d, 7
mov qword [rbp + 0x98], rcx
lea rdx, [rbp - 0x40]
call fcn.1401a64e0
test eax, eax
je 0x14001d4da
mov rax, rsi
sub rax, r14
cmp rax, 9
jae 0x14001d6da
mov edx, dword [rbp + 0xb0]
cmp edx, 0x1f
jbe 0x14001d510
jmp 0x14001d541
test dl, dl
js 0x14001d4e6
inc rsi
cmp edx, 0x1f
jbe 0x14001d510
jmp 0x14001d541
mov dword [rbp + 0x94], edi
add rsi, 8
jmp 0x14001d529
lea rcx, [rbp + 0xb0]
mov rdx, rsi
mov r8, r14
call fcn.14001b0c0
mov edx, dword [rbp + 0xb0]
test edx, edx
je 0x14001dcf9
cdqe
add rsi, rax
cmp edx, 0x1f
ja 0x14001d541
cmp edx, 0xa
jne 0x14001d537
addss xmm10, xmm14
ucomiss xmm10, dword [rbx + 0xc]
movaps xmm13, xmm9
ja 0x14001dcf9
cmp rsi, r14
jb 0x14001d35e
jmp 0x14001dcf9
cmp edx, 0xd
jne 0x14001d555
jmp 0x14001d978
cmp edx, 0xfe0f
je 0x14001d978
cmp edx, 0xffff
ja 0x14001d57a
test r13b, 4
jne 0x14001d56a
test r13b, 8
je 0x14001d57a
mov ecx, edx
call fcn.1401a8160
jmp 0x14001d571
mov ecx, edx
call fcn.1401a8258
movzx edx, ax
mov dword [rbp + 0xb0], edx
mov eax, edx
movsxd rcx, dword [r12 + 0x18]
cmp rax, rcx
jae 0x14001d63d
mov rcx, qword [r12 + 0x20]
mov ecx, dword [rcx + rax*4]
mov eax, 0xffffffff
cmp rcx, rax
je 0x14001d63d
mov rax, qword [r12 + 0x30]
test rax, rax
je 0x14001d645
lea rcx, [rcx + rcx*2]
shl rcx, 4
cmp dword [rbp + 0x8c], 0
je 0x14001d5ec
subss xmm6, dword [rax + rcx + 0x28]
ucomiss xmm6, dword [0x14040d534]
movss xmm0, dword [0x14040d580]
ja 0x14001d5e7
ucomiss xmm6, dword [0x14035c3d8]
movss xmm0, dword [0x14040d4dc]
jae 0x14001d5ec
addss xmm13, xmm0
lea r8, [rax + rcx]
movss xmm0, dword [rax + rcx + 4]
mulss xmm0, xmm15
mov r8d, dword [r8]
test r8b, 2
je 0x14001dce3
movss xmm8, dword [rax + rcx + 8]
mulss xmm8, xmm15
movaps xmm2, xmm13
movaps xmm13, xmm8
addss xmm13, xmm2
movss xmm1, dword [rbx + 8]
ucomiss xmm13, xmm1
jbe 0x14001d9a1
xorps xmm8, xmm8
movaps xmm13, xmm2
jmp 0x14001dce3
mov rcx, r12
call fcn.140031c70
mov edi, dword [rbp + 0xb0]
cmp dword [r12], edi
jle 0x14001d66f
movsxd rax, edi
mov rcx, qword [r12 + 8]
movss xmm0, dword [rcx + rax*4]
movss xmm1, dword [0x14040d580]
ucomiss xmm1, xmm0
jne 0x14001d96e
mov dword [rbp + 0x60], 0
mov rcx, qword [r12 + 0x48]
movsxd rax, dword [rcx + 0x68]
test rax, rax
je 0x14001d96b
mov qword [rbp + 0x58], r14
mov rbx, qword [rcx + 0x70]
mov rcx, rax
shl rcx, 7
lea r14, [rcx + rax*8]
add r14, rbx
jmp 0x14001d6ac
add rbx, 0x88
cmp rbx, r14
je 0x14001d6c5
cmp qword [rbx + 0x78], r12
jne 0x14001d6a0
mov rcx, qword [rbx + 0x48]
mov edx, edi
lea r8, [rbp + 0x60]
call fcn.140053f90
test al, al
je 0x14001d6a0
movss xmm0, dword [rbp + 0x60]
mov rbx, qword [rbp + 0x1d8]
mov r14, qword [rbp + 0x58]
jmp 0x14001d96e
mov dword [rbp + 0x84], 0
xor eax, eax
mov qword [rbp + 0xa0], rax
mov dword [rbp + 0x90], 0
movss dword [rbp + 0x34], xmm13
mov qword [rbp - 0x50], r15
movss dword [rbp + 0x2c], xmm15
mov qword [rbp - 0x48], r12
movaps xmmword [rbp - 0x30], xmm11
movaps xmmword [rbp - 0x20], xmm10
movss dword [rbp + 0x30], xmm14
mov qword [rbp + 0x58], r14
movss dword [rbp + 0xac], xmm9
jmp 0x14001d759
call fcn.14015511c
mov rax, qword [rbp + 0xa0]
cmp eax, 3
lea eax, [rax + 1]
setb cl
add dword [rbp + 0x84], 8
mov qword [rbp + 0xa0], rax
test byte [rbp + 0x88], cl
je 0x14001d938
mov r13, qword [rbp + 0x98]
movzx eax, word [r13]
lea rcx, [rbp + 0x63]
mov qword [rcx + 5], 0
mov qword [rcx], 0
mov word [rbp + 0x60], ax
mov byte [rbp + 0x62], 0
mov qword [rbp + 0x70], 2
mov qword [rbp + 0x78], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x10], 2
mov qword [rbp + 0x18], reloc.WS2_32.dll_ntohs
movzx eax, word [rbp + 0x60]
mov word [rbp], ax
movzx eax, byte [rbp + 0x62]
mov byte [rbp + 2], al
mov rax, qword [rbp + 0x63]
mov qword [rbp + 3], rax
mov eax, dword [rbp + 0x6b]
mov dword [rbp + 0xb], eax
movzx eax, byte [rbp + 0x6f]
mov byte [rbp + 0xf], al
call fcn.140193868
mov rdi, rax
cmp qword [rbp + 0x18], 0x10
mov rbx, rbp
jb 0x14001d7da
mov rbx, qword [rbp]
mov dword [rdi], 0
mov rcx, rbx
lea rdx, [rbp - 0x58]
mov r8d, reloc.WS2_32.dll_recv
call fcn.14019dc10
cmp rbx, qword [rbp - 0x58]
je 0x14001d916
cmp dword [rdi], 0x22
je 0x14001d927
mov esi, eax
mov rax, qword [rbp + 0x18]
cmp rax, 0x10
jb 0x14001d846
mov rcx, qword [rbp]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14001d841
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14001ddbb
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.14015511c
mov ecx, dword [rbp + 0x28]
cmp ecx, esi
mov eax, esi
cmovb eax, ecx
cmp dword [rbp + 0xa0], 3
cmovne eax, esi
mov ecx, dword [rbp + 0x84]
shl eax, cl
or dword [rbp + 0x90], eax
add r13, 2
mov qword [rbp + 0x98], r13
mov al, 1
mov dword [rbp + 0x88], eax
mov rax, qword [rbp + 0x78]
cmp rax, 0x10
mov r15, qword [rbp - 0x50]
movss xmm15, dword [rbp + 0x2c]
mov r12, qword [rbp - 0x48]
mov r13d, dword [rbp + 0x200]
mov rbx, qword [rbp + 0x1d8]
movaps xmm11, xmmword [rbp - 0x30]
movss xmm12, dword [rbp + 0x1f0]
movaps xmm10, xmmword [rbp - 0x20]
movss xmm14, dword [rbp + 0x30]
mov r14, qword [rbp + 0x58]
movss xmm9, dword [rbp + 0xac]
xorps xmm8, xmm8
movss xmm13, dword [rbp + 0x34]
movss xmm6, dword [rbp + 0xb4]
jb 0x14001d72f
mov rcx, qword [rbp + 0x60]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14001d72a
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14001ddbb
add rax, 0x28
mov rdx, rax
mov rcx, r8
jmp 0x14001d72a
lea rcx, [0x14035fc28]
call fcn.1401506c0
jmp 0x14001ddc0
lea rcx, [0x14035fc3e]
call fcn.140150708
jmp 0x14001ddc0
test r13b, 2
jne 0x14001d986
mov edx, dword [rbp + 0x90]
movzx eax, dl
shl eax, 0x10
mov ecx, edx
shr ecx, 0x10
movzx ecx, cl
and edx, 0xff00ff00
or edx, eax
or edx, ecx
mov dword [rbp + 0x94], edx
mov rsi, qword [rbp + 0x98]
jmp 0x14001d978
xorps xmm0, xmm0
mulss xmm0, xmm15
addss xmm13, xmm0
cmp rsi, r14
jb 0x14001d356
jmp 0x14001dcf9
mov ecx, dword [rbp + 0x90]
shr ecx, 0x18
lea rax, [rbp + 0x97]
mov byte [rax], cl
mov rsi, qword [rbp + 0x98]
jmp 0x14001d978
movss dword [rbp + 0xac], xmm9
movaps xmm7, xmm14
movss xmm14, dword [rax + rcx + 0x10]
mulss xmm14, xmm15
movaps xmm9, xmm14
movaps xmm3, xmm2
addss xmm9, xmm2
movss xmm2, dword [rbx]
ucomiss xmm9, xmm2
jae 0x14001d9ea
movaps xmm14, xmm7
movss xmm9, dword [rbp + 0xac]
xorps xmm8, xmm8
movaps xmm13, xmm3
jmp 0x14001dce3
movaps xmmword [rbp - 0x30], xmm11
mov r9d, dword [rbp + 0x94]
movaps xmm4, xmm10
movss xmm10, dword [rax + rcx + 0xc]
mulss xmm10, xmm15
movaps xmm12, xmm10
addss xmm12, xmm4
movss xmm11, dword [rax + rcx + 0x14]
mulss xmm11, xmm15
movaps xmm5, xmm11
movaps xmmword [rbp - 0x20], xmm4
addss xmm5, xmm4
movss xmm4, dword [rax + rcx + 0x18]
movss dword [rbp + 0xa0], xmm4
movss xmm4, dword [rax + rcx + 0x1c]
movss dword [rbp + 0x98], xmm4
movss xmm4, dword [rax + rcx + 0x20]
movss xmm6, dword [rax + rcx + 0x24]
movss dword [rbp + 0xb4], xmm6
cmp byte [rbp + 0x1f8], 0
je 0x14001daaa
ucomiss xmm13, xmm2
jae 0x14001dae1
movaps xmm13, xmm2
subss xmm13, xmm9
subss xmm14, xmm8
divss xmm13, xmm14
addss xmm13, dword [0x14040d4dc]
movaps xmm6, xmm4
movaps xmm8, xmm4
movss xmm4, dword [rbp + 0xa0]
subss xmm8, xmm4
mulss xmm8, xmm13
addss xmm4, xmm8
movss dword [rbp + 0xa0], xmm4
jmp 0x14001dae8
movaps xmm1, xmm9
movaps xmm8, xmm12
movaps xmm2, xmm13
movaps xmm11, xmmword [rbp - 0x30]
movss xmm12, dword [rbp + 0x1f0]
movaps xmm10, xmmword [rbp - 0x20]
movaps xmm14, xmm7
movaps xmm13, xmm3
movss xmm3, dword [rbp + 0xa0]
movaps xmm6, xmm4
jmp 0x14001dbe4
movaps xmm2, xmm13
movaps xmm6, xmm4
movss xmm8, dword [rbx + 4]
ucomiss xmm12, xmm8
movaps xmm14, xmm7
movaps xmm13, xmm3
jae 0x14001db42
movaps xmm12, xmm8
subss xmm12, xmm5
subss xmm11, xmm10
divss xmm12, xmm11
addss xmm12, dword [0x14040d4dc]
movss xmm10, dword [rbp + 0xb4]
movss xmm3, dword [rbp + 0x98]
subss xmm10, xmm3
mulss xmm10, xmm12
addss xmm3, xmm10
movss dword [rbp + 0x98], xmm3
jmp 0x14001db46
movaps xmm8, xmm12
movss xmm3, dword [rbp + 0xa0]
ucomiss xmm9, xmm1
movaps xmm11, xmmword [rbp - 0x30]
movss xmm12, dword [rbp + 0x1f0]
jbe 0x14001db84
movaps xmm10, xmm1
subss xmm10, xmm2
subss xmm9, xmm2
subss xmm6, xmm3
mulss xmm6, xmm10
divss xmm6, xmm9
addss xmm6, xmm3
jmp 0x14001db88
movaps xmm1, xmm9
movss xmm9, dword [rbx + 0xc]
ucomiss xmm5, xmm9
jbe 0x14001dbd1
movaps xmm10, xmm9
subss xmm10, xmm8
subss xmm5, xmm8
movss xmm4, dword [rbp + 0xb4]
movss xmm7, dword [rbp + 0x98]
subss xmm4, xmm7
mulss xmm4, xmm10
divss xmm4, xmm5
addss xmm4, xmm7
movss dword [rbp + 0xb4], xmm4
movaps xmm5, xmm9
jmp 0x14001dbd5
movaps xmm9, xmm5
ucomiss xmm8, xmm9
movaps xmm10, xmmword [rbp - 0x20]
jae 0x14001dcd1
mov edx, r9d
or edx, 0xffffff
test r8b, 1
cmove edx, r9d
test r13b, 2
cmovne edx, r9d
mov r9, qword [rbp + 0x48]
mov r10, qword [rbp + 0x50]
mov word [r9], r10w
lea r8d, [r10 + 1]
mov word [r9 + 2], r8w
lea r8d, [r10 + 2]
mov word [r9 + 4], r8w
mov word [r9 + 6], r10w
mov word [r9 + 8], r8w
lea r8d, [r10 + 3]
mov word [r9 + 0xa], r8w
mov r8, qword [rbp + 0x40]
movss dword [r8], xmm2
movss dword [r8 + 4], xmm8
mov dword [r8 + 0xc], edx
movss dword [r8 + 0x10], xmm3
movss xmm4, dword [rbp + 0x98]
movss dword [r8 + 0x14], xmm4
movss dword [r8 + 0x18], xmm1
movss dword [r8 + 0x1c], xmm8
mov dword [r8 + 0x24], edx
movss dword [r8 + 0x28], xmm6
movss dword [r8 + 0x2c], xmm4
movss dword [r8 + 0x30], xmm1
movss dword [r8 + 0x34], xmm5
mov dword [r8 + 0x3c], edx
movss dword [r8 + 0x40], xmm6
movss xmm1, dword [rbp + 0xb4]
movss dword [r8 + 0x44], xmm1
movss dword [r8 + 0x48], xmm2
movss dword [r8 + 0x4c], xmm5
mov dword [r8 + 0x54], edx
movss dword [r8 + 0x58], xmm3
movss dword [r8 + 0x5c], xmm1
add r8, 0x60
mov qword [rbp + 0x40], r8
add r10d, 4
mov qword [rbp + 0x50], r10
add r9, 0xc
mov qword [rbp + 0x48], r9
mov edx, dword [rbp + 0xb0]
jmp 0x14001dcd6
addss xmm13, xmm0
movss xmm9, dword [rbp + 0xac]
xorps xmm8, xmm8
addss xmm13, xmm0
movss xmm6, dword [rax + rcx + 0x2c]
mov dword [rbp + 0x8c], edx
jmp 0x14001d978
mov r8, qword [rbp + 0x40]
mov rax, r8
sub rax, qword [r15 + 0x28]
shr rax, 3
imul eax, eax, 0xaaaaaaab
mov dword [r15 + 0x20], eax
mov r9, qword [rbp + 0x48]
mov rax, r9
sub rax, qword [r15 + 0x18]
shr rax, 1
mov dword [r15 + 0x10], eax
mov ecx, dword [rbp + 0x20]
add ecx, dword [rbp + 0x24]
sub eax, ecx
movsxd rcx, dword [r15]
shl rcx, 6
mov rdx, qword [r15 + 8]
add dword [rcx + rdx - 0x20], eax
mov qword [r15 + 0x50], r8
mov qword [r15 + 0x58], r9
mov rax, qword [rbp + 0x50]
mov dword [r15 + 0x48], eax
movaps xmm6, xmmword [rbp + 0xc0]
movaps xmm7, xmmword [rbp + 0xd0]
movaps xmm8, xmmword [rbp + 0xe0]
movaps xmm9, xmmword [rbp + 0xf0]
movaps xmm10, xmmword [rbp + 0x100]
movaps xmm11, xmmword [rbp + 0x110]
movaps xmm12, xmmword [rbp + 0x120]
movaps xmm13, xmmword [rbp + 0x130]
movaps xmm14, xmmword [rbp + 0x140]
movaps xmm15, xmmword [rbp + 0x150]
add rsp, 0x1e8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov r14, rdi
cmp rsi, r14
jne 0x14001d2db
jmp 0x14001dd4b
call fcn.140192f04
int3