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

Disassembly:
mov r11, rsp
push rbx
sub rsp, 0xd0
mov rax, qword [0x180060010]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rbx, qword [0x180060fa8]
mov qword [r11 + 8], rbp
mov qword [r11 + 0x10], rsi
mov qword [r11 + 0x18], rdi
mov ebp, dword [rbx + 8]
mov rdi, qword [rbx + 0x48b0]
mov qword [r11 + 0x20], r14
movaps xmmword [r11 - 0x18], xmm6
movaps xmmword [r11 - 0x38], xmm8
movaps xmmword [rsp + 0x40], xmm14
test bpl, 2
je 0x18001869c
test byte [rbx + 0xc], 1
je 0x18001869c
mov r10b, 1
jmp 0x18001869f
xor r10b, r10b
and bpl, 1
movaps xmmword [rsp + 0x50], xmm13
xor r14d, r14d
xorps xmm8, xmm8
cmp byte [rbx + 0x490a], r14b
je 0x1800186e3
test rdi, rdi
je 0x1800186e3
test byte [rbx + 0x5c9c], 8
lea rsi, [rbx + 0x4918]
je 0x1800186dc
mov edx, dword [rsi]
lea rcx, str._nav__NavMoveRequestForward__d_n
call fcn.18001be80
mov eax, dword [rsi]
jmp 0x180018aad
mov qword [rbx + 0x490c], r14
lea rsi, [rbx + 0x4918]
mov dword [rsi], 0xffffffff
test rdi, rdi
je 0x180018a8e
cmp qword [rbx + 0x4a18], r14
jne 0x180018a8e
test dword [rdi + 0x14], 0x40000
jne 0x180018a8e
test byte [rbx + 0x4740], 1
movss xmm5, dword [0x1800558b8]
movss xmm6, dword [0x1800558c4]
jne 0x1800187fe
test r10b, r10b
je 0x180018799
mov edx, 0x26f
mov rcx, rbx
call fcn.180012b70
cmp byte [rax], r14b
je 0x180018799
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x180018799
ucomiss xmm0, xmm8
jp 0x180018761
je 0x180018786
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x180018799
mov ecx, 0x26f
call fcn.180012d40
test eax, eax
jle 0x180018799
mov edx, 0xffffffff
mov ecx, 0x26f
call fcn.1800150b0
test al, al
jne 0x1800187fb
test bpl, bpl
je 0x1800187fe
mov edx, 0x201
mov rcx, rbx
call fcn.180012b70
cmp byte [rax], r14b
je 0x1800187fe
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x1800187fe
ucomiss xmm0, xmm8
jp 0x1800187c3
je 0x1800187e8
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x1800187fe
mov ecx, 0x201
call fcn.180012d40
test eax, eax
jle 0x1800187fe
mov edx, 0xffffffff
mov ecx, 0x201
call fcn.1800150b0
test al, al
je 0x1800187fe
mov dword [rsi], r14d
mov eax, dword [rbx + 0x4740]
shr eax, 1
test al, 1
jne 0x1800188d8
test r10b, r10b
je 0x180018870
mov edx, 0x270
mov rcx, rbx
call fcn.180012b70
cmp byte [rax], r14b
je 0x180018870
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x180018870
ucomiss xmm0, xmm8
jp 0x180018838
je 0x18001885d
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x180018870
mov ecx, 0x270
call fcn.180012d40
test eax, eax
jle 0x180018870
mov edx, 0xffffffff
mov ecx, 0x270
call fcn.1800150b0
test al, al
jne 0x1800188d2
test bpl, bpl
je 0x1800188d8
mov edx, 0x202
mov rcx, rbx
call fcn.180012b70
cmp byte [rax], r14b
je 0x1800188d8
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x1800188d8
ucomiss xmm0, xmm8
jp 0x18001889a
je 0x1800188bf
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x1800188d8
mov ecx, 0x202
call fcn.180012d40
test eax, eax
jle 0x1800188d8
mov edx, 0xffffffff
mov ecx, 0x202
call fcn.1800150b0
test al, al
je 0x1800188d8
mov dword [rsi], 1
mov eax, dword [rbx + 0x4740]
shr eax, 2
test al, 1
jne 0x1800189b3
test r10b, r10b
je 0x18001894b
mov edx, 0x271
mov rcx, rbx
call fcn.180012b70
cmp byte [rax], r14b
je 0x18001894b
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x18001894b
ucomiss xmm0, xmm8
jp 0x180018913
je 0x180018938
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x18001894b
mov ecx, 0x271
call fcn.180012d40
test eax, eax
jle 0x18001894b
mov edx, 0xffffffff
mov ecx, 0x271
call fcn.1800150b0
test al, al
jne 0x1800189ad
test bpl, bpl
je 0x1800189b3
mov edx, 0x203
mov rcx, rbx
call fcn.180012b70
cmp byte [rax], r14b
je 0x1800189b3
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x1800189b3
ucomiss xmm0, xmm8
jp 0x180018975
je 0x18001899a
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x1800189b3
mov ecx, 0x203
call fcn.180012d40
test eax, eax
jle 0x1800189b3
mov edx, 0xffffffff
mov ecx, 0x203
call fcn.1800150b0
test al, al
je 0x1800189b3
mov dword [rsi], 2
mov eax, dword [rbx + 0x4740]
shr eax, 3
test al, 1
jne 0x180018a8e
test r10b, r10b
je 0x180018a26
mov edx, 0x272
mov rcx, rbx
call fcn.180012b70
cmp byte [rax], r14b
je 0x180018a26
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x180018a26
ucomiss xmm0, xmm8
jp 0x1800189ee
je 0x180018a13
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x180018a26
mov ecx, 0x272
call fcn.180012d40
test eax, eax
jle 0x180018a26
mov edx, 0xffffffff
mov ecx, 0x272
call fcn.1800150b0
test al, al
jne 0x180018a88
test bpl, bpl
je 0x180018a8e
mov edx, 0x204
mov rcx, rbx
call fcn.180012b70
cmp byte [rax], r14b
je 0x180018a8e
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x180018a8e
ucomiss xmm0, xmm8
jp 0x180018a50
je 0x180018a75
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x180018a8e
mov ecx, 0x204
call fcn.180012d40
test eax, eax
jle 0x180018a8e
mov edx, 0xffffffff
mov ecx, 0x204
call fcn.1800150b0
test al, al
je 0x180018a8e
mov dword [rsi], 3
movaps xmm0, xmmword [0x180055db0]
xorps xmm13, xmm13
mov eax, dword [rsi]
mov dword [rbx + 0x4920], eax
movups xmmword [rbx + 0x4934], xmm0
test rdi, rdi
je 0x180018afe
xorps xmm13, xmm13
cmp eax, 0xffffffff
jne 0x180018afe
test bpl, bpl
je 0x180018afe
call fcn.1800195a0
movaps xmm13, xmm0
ucomiss xmm13, xmm8
jp 0x180018acc
je 0x180018afe
movups xmm1, xmmword [rdi + 0x1f8]
movups xmmword [rbx + 0x4934], xmm1
addss xmm0, dword [rbx + 0x4938]
movaps xmm1, xmm13
addss xmm1, dword [rbx + 0x4940]
movss dword [rbx + 0x4938], xmm0
movss dword [rbx + 0x4940], xmm1
mov ecx, dword [rsi]
mov byte [rbx + 0x490a], r14b
cmp ecx, 0xffffffff
je 0x180018b25
mov r9d, dword [rbx + 0x4910]
mov r8d, dword [rbx + 0x490c]
mov edx, dword [rbx + 0x4920]
call fcn.180017590
movzx eax, byte [rbx + 0x4908]
movss xmm14, dword [0x1800558d8]
movaps xmmword [rsp + 0xb0], xmm7
movaps xmmword [rsp + 0x90], xmm9
movaps xmmword [rsp + 0x80], xmm10
movaps xmmword [rsp + 0x70], xmm11
movaps xmmword [rsp + 0x60], xmm12
test al, al
je 0x180018e27
cmp dword [rbx + 0x48b8], r14d
jne 0x180018bc0
test byte [rbx + 0x5c9c], 8
je 0x180018ba1
test rdi, rdi
je 0x180018b80
mov rdx, qword [rdi + 8]
jmp 0x180018b87
lea rdx, str._NULL_
mov r8d, dword [rbx + 0x48e8]
lea rcx, str._nav__NavInitRequest:_from_move__window___s___layer_d_n
call fcn.18001be80
movzx eax, byte [rbx + 0x4908]
mov word [rbx + 0x48f1], 0x101
mov dword [rbx + 0x48f4], r14d
mov byte [rbx + 0x48ee], r14b
test al, al
je 0x180018e27
cmp dword [rbx + 0x48e4], 3
jne 0x180018e27
cmp dword [rbx + 0x48e8], r14d
jne 0x180018e27
test rdi, rdi
je 0x180018e27
mov esi, dword [rbx + 0x490c]
lea rcx, [rsp + 0x20]
movss xmm11, dword [rdi + 0x200]
mov ebp, esi
movss xmm12, dword [rdi + 0x204]
addss xmm11, xmm14
movss xmm9, dword [rdi + 0x1f8]
addss xmm12, xmm14
movss xmm10, dword [rdi + 0x1fc]
subss xmm9, xmm14
movss xmm6, dword [rdi + 0x110]
subss xmm10, xmm14
movss xmm7, dword [rdi + 0x114]
mov rdx, rdi
and esi, 0xa
call fcn.180015670
subss xmm9, xmm6
subss xmm10, xmm7
subss xmm11, xmm6
movss xmm0, dword [rax]
subss xmm12, xmm7
movss xmm1, dword [rax + 4]
subss xmm0, dword [rdi + 0x84]
subss xmm1, dword [rdi + 0x88]
addss xmm9, xmm0
addss xmm10, xmm1
addss xmm11, xmm0
addss xmm12, xmm1
and ebp, 5
je 0x180018c91
test esi, esi
jne 0x180018e27
movsxd rax, dword [rbx + 0x48e8]
add rax, rax
movss xmm0, dword [rdi + rax*8 + 0x3a8]
comiss xmm0, xmm9
jb 0x180018cd3
movss xmm0, dword [rdi + rax*8 + 0x3ac]
comiss xmm0, xmm10
jb 0x180018cd3
comiss xmm11, dword [rdi + rax*8 + 0x3b0]
jb 0x180018cd3
comiss xmm12, dword [rdi + rax*8 + 0x3b4]
jae 0x180018e3b
test byte [rbx + 0x5c9c], 8
je 0x180018ce8
lea rcx, str._nav__NavMoveRequest:_clamp_NavRectRel_for_gamepad_move_n
call fcn.18001be80
mov rax, qword [rdi]
movaps xmm2, xmm11
movss xmm3, dword [0x1800558a4]
subss xmm2, xmm9
movss xmm1, dword [rax + 0x3c0c]
mulss xmm1, dword [rdi + 0x290]
mov rax, qword [rdi + 0x368]
movaps xmm0, xmm1
test rax, rax
je 0x180018d2b
mulss xmm0, dword [rax + 0x290]
mulss xmm1, dword [rax + 0x290]
mulss xmm0, xmm3
mulss xmm1, xmm3
movss xmm3, dword [0x180055998]
minss xmm2, xmm0
movaps xmm0, xmm12
subss xmm0, xmm10
minss xmm0, xmm1
movss xmm1, dword [0x180055980]
test ebp, ebp
jne 0x180018d64
addss xmm9, xmm2
subss xmm11, xmm2
jmp 0x180018d6c
movaps xmm9, xmm3
movaps xmm11, xmm1
test esi, esi
jne 0x180018d7c
addss xmm10, xmm0
subss xmm12, xmm0
jmp 0x180018d84
movaps xmm10, xmm3
movaps xmm12, xmm1
movsxd rax, dword [rbx + 0x48e8]
add rax, rax
movss xmm0, dword [rdi + rax*8 + 0x3ac]
comiss xmm10, xmm0
jbe 0x180018da3
movaps xmm1, xmm10
jmp 0x180018dab
movaps xmm1, xmm12
minss xmm1, xmm0
movss xmm2, dword [rdi + rax*8 + 0x3a8]
comiss xmm9, xmm2
jbe 0x180018dc0
movaps xmm0, xmm9
jmp 0x180018dc8
movaps xmm0, xmm11
minss xmm0, xmm2
movss dword [rdi + rax*8 + 0x3a8], xmm0
movss dword [rdi + rax*8 + 0x3ac], xmm1
movss xmm0, dword [rdi + rax*8 + 0x3b4]
comiss xmm10, xmm0
ja 0x180018df2
movaps xmm10, xmm12
minss xmm10, xmm0
movss xmm0, dword [rdi + rax*8 + 0x3b0]
comiss xmm9, xmm0
ja 0x180018e0a
movaps xmm9, xmm11
minss xmm9, xmm0
movss dword [rdi + rax*8 + 0x3b0], xmm9
movss dword [rdi + rax*8 + 0x3b4], xmm10
mov dword [rbx + 0x48b8], r14d
jmp 0x180018e3b
xorps xmm4, xmm4
xorps xmm6, xmm6
movups xmmword [rsp + 0x20], xmm4
test rdi, rdi
je 0x180018f00
movsxd rax, dword [rbx + 0x48e8]
add rax, rax
movss xmm0, dword [rdi + rax*8 + 0x3a8]
comiss xmm0, dword [rdi + rax*8 + 0x3b0]
ja 0x180018e75
movss xmm0, dword [rdi + rax*8 + 0x3ac]
comiss xmm0, dword [rdi + rax*8 + 0x3b4]
ja 0x180018e75
movups xmm0, xmmword [rdi + rax*8 + 0x3a8]
jmp 0x180018e78
xorps xmm0, xmm0
movss xmm5, dword [rdi + 0x114]
lea rax, [rsp + 0x20]
movss xmm1, dword [rdi + 0x110]
movaps xmm6, xmm5
movups xmmword [rsp + 0x20], xmm0
movups xmm3, xmmword [rax]
movaps xmm8, xmm1
addss xmm8, xmm3
movaps xmm0, xmm3
shufps xmm0, xmm3, 0x55
addss xmm6, xmm0
movaps xmm0, xmm3
shufps xmm0, xmm3, 0xff
shufps xmm3, xmm3, 0xaa
addss xmm5, xmm0
addss xmm8, xmm14
addss xmm1, xmm3
addss xmm6, xmm13
addss xmm5, xmm13
minss xmm8, xmm1
movaps xmm4, xmm6
movaps xmm9, xmm6
shufps xmm4, xmm4, 0
movss xmm4, xmm5
shufps xmm4, xmm4, 0x39
movaps xmm7, xmm8
movaps xmm3, xmm8
movss xmm4, xmm7
shufps xmm4, xmm4, 0xd2
movss xmm4, xmm3
shufps xmm4, xmm4, 0xc9
jmp 0x180018f19
movss xmm5, dword [rsp + 0x2c]
movss xmm3, dword [rsp + 0x28]
movss xmm9, dword [rsp + 0x24]
movss xmm7, dword [rsp + 0x20]
movaps xmm14, xmmword [rsp + 0x40]
movaps xmm13, xmmword [rsp + 0x50]
movaps xmm12, xmmword [rsp + 0x60]
movaps xmm11, xmmword [rsp + 0x70]
movaps xmm10, xmmword [rsp + 0x80]
mov r14, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0xe8]
mov rbp, qword [rsp + 0xe0]
movups xmmword [rbx + 0x4924], xmm4
movss xmm0, dword [rbx + 0x4934]
comiss xmm0, xmm8
movaps xmm8, xmmword [rsp + 0xa0]
jbe 0x180018f80
movss dword [rbx + 0x4934], xmm7
movss xmm0, dword [rbx + 0x4938]
movaps xmm7, xmmword [rsp + 0xb0]
comiss xmm0, xmm6
movaps xmm6, xmmword [rsp + 0xc0]
jbe 0x180018fa6
movss dword [rbx + 0x4938], xmm9
comiss xmm3, dword [rbx + 0x493c]
movaps xmm9, xmmword [rsp + 0x90]
jbe 0x180018fc0
movss dword [rbx + 0x493c], xmm3
comiss xmm5, dword [rbx + 0x4940]
jbe 0x180018fd1
movss dword [rbx + 0x4940], xmm5
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.180046920
add rsp, 0xd0
pop rbx
ret