Function at 0x140051920
Capabilities:
Access peb ldr_data

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xe0
movaps xmmword [rax - 0x38], xmm6
mov r14, rcx
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
mov rax, qword gs:[0x58]
movaps xmmword [rsp + 0x70], xmm12
mov r12d, 8
movaps xmmword [rsp + 0x60], xmm13
mov rbp, qword [rax]
movaps xmmword [rsp + 0x50], xmm14
cmp byte [r12 + rbp], 0
jne 0x140051991
call fcn.140066538
cmp byte [r12 + rbp], 0
mov r13d, 0x10
mov rsi, qword [rbp + r13]
movss xmm0, dword [rsi + 0x3e80]
mov r15, qword [rsi + 0x4148]
movaps xmm9, xmm0
subss xmm9, dword [0x140090ce0]
movss xmm8, dword [rsi + 0x3a40]
addss xmm8, xmm8
movss xmm13, dword [r15 + 0x140]
movss xmm14, dword [r15 + 0x144]
movaps xmm10, xmm9
addss xmm10, xmm9
addss xmm8, xmm0
movups xmm0, xmmword [rsi + 0x3ae8]
movups xmmword [rsp + 0x20], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [0x140090c7c]
movss dword [rsp + 0x2c], xmm0
jne 0x140051a10
call fcn.140066538
mov rbx, qword [rbp + r13]
lea rdx, [rsp + 0x30]
xor edi, edi
mov dword [rsp + 0x30], edi
movups xmm0, xmmword [rbx + 0x3ae8]
lea rcx, [rbx + 0x4b98]
movups xmmword [rsp + 0x34], xmm0
call fcn.14002cb60
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [rbx + 0x3ae8], xmm0
cmp byte [r12 + rbp], dil
jne 0x140051a4f
call fcn.140066538
mov rbx, qword [rbp + r13]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x30], 0x15
movups xmm0, xmmword [rbx + 0x3c38]
lea rcx, [rbx + 0x4b98]
movups xmmword [rsp + 0x34], xmm0
call fcn.14002cb60
mov qword [rbx + 0x3c38], rdi
lea rcx, [0x14008d6e4]
mov qword [rbx + 0x3c40], rdi
movaps xmm7, xmm9
movss xmm11, dword [rsi + 0x78]
xor edx, edx
movss xmm12, dword [rsi + 0x7c]
mov dword [rsi + 0x78], 0x3e800000
mov dword [rsi + 0x7c], 0x3e4ccccd
movss xmm0, dword [r14 + 0x34]
movss xmm6, dword [r14 + 0x2c]
subss xmm0, xmm10
unpcklps xmm7, xmm8
movq r8, xmm7
maxss xmm6, xmm0
movss xmm0, dword [r14 + 0x30]
movss dword [r15 + 0x144], xmm0
movss dword [r15 + 0x140], xmm6
call fcn.140045bb0
movss xmm0, dword [r14 + 0x30]
addss xmm9, xmm6
movzx ebp, al
lea rcx, [0x14008d6e8]
mov ebx, 1
movss dword [r15 + 0x144], xmm0
xor ebp, 1
movq r8, xmm7
mov edx, ebx
dec ebp
movss dword [r15 + 0x140], xmm9
call fcn.140045bb0
lea ecx, [rbx + 1]
test al, al
je 0x140051b43
call fcn.140003a00
mov rcx, rdi
movss dword [rsi + 0x7c], xmm12
movss dword [rsi + 0x78], xmm11
jmp 0x140051b61
call fcn.140003a00
movss dword [rsi + 0x7c], xmm12
mov rcx, rdi
movss dword [rsi + 0x78], xmm11
mov ebx, ebp
test ebp, ebp
je 0x140051bf6
mov edx, dword [r14 + 0x18]
test edx, edx
je 0x140051bf6
mov r8d, dword [r14]
test r8d, r8d
jle 0x140051bf6
mov r11, qword [r14 + 8]
mov rax, r11
cmp dword [rax], edx
je 0x140051b91
inc edi
add rax, 0x38
cmp edi, r8d
jl 0x140051b80
jmp 0x140051bf6
movsxd rax, edi
imul rdx, rax, 0x38
lea rax, [rdx + r11]
test rax, rax
je 0x140051bf6
movabs rax, 0x4924924924924925
imul rdx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd r10, edx
lea eax, [rdx + rbx]
movsxd rdx, ebx
movsxd r9, eax
test eax, eax
js 0x140051bd4
mov rcx, r9
cmp eax, r8d
jl 0x140051bd7
mov rcx, r10
imul rcx, rcx, 0x38
add rcx, r11
test dword [rcx + 4], 0x200000
je 0x140051bf6
add r9, rdx
add r10, rdx
add eax, ebx
js 0x140051bf6
cmp eax, r8d
jl 0x140051bc8
addss xmm10, dword [0x140090cc0]
lea r11, [rsp + 0xe0]
movss dword [r15 + 0x140], xmm13
mov rbx, qword [r11 + 0x30]
mov rax, rcx
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movss dword [r15 + 0x144], xmm14
movss xmm0, dword [r14 + 0x34]
movaps xmm14, xmmword [rsp + 0x50]
subss xmm0, xmm10
movaps xmm10, xmmword [r11 - 0x50]
movss dword [r14 + 0x34], xmm0
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret