Function at 0x14001c1a0
Capabilities:
Access peb ldr_data

Disassembly:
mov r11, rsp
push rbx
sub rsp, 0x110
movaps xmmword [r11 - 0x48], xmm7
mov rax, qword [0x1400bb040]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov rax, qword gs:[0x58]
mov qword [r11 + 8], rbp
mov qword [r11 + 0x10], rsi
mov qword [r11 + 0x18], rdi
mov rsi, qword [rax]
mov qword [r11 - 0x10], r12
mov qword [r11 - 0x18], r13
mov qword [r11 - 0x28], r15
movaps xmmword [r11 - 0x38], xmm6
movaps xmmword [r11 - 0x58], xmm8
movaps xmmword [r11 - 0x68], xmm9
mov eax, 8
movaps xmmword [rsp + 0x70], xmm13
movaps xmmword [rsp + 0x60], xmm14
movaps xmmword [rsp + 0x50], xmm15
cmp byte [rax + rsi], 0
mov r15d, eax
jne 0x14001c217
call fcn.140082398
mov eax, 0x10
mov qword [rsp + 0xf8], r14
mov r12d, eax
mov rbx, qword [rax + rsi]
mov ebp, dword [rbx + 8]
mov rdi, qword [rbx + 0x4ca8]
test bpl, 2
je 0x14001c246
test byte [rbx + 0xc], 1
je 0x14001c246
mov r14b, 1
jmp 0x14001c249
xor r14b, r14b
and bpl, 1
movaps xmmword [rsp + 0x80], xmm12
xor r13d, r13d
cmp byte [rbx + 0x4d3a], r13b
je 0x14001c294
test rdi, rdi
je 0x14001c294
test byte [rbx + 0x61fc], 8
je 0x14001c282
mov edx, dword [rbx + 0x4d48]
lea rcx, str._nav__NavMoveRequestForward__d_n
call fcn.14002cab0
xorps xmm6, xmm6
mov r12d, 0x10
xorps xmm12, xmm12
jmp 0x14001c49c
mov dword [rbx + 0x4d48], 0xffffffff
mov qword [rbx + 0x4d3c], r13
test rdi, rdi
je 0x14001c456
cmp qword [rbx + 0x4e88], r13
jne 0x14001c456
test dword [rdi + 0x14], 0x10000
jne 0x14001c456
cmp byte [r15 + rsi], r13b
jne 0x14001c2d3
call fcn.140082398
mov rax, qword [r12 + rsi]
test byte [rax + 0x4a80], 1
jne 0x14001c323
test r14b, r14b
je 0x14001c2fe
mov edx, 0xffffffff
mov ecx, 0x27d
mov r8d, 5
call fcn.140014660
test al, al
jne 0x14001c31c
test bpl, bpl
je 0x14001c323
mov edx, 0xffffffff
mov ecx, 0x201
mov r8d, 5
call fcn.140014660
test al, al
je 0x14001c323
mov dword [rbx + 0x4d48], r13d
cmp byte [r15 + rsi], r13b
jne 0x14001c32e
call fcn.140082398
mov r12d, 0x10
mov rcx, qword [r12 + rsi]
mov eax, dword [rcx + 0x4a80]
shr eax, 1
test al, 1
jne 0x14001c38a
test r14b, r14b
je 0x14001c362
mov edx, 0xffffffff
mov ecx, 0x27e
mov r8d, 5
call fcn.140014660
test al, al
jne 0x14001c380
test bpl, bpl
je 0x14001c38a
mov edx, 0xffffffff
mov ecx, 0x202
mov r8d, 5
call fcn.140014660
test al, al
je 0x14001c38a
mov dword [rbx + 0x4d48], 1
mov r15d, 8
cmp byte [r15 + rsi], r13b
jne 0x14001c39b
call fcn.140082398
mov rcx, qword [r12 + rsi]
mov eax, dword [rcx + 0x4a80]
shr eax, 2
test al, 1
jne 0x14001c3f2
test r14b, r14b
je 0x14001c3ca
mov edx, 0xffffffff
mov ecx, 0x27f
mov r8d, 5
call fcn.140014660
test al, al
jne 0x14001c3e8
test bpl, bpl
je 0x14001c3f2
mov edx, 0xffffffff
mov ecx, 0x203
mov r8d, 5
call fcn.140014660
test al, al
je 0x14001c3f2
mov dword [rbx + 0x4d48], 2
cmp byte [r15 + rsi], r13b
jne 0x14001c3fd
call fcn.140082398
mov rcx, qword [r12 + rsi]
mov eax, dword [rcx + 0x4a80]
shr eax, 3
test al, 1
jne 0x14001c45c
test r14b, r14b
je 0x14001c42c
mov edx, 0xffffffff
mov ecx, 0x280
mov r8d, 5
call fcn.140014660
test al, al
jne 0x14001c44a
test bpl, bpl
je 0x14001c45c
mov edx, 0xffffffff
mov ecx, 0x204
mov r8d, 5
call fcn.140014660
test al, al
je 0x14001c45c
mov dword [rbx + 0x4d48], 3
jmp 0x14001c45c
mov r12d, 0x10
mov eax, dword [rbx + 0x4d48]
xorps xmm6, xmm6
mov dword [rbx + 0x4d50], eax
xorps xmm12, xmm12
mov dword [rbx + 0x4d64], 0x7f7fffff
mov dword [rbx + 0x4d68], 0x7f7fffff
mov dword [rbx + 0x4d6c], 0xff7fffff
mov dword [rbx + 0x4d70], 0xff7fffff
test rdi, rdi
je 0x14001c4ed
cmp dword [rbx + 0x4d48], 0xffffffff
jne 0x14001c4ed
test bpl, bpl
je 0x14001c4ed
call fcn.14001d250
movaps xmm12, xmm0
ucomiss xmm12, xmm6
jp 0x14001c4bb
je 0x14001c4ed
movups xmm1, xmmword [rdi + 0x238]
movups xmmword [rbx + 0x4d64], xmm1
addss xmm0, dword [rbx + 0x4d68]
movaps xmm1, xmm12
addss xmm1, dword [rbx + 0x4d70]
movss dword [rbx + 0x4d68], xmm0
movss dword [rbx + 0x4d70], xmm1
mov ecx, dword [rbx + 0x4d48]
mov byte [rbx + 0x4d3a], r13b
cmp ecx, 0xffffffff
je 0x14001c518
mov r9d, dword [rbx + 0x4d40]
mov r8d, dword [rbx + 0x4d3c]
mov edx, dword [rbx + 0x4d50]
call fcn.14001ac30
cmp byte [rbx + 0x4d38], r13b
je 0x14001c56f
cmp dword [rbx + 0x4cb0], r13d
jne 0x14001c56f
test byte [rbx + 0x61fc], 8
je 0x14001c558
test rdi, rdi
je 0x14001c53e
mov rdx, qword [rdi + 8]
jmp 0x14001c545
lea rdx, str._NULL_
mov r8d, dword [rbx + 0x4ce0]
lea rcx, str._nav__NavInitRequest:_from_move__window___s___layer_d_n
call fcn.14002cab0
mov word [rbx + 0x4cf5], 0x101
mov dword [rbx + 0x4d00], r13d
mov byte [rbx + 0x4cf2], r13b
movss xmm14, dword [0x1400adcd4]
movss xmm13, dword [0x1400adeb8]
movss xmm15, dword [0x1400add1c]
movaps xmmword [rsp + 0xa0], xmm10
movaps xmmword [rsp + 0x90], xmm11
cmp byte [rbx + 0x4d38], r13b
je 0x14001c81b
cmp dword [rbx + 0x4cdc], 3
jne 0x14001c81b
cmp dword [rbx + 0x4ce0], r13d
jne 0x14001c81b
test rdi, rdi
je 0x14001c81b
mov esi, dword [rbx + 0x4d3c]
lea rcx, [rsp + 0x30]
movss xmm10, dword [rdi + 0x240]
mov ebp, esi
movss xmm11, dword [rdi + 0x244]
addss xmm10, xmm15
movss xmm8, dword [rdi + 0x238]
addss xmm11, xmm15
movss xmm9, dword [rdi + 0x23c]
subss xmm8, xmm15
movss xmm6, dword [rdi + 0x150]
subss xmm9, xmm15
movss xmm7, dword [rdi + 0x154]
mov rdx, rdi
and esi, 0xa
call fcn.1400181f0
subss xmm8, xmm6
subss xmm9, xmm7
subss xmm10, xmm6
movss xmm0, dword [rax]
subss xmm11, xmm7
movss xmm1, dword [rax + 4]
subss xmm0, dword [rdi + 0xc0]
subss xmm1, dword [rdi + 0xc4]
addss xmm8, xmm0
addss xmm9, xmm1
addss xmm10, xmm0
addss xmm11, xmm1
and ebp, 5
je 0x14001c67a
test esi, esi
jne 0x14001c81b
movsxd rax, dword [rbx + 0x4ce0]
add rax, rax
movss xmm0, dword [rdi + rax*8 + 0x3f8]
comiss xmm0, xmm8
jb 0x14001c6c5
movss xmm0, dword [rdi + rax*8 + 0x3fc]
comiss xmm0, xmm9
jb 0x14001c6c5
comiss xmm10, dword [rdi + rax*8 + 0x400]
jb 0x14001c6c5
comiss xmm11, dword [rdi + rax*8 + 0x404]
jb 0x14001c6c5
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
jmp 0x14001c82c
test byte [rbx + 0x61fc], 8
je 0x14001c6da
lea rcx, str._nav__NavMoveRequest:_clamp_NavRectRel_for_gamepad_move_n
call fcn.14002cab0
mov rax, qword [rdi]
movaps xmm1, xmm10
subss xmm1, xmm8
movss xmm0, dword [rax + 0x3e84]
mulss xmm0, dword [rdi + 0x2d0]
mov rax, qword [rdi + 0x3b0]
mulss xmm0, dword [rdi + 0x2d4]
movaps xmm2, xmm0
test rax, rax
je 0x14001c71d
mulss xmm2, dword [rax + 0x2d0]
mulss xmm0, dword [rax + 0x2d0]
movss xmm3, dword [0x1400adf00]
mulss xmm2, xmm14
mulss xmm0, xmm14
minss xmm1, xmm2
movaps xmm2, xmm11
subss xmm2, xmm9
minss xmm2, xmm0
test ebp, ebp
jne 0x14001c750
addss xmm8, xmm1
subss xmm10, xmm1
jmp 0x14001c758
movaps xmm8, xmm3
movaps xmm10, xmm13
test esi, esi
jne 0x14001c768
addss xmm9, xmm2
subss xmm11, xmm2
jmp 0x14001c770
movaps xmm9, xmm3
movaps xmm11, xmm13
movsxd rax, dword [rbx + 0x4ce0]
add rax, rax
movss xmm0, dword [rdi + rax*8 + 0x3fc]
comiss xmm9, xmm0
jbe 0x14001c78f
movaps xmm1, xmm9
jmp 0x14001c797
movaps xmm1, xmm11
minss xmm1, xmm0
movss xmm2, dword [rdi + rax*8 + 0x3f8]
comiss xmm8, xmm2
jbe 0x14001c7ac
movaps xmm0, xmm8
jmp 0x14001c7b4
movaps xmm0, xmm10
minss xmm0, xmm2
movss dword [rdi + rax*8 + 0x3f8], xmm0
movss dword [rdi + rax*8 + 0x3fc], xmm1
movss xmm0, dword [rdi + rax*8 + 0x404]
comiss xmm9, xmm0
ja 0x14001c7de
movaps xmm9, xmm11
minss xmm9, xmm0
movss xmm0, dword [rdi + rax*8 + 0x400]
comiss xmm8, xmm0
ja 0x14001c7f6
movaps xmm8, xmm10
minss xmm8, xmm0
xorps xmm0, xmm0
movss dword [rdi + rax*8 + 0x400], xmm8
movss dword [rdi + rax*8 + 0x404], xmm9
movups xmmword [rsp + 0x30], xmm0
mov dword [rbx + 0x4cb0], r13d
jmp 0x14001c82c
xorps xmm2, xmm2
movups xmmword [rsp + 0x30], xmm2
test rdi, rdi
je 0x14001ca10
movsxd rsi, dword [rbx + 0x4ce0]
mov rax, rsi
add rax, rax
movss xmm0, dword [rdi + rax*8 + 0x3f8]
comiss xmm0, dword [rdi + rax*8 + 0x400]
ja 0x14001c869
movss xmm0, dword [rdi + rax*8 + 0x3fc]
comiss xmm0, dword [rdi + rax*8 + 0x404]
ja 0x14001c869
movups xmm0, xmmword [rdi + rax*8 + 0x3f8]
jmp 0x14001c86c
xorps xmm0, xmm0
lea rax, [rsp + 0x20]
movss xmm9, dword [rdi + 0x150]
movaps xmm8, xmm9
movss xmm7, dword [rdi + 0x154]
movaps xmm6, xmm7
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax]
addss xmm8, xmm1
movaps xmm0, xmm1
shufps xmm0, xmm1, 0xaa
addss xmm9, xmm0
movaps xmm0, xmm1
shufps xmm0, xmm1, 0x55
addss xmm6, xmm0
shufps xmm1, xmm1, 0xff
addss xmm7, xmm1
movss dword [rsp + 0x30], xmm8
movss dword [rsp + 0x38], xmm9
addss xmm6, xmm12
addss xmm7, xmm12
movss dword [rsp + 0x34], xmm6
movss dword [rsp + 0x3c], xmm7
cmp byte [rbx + 0x4d38], r13b
je 0x14001ca09
mov rax, qword gs:[0x58]
mov r15d, dword [rbx + 0x4d3c]
mov ebp, dword [rbx + 0x4d48]
mov rdi, qword [rdi + 0x3e0]
mov r14, qword [rax]
mov eax, 8
cmp byte [rax + r14], r13b
jne 0x14001c916
call fcn.140082398
mov eax, r12d
mov rcx, qword [rax + r14]
mov rax, qword [rcx + 0x4ca8]
movss xmm1, dword [rax + 0x150]
movss xmm2, dword [rax + 0x154]
test r15b, r15b
js 0x14001c98f
movss xmm0, dword [rdi + rsi*8 + 0x418]
ucomiss xmm0, xmm13
jp 0x14001c965
jne 0x14001c965
movaps xmm0, xmm8
addss xmm0, xmm15
minss xmm0, xmm9
subss xmm0, xmm1
movss dword [rdi + rsi*8 + 0x418], xmm0
movss xmm0, dword [rdi + rsi*8 + 0x41c]
ucomiss xmm0, xmm13
jp 0x14001c98f
jne 0x14001c98f
movaps xmm0, xmm7
addss xmm0, xmm6
mulss xmm0, xmm14
subss xmm0, xmm2
movss dword [rdi + rsi*8 + 0x41c], xmm0
lea eax, [rbp - 2]
cmp eax, 1
ja 0x14001c9ce
movss xmm0, dword [rdi + rsi*8 + 0x418]
ucomiss xmm0, xmm13
jp 0x14001c9a8
je 0x14001c9ce
movups xmm2, xmmword [rsp + 0x30]
movaps xmm8, xmm0
addss xmm8, xmm1
shufps xmm2, xmm2, 0xd2
movss xmm2, xmm8
movaps xmm9, xmm8
shufps xmm2, xmm2, 0xc9
movss xmm2, xmm8
jmp 0x14001ca2b
cmp ebp, 1
ja 0x14001ca09
movss xmm0, dword [rdi + rsi*8 + 0x41c]
ucomiss xmm0, xmm13
jp 0x14001c9e4
je 0x14001ca09
movaps xmm6, xmm0
addss xmm6, xmm2
movups xmm2, xmmword [rsp + 0x30]
shufps xmm2, xmm2, 0x93
movss xmm2, xmm6
movaps xmm7, xmm6
shufps xmm2, xmm2, 0x36
movss xmm2, xmm6
shufps xmm2, xmm2, 0xe1
jmp 0x14001ca2b
movups xmm2, xmmword [rsp + 0x30]
jmp 0x14001ca2b
xorps xmm7, xmm7
xorps xmm9, xmm9
xorps xmm6, xmm6
shufps xmm7, xmm2, 0xff
shufps xmm9, xmm2, 0xaa
xorps xmm8, xmm8
shufps xmm6, xmm2, 0x55
movaps xmm15, xmmword [rsp + 0x50]
movaps xmm14, xmmword [rsp + 0x60]
movaps xmm13, xmmword [rsp + 0x70]
movaps xmm12, xmmword [rsp + 0x80]
movaps xmm11, xmmword [rsp + 0x90]
movaps xmm10, xmmword [rsp + 0xa0]
mov r15, qword [rsp + 0xf0]
mov r14, qword [rsp + 0xf8]
mov r13, qword [rsp + 0x100]
mov r12, qword [rsp + 0x108]
mov rdi, qword [rsp + 0x130]
mov rsi, qword [rsp + 0x128]
mov rbp, qword [rsp + 0x120]
movups xmmword [rbx + 0x4d54], xmm2
movss xmm0, dword [rbx + 0x4d64]
comiss xmm0, xmm8
jbe 0x14001caae
movss dword [rbx + 0x4d64], xmm8
movss xmm0, dword [rbx + 0x4d68]
comiss xmm0, xmm6
movaps xmm8, xmmword [rsp + 0xc0]
jbe 0x14001cacc
movss dword [rbx + 0x4d68], xmm6
comiss xmm9, dword [rbx + 0x4d6c]
movaps xmm6, xmmword [rsp + 0xe0]
jbe 0x14001cae7
movss dword [rbx + 0x4d6c], xmm9
comiss xmm7, dword [rbx + 0x4d70]
movaps xmm9, xmmword [rsp + 0xb0]
jbe 0x14001cb01
movss dword [rbx + 0x4d70], xmm7
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.1400820c0
movaps xmm7, xmmword [rsp + 0xd0]
add rsp, 0x110
pop rbx
ret