Function at 0x14004eed0
Capabilities:
Access peb ldr_data

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x14009c040]
xor rax, rsp
mov qword [rbp - 0x60], rax
mov rax, qword gs:[0x58]
mov rsi, r9
mov r13d, 8
mov r15, rcx
mov dword [rsp + 0x48], r8d
mov byte [rsp + 0x40], dl
mov r14, qword [rax]
mov qword [rsp + 0x60], rcx
cmp byte [r14 + r13], 0
jne 0x14004ef2e
call fcn.140066538
mov qword [rsp + 0x148], r12
movaps xmmword [rsp + 0x100], xmm6
movaps xmmword [rsp + 0xf0], xmm7
movaps xmmword [rsp + 0xe0], xmm8
mov edi, 0x10
movaps xmmword [rsp + 0xd0], xmm9
movaps xmmword [rsp + 0xb0], xmm11
mov rcx, qword [rdi + r14]
mov rax, qword [rcx + 0x4148]
mov byte [rax + 0xf5], 1
mov rbx, qword [rcx + 0x4148]
cmp byte [rbx + 0xf8], 0
jne 0x14004f69b
cmp byte [r14 + r13], 0
movaps xmmword [rsp + 0xc0], xmm10
jne 0x14004efa1
call fcn.140066538
movsxd rax, dword [rbx + 0x130]
xor edx, edx
mov r8, qword [rbx + 0x138]
mov rcx, r15
mov rdi, qword [rdi + r14]
mov r8d, dword [r8 + rax*4 - 4]
call fcn.140003000
mov rcx, qword [rbx]
mov r12d, eax
mov dword [rsp + 0x44], eax
cmp dword [rcx + 0x4194], eax
jne 0x14004efe3
mov r8, r15
mov edx, 0xb
mov ecx, eax
call fcn.14002c0d0
cmp byte [r14 + r13], 0
jne 0x14004efef
call fcn.140066538
mov r8d, 0x10
mov rcx, r15
mov r8, qword [r8 + r14]
cmp r15, 0xffffffffffffffff
jae 0x14004f01f
movzx edx, byte [rcx]
test dl, dl
je 0x14004f01f
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x14004f016
cmp byte [rax], dl
je 0x14004f01f
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x14004f002
movss xmm7, dword [r8 + 0x3e80]
xorps xmm11, xmm11
cmp r15, rcx
jne 0x14004f037
xorps xmm9, xmm9
jmp 0x14004f095
movss xmm0, dword [0x140090db0]
lea rdx, [rsp + 0x50]
movss xmm3, dword [0x140090d9c]
movaps xmm2, xmm7
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], rcx
mov rcx, qword [r8 + 0x3e78]
mov qword [rsp + 0x28], r15
movss dword [rsp + 0x20], xmm0
call fcn.14003be80
movss xmm0, dword [rsp + 0x50]
addss xmm0, dword [0x140090cb8]
movss xmm7, dword [rsp + 0x54]
cvttss2si eax, xmm0
movd xmm9, eax
cvtdq2ps xmm9, xmm9
movss xmm0, dword [rsi + 4]
ucomiss xmm0, xmm11
movss dword [rsp + 0x5c], xmm7
movss dword [rsp + 0x58], xmm9
jp 0x14004f0af
je 0x14004f0b2
movaps xmm7, xmm0
movss xmm6, dword [rsi]
ucomiss xmm6, xmm11
jp 0x14004f0c2
jne 0x14004f0c2
movaps xmm6, xmm9
movss xmm8, dword [rbx + 0x144]
lea rcx, [rsp + 0x50]
movss xmm10, dword [rbx + 0x140]
xorps xmm1, xmm1
movss dword [rbp - 0x74], xmm8
addss xmm8, dword [rbx + 0x178]
movss dword [rsp + 0x50], xmm6
movss dword [rsp + 0x54], xmm7
call fcn.1400168f0
mov ecx, dword [rsp + 0x48]
mov r13d, ecx
shr r13d, 1
and r13b, 1
je 0x14004f11e
movss xmm5, dword [rbx + 0x268]
movss xmm1, dword [rbx + 0x270]
jmp 0x14004f12a
movss xmm1, dword [rbx + 0x260]
movaps xmm5, xmm10
movss xmm0, dword [rsi]
ucomiss xmm0, xmm11
jp 0x14004f136
je 0x14004f13c
bt ecx, 0x18
jae 0x14004f148
subss xmm1, xmm5
movaps xmm6, xmm9
maxss xmm6, xmm1
movss dword [rsp + 0x68], xmm5
addss xmm6, xmm5
movss dword [rsp + 0x6c], xmm8
movaps xmm0, xmm10
movaps xmm10, xmmword [rsp + 0xc0]
movaps xmm9, xmm8
unpcklps xmm0, xmm8
addss xmm9, xmm7
movsd qword [rbp - 0x68], xmm0
movss dword [rbp - 0x78], xmm6
movss dword [rsp + 0x70], xmm6
movss dword [rbp - 0x74], xmm9
movss dword [rsp + 0x74], xmm9
bt ecx, 0x1a
jb 0x14004f20f
test r13b, r13b
je 0x14004f1a0
xorps xmm7, xmm7
jmp 0x14004f1a8
movss xmm7, dword [rdi + 0x3a4c]
movss xmm4, dword [rdi + 0x3a50]
movaps xmm0, xmm7
mulss xmm0, dword [0x140090c7c]
cvttss2si eax, xmm0
movaps xmm0, xmm4
mulss xmm0, dword [0x140090c7c]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
cvttss2si eax, xmm0
subss xmm7, xmm2
subss xmm5, xmm2
movd xmm3, eax
cvtdq2ps xmm3, xmm3
addss xmm7, xmm6
movss dword [rsp + 0x68], xmm5
subss xmm4, xmm3
subss xmm8, xmm3
movss dword [rsp + 0x70], xmm7
addss xmm4, xmm9
movss dword [rsp + 0x6c], xmm8
movss dword [rsp + 0x74], xmm4
movss xmm6, dword [rbx + 0x278]
movss xmm7, dword [rbx + 0x280]
test r13b, r13b
je 0x14004f23c
mov eax, dword [rbx + 0x268]
mov dword [rbx + 0x278], eax
mov eax, dword [rbx + 0x270]
mov dword [rbx + 0x280], eax
mov eax, ecx
xor r8d, r8d
shr eax, 3
lea rcx, [rsp + 0x68]
and al, 1
mov edx, r12d
movzx esi, al
mov r9d, esi
mov dword [rsp + 0x50], esi
shl r9d, 2
call fcn.140016a90
test r13b, r13b
je 0x14004f276
movss dword [rbx + 0x278], xmm6
movss dword [rbx + 0x280], xmm7
test al, al
je 0x14004f69b
mov r15d, dword [rdi + 0x4a90]
shr r15d, 2
and r15b, 1
test sil, sil
je 0x14004f2fa
test r15b, r15b
jne 0x14004f2fa
mov eax, 8
cmp byte [r14 + rax], r15b
jne 0x14004f2a7
call fcn.140066538
mov eax, 0x10
mov rsi, qword [rax + r14]
lea rdx, [rsi + 0x4a90]
mov ecx, dword [rdx]
mov eax, ecx
shr eax, 2
test al, 1
jne 0x14004f2e2
movss xmm0, dword [rsi + 0x3a00]
movss dword [rsi + 0x6000], xmm0
mulss xmm0, dword [rsi + 0x3a04]
movss dword [rsi + 0x3a00], xmm0
or ecx, 4
mov dword [rdx], ecx
lea rcx, [rsi + 0x4bd8]
call fcn.14002d180
inc word [rsi + 0x6004]
test r13b, r13b
je 0x14004f31f
cmp qword [rbx + 0x1e8], 0
je 0x14004f310
call fcn.140043fb0
jmp 0x14004f31f
cmp qword [rdi + 0x4f78], 0
je 0x14004f31f
call fcn.140042ec0
mov r8d, dword [rsp + 0x48]
mov ecx, r8d
shr ecx, 3
and ecx, 0x20000
mov edx, ecx
bts edx, 0x14
bt r8d, 0x1b
cmovae edx, ecx
mov ecx, edx
or ecx, 0x10
bt r8d, 0x16
cmovae ecx, edx
mov edx, ecx
bts edx, 7
bt r8d, 0x17
cmovae edx, ecx
mov ecx, edx
or ecx, 0x120
test r8b, 4
cmove ecx, edx
test r8b, 0x10
jne 0x14004f37a
test dword [rdi + 0x4abc], 0x200
je 0x14004f37e
bts ecx, 0xc
movzx eax, byte [rsp + 0x40]
lea r9, [rsp + 0x41]
mov dword [rsp + 0x20], ecx
lea r8, [rsp + 0x42]
lea rcx, [rsp + 0x68]
mov byte [rsp + 0x43], al
mov edx, r12d
call fcn.140044fc0
mov ecx, dword [rsp + 0x48]
movzx esi, al
movss xmm6, dword [rsp + 0x74]
movss xmm7, dword [rsp + 0x70]
movss xmm8, dword [rsp + 0x6c]
movss xmm9, dword [rsp + 0x68]
movzx r12d, byte [rsp + 0x42]
mov eax, dword [rsp + 0x44]
bt ecx, 0x15
jae 0x14004f3fd
mov edx, dword [rdi + 0x4cc8]
test edx, edx
je 0x14004f3fd
mov ecx, dword [rdi + 0x4a8c]
cmp dword [rdi + 0x4ccc], ecx
jne 0x14004f3f9
cmp edx, eax
jne 0x14004f3f9
mov sil, 1
mov byte [rsp + 0x40], sil
jmp 0x14004f415
mov ecx, dword [rsp + 0x48]
test sil, sil
jne 0x14004f415
test r12b, r12b
je 0x14004f4f3
bt ecx, 0x19
jae 0x14004f4ee
cmp byte [rdi + 0x4cf3], 0
jne 0x14004f493
cmp qword [rdi + 0x4ca8], rbx
jne 0x14004f493
mov edx, dword [rbx + 0x198]
cmp dword [rdi + 0x4ce0], edx
jne 0x14004f493
movss xmm2, dword [rbx + 0x150]
lea r9, [rsp + 0x78]
movss xmm3, dword [rbx + 0x154]
movaps xmm0, xmm9
mov r8d, dword [rdi + 0x4a8c]
subss xmm0, xmm2
movaps xmm1, xmm8
mov ecx, eax
subss xmm1, xmm3
movss dword [rsp + 0x78], xmm0
movaps xmm0, xmm7
subss xmm0, xmm2
movss dword [rsp + 0x7c], xmm1
movaps xmm1, xmm6
subss xmm1, xmm3
movss dword [rbp - 0x80], xmm0
movss dword [rbp - 0x7c], xmm1
call fcn.140019310
mov byte [rdi + 0x4cf2], 1
test sil, sil
je 0x14004f4dc
mov eax, 8
cmp byte [r14 + rax], 0
jne 0x14004f4a9
call fcn.140066538
mov eax, 0x10
mov rax, qword [rax + r14]
cmp word [rax + 0x6006], 0
jg 0x14004f4dc
mov ecx, dword [rax + 0x41ac]
cmp ecx, dword [rsp + 0x44]
je 0x14004f4cc
test ecx, ecx
jne 0x14004f4d5
mov word [rax + 0x41bc], 0x101
or dword [rax + 0x4ac0], 4
movzx eax, byte [rsp + 0x40]
cmp al, byte [rsp + 0x43]
je 0x14004f4ee
or dword [rdi + 0x4ac0], 8
test r12b, r12b
jne 0x14004f4fe
cmp byte [rsp + 0x40], 0
je 0x14004f58c
cmp byte [rsp + 0x41], 0
je 0x14004f511
test r12b, r12b
je 0x14004f511
mov ecx, 0x1a
jmp 0x14004f51c
xor ecx, ecx
test r12b, r12b
setne cl
add ecx, 0x18
movss xmm1, dword [0x140090cc0]
call fcn.140003820
mov r12d, eax
movss dword [rbp - 0x70], xmm7
mov eax, 8
movss dword [rbp - 0x6c], xmm6
movss dword [rsp + 0x78], xmm9
movss dword [rsp + 0x7c], xmm8
cmp byte [r14 + rax], 0
jne 0x14004f555
call fcn.140066538
mov eax, 0x10
lea r8, [rbp - 0x70]
mov dword [rsp + 0x28], 0
lea rdx, [rsp + 0x78]
mov r9d, r12d
movss dword [rsp + 0x20], xmm11
mov rcx, qword [rax + r14]
mov rcx, qword [rcx + 0x4148]
mov rcx, qword [rcx + 0x2e0]
call fcn.140038250
mov eax, dword [rsp + 0x44]
cmp dword [rdi + 0x4cb0], eax
jne 0x14004f5aa
mov r8d, 0xa
lea rcx, [rsp + 0x68]
mov edx, eax
call fcn.1400052c0
test r13b, r13b
je 0x14004f5cf
cmp qword [rbx + 0x1e8], 0
je 0x14004f5c0
call fcn.1400440a0
jmp 0x14004f5cf
cmp qword [rdi + 0x4f78], 0
je 0x14004f5cf
call fcn.140042fc0
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x68]
mov qword [rsp + 0x30], rcx
lea rax, [rdi + 0x3aa8]
mov qword [rsp + 0x28], rax
lea rdx, [rbp - 0x78]
lea rax, [rsp + 0x58]
xor r9d, r9d
lea rcx, [rbp - 0x68]
mov qword [rsp + 0x20], rax
call fcn.140004850
test sil, sil
je 0x14004f627
test dword [rbx + 0x14], 0x4000000
je 0x14004f627
test byte [rsp + 0x48], 1
jne 0x14004f627
test byte [rdi + 0x4abc], 0x20
jne 0x14004f627
call fcn.1400187a0
cmp byte [rsp + 0x50], 0
je 0x14004f695
test r15b, r15b
jne 0x14004f695
mov eax, 8
cmp byte [r14 + rax], r15b
jne 0x14004f643
call fcn.140066538
mov eax, 0x10
mov rdx, qword [rax + r14]
mov eax, dword [rdx + 0x4a90]
movsxd rcx, dword [rdx + 0x4bd8]
dec word [rdx + 0x6004]
shr eax, 2
test al, 1
lea eax, [rcx - 1]
mov dword [rdx + 0x4bd8], eax
mov rax, qword [rdx + 0x4be0]
mov r8d, dword [rax + rcx*4 - 8]
mov dword [rdx + 0x4a90], r8d
je 0x14004f695
test r8b, 4
jne 0x14004f695
mov eax, dword [rdx + 0x6000]
mov dword [rdx + 0x3a00], eax
movzx eax, sil
jmp 0x14004f69d
xor al, al
movaps xmm11, xmmword [rsp + 0xb0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm8, xmmword [rsp + 0xe0]
movaps xmm7, xmmword [rsp + 0xf0]
movaps xmm6, xmmword [rsp + 0x100]
mov r12, qword [rsp + 0x148]
mov rcx, qword [rbp - 0x60]
xor rcx, rsp
call fcn.1400664b0
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rbp
ret