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

Disassembly:
mov r11, rsp
push rsi
sub rsp, 0xf0
mov rax, qword [0x180098028]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov qword [r11 + 8], rbx
mov rbx, qword [0x1800990f8]
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rdi
mov qword [r11 - 0x18], r13
mov ebp, dword [rbx + 8]
mov rdi, qword [rbx + 0x48b0]
mov qword [r11 - 0x20], r14
movaps xmmword [r11 - 0x58], xmm8
movaps xmmword [rsp + 0x40], xmm14
test bpl, 2
je 0x18002d0eb
test byte [rbx + 0xc], 1
je 0x18002d0eb
mov r10b, 1
jmp 0x18002d0ee
xor r10b, r10b
mov qword [rsp + 0xe8], r12
and bpl, 1
mov qword [rsp + 0xd0], r15
xor r13d, r13d
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0x50], xmm13
cmp byte [rbx + 0x490a], r13b
je 0x18002d161
test rdi, rdi
je 0x18002d161
test byte [rbx + 0x5c9c], 8
lea r14, [rbx + 0x4918]
je 0x18002d140
mov edx, dword [r14]
lea rcx, str._nav__NavMoveRequestForward__d_n
call fcn.1800309e0
mov eax, dword [r14]
lea rsi, [rbx + 0x4934]
mov r15, rsi
lea r12, [rbx + 0x490c]
xorps xmm8, xmm8
xorps xmm13, xmm13
jmp 0x18002d53e
mov dword [rbx + 0x4910], r13d
lea r14, [rbx + 0x4918]
mov dword [r14], 0xffffffff
lea r12, [rbx + 0x490c]
mov dword [r12], r13d
xorps xmm8, xmm8
test rdi, rdi
je 0x18002d517
cmp qword [rbx + 0x4a18], r13
jne 0x18002d517
test dword [rdi + 0x14], 0x40000
jne 0x18002d517
test byte [rbx + 0x4740], 1
movss xmm5, dword [0x18008c138]
movss xmm6, dword [0x18008c144]
jne 0x18002d28a
test r10b, r10b
je 0x18002d21d
mov edx, 0x26f
mov rcx, rbx
call fcn.180027090
cmp byte [rax], r13b
je 0x18002d21d
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x18002d21d
ucomiss xmm0, xmm8
jp 0x18002d1ef
je 0x18002d214
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x18002d21d
mov ecx, 0x26f
call fcn.180027220
test eax, eax
jle 0x18002d21d
cmp dword [rbx + 0x44ac], 0xffffffff
je 0x18002d287
test bpl, bpl
je 0x18002d28a
mov edx, 0x201
mov rcx, rbx
call fcn.180027090
cmp byte [rax], r13b
je 0x18002d28a
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x18002d28a
ucomiss xmm0, xmm8
jp 0x18002d247
je 0x18002d26c
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x18002d28a
mov ecx, 0x201
call fcn.180027220
test eax, eax
jle 0x18002d28a
cmp byte [rbx + 0x4744], r13b
je 0x18002d27e
cmp dword [rbx + 0x3f30], 0xffffffff
jne 0x18002d28a
cmp dword [rbx + 0x3f84], 0xffffffff
jne 0x18002d28a
mov dword [r14], r13d
mov eax, dword [rbx + 0x4740]
shr eax, 1
test al, 1
jne 0x18002d363
test r10b, r10b
je 0x18002d2f2
mov edx, 0x270
mov rcx, rbx
call fcn.180027090
cmp byte [rax], r13b
je 0x18002d2f2
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x18002d2f2
ucomiss xmm0, xmm8
jp 0x18002d2c4
je 0x18002d2e9
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x18002d2f2
mov ecx, 0x270
call fcn.180027220
test eax, eax
jle 0x18002d2f2
cmp dword [rbx + 0x44b8], 0xffffffff
je 0x18002d35c
test bpl, bpl
je 0x18002d363
mov edx, 0x202
mov rcx, rbx
call fcn.180027090
cmp byte [rax], r13b
je 0x18002d363
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x18002d363
ucomiss xmm0, xmm8
jp 0x18002d31c
je 0x18002d341
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x18002d363
mov ecx, 0x202
call fcn.180027220
test eax, eax
jle 0x18002d363
cmp byte [rbx + 0x4744], r13b
je 0x18002d353
cmp dword [rbx + 0x3f30], 0xffffffff
jne 0x18002d363
cmp dword [rbx + 0x3f90], 0xffffffff
jne 0x18002d363
mov dword [r14], 1
mov eax, dword [rbx + 0x4740]
shr eax, 2
test al, 1
jne 0x18002d43d
test r10b, r10b
je 0x18002d3cc
mov edx, 0x271
mov rcx, rbx
call fcn.180027090
cmp byte [rax], r13b
je 0x18002d3cc
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x18002d3cc
ucomiss xmm0, xmm8
jp 0x18002d39e
je 0x18002d3c3
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x18002d3cc
mov ecx, 0x271
call fcn.180027220
test eax, eax
jle 0x18002d3cc
cmp dword [rbx + 0x44c4], 0xffffffff
je 0x18002d436
test bpl, bpl
je 0x18002d43d
mov edx, 0x203
mov rcx, rbx
call fcn.180027090
cmp byte [rax], r13b
je 0x18002d43d
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x18002d43d
ucomiss xmm0, xmm8
jp 0x18002d3f6
je 0x18002d41b
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x18002d43d
mov ecx, 0x203
call fcn.180027220
test eax, eax
jle 0x18002d43d
cmp byte [rbx + 0x4744], r13b
je 0x18002d42d
cmp dword [rbx + 0x3f30], 0xffffffff
jne 0x18002d43d
cmp dword [rbx + 0x3f9c], 0xffffffff
jne 0x18002d43d
mov dword [r14], 2
mov eax, dword [rbx + 0x4740]
shr eax, 3
test al, 1
jne 0x18002d517
test r10b, r10b
je 0x18002d4a6
mov edx, 0x272
mov rcx, rbx
call fcn.180027090
cmp byte [rax], r13b
je 0x18002d4a6
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x18002d4a6
ucomiss xmm0, xmm8
jp 0x18002d478
je 0x18002d49d
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x18002d4a6
mov ecx, 0x272
call fcn.180027220
test eax, eax
jle 0x18002d4a6
cmp dword [rbx + 0x44d0], 0xffffffff
je 0x18002d510
test bpl, bpl
je 0x18002d517
mov edx, 0x204
mov rcx, rbx
call fcn.180027090
cmp byte [rax], r13b
je 0x18002d517
movss xmm0, dword [rax + 4]
comiss xmm8, xmm0
ja 0x18002d517
ucomiss xmm0, xmm8
jp 0x18002d4d0
je 0x18002d4f5
movss xmm1, dword [rbx + 0x3c]
movss xmm2, dword [rbx + 0x40]
mulss xmm1, xmm5
mulss xmm2, xmm6
comiss xmm0, xmm1
jbe 0x18002d517
mov ecx, 0x204
call fcn.180027220
test eax, eax
jle 0x18002d517
cmp byte [rbx + 0x4744], r13b
je 0x18002d507
cmp dword [rbx + 0x3f30], 0xffffffff
jne 0x18002d517
cmp dword [rbx + 0x3fa8], 0xffffffff
jne 0x18002d517
mov dword [r14], 3
movaps xmm0, xmmword [0x18008c6b0]
lea r15, [rbx + 0x4934]
mov eax, dword [r14]
mov rsi, r15
mov dword [rbx + 0x4920], eax
xorps xmm13, xmm13
movups xmmword [r15], xmm0
test rdi, rdi
je 0x18002d587
cmp eax, 0xffffffff
jne 0x18002d587
test bpl, bpl
je 0x18002d587
call fcn.18002e030
ucomiss xmm0, xmm8
movaps xmm13, xmm0
jp 0x18002d559
je 0x18002d587
movups xmm1, xmmword [rdi + 0x1f8]
movaps xmm2, xmm0
movups xmmword [r15], xmm1
addss xmm2, dword [rbx + 0x4938]
addss xmm0, dword [rbx + 0x4940]
movss dword [rbx + 0x4938], xmm2
movss dword [rbx + 0x4940], xmm0
mov ecx, dword [r14]
mov r15, qword [rsp + 0xd0]
mov byte [rbx + 0x490a], r13b
cmp ecx, 0xffffffff
je 0x18002d5b7
mov r9d, dword [rbx + 0x4910]
mov r8d, dword [rbx + 0x490c]
mov edx, dword [rbx + 0x4920]
call fcn.18002bf00
movzx eax, byte [rbx + 0x4908]
movss xmm14, dword [0x18008c158]
movaps xmmword [rsp + 0x90], xmm9
movaps xmmword [rsp + 0x80], xmm10
movaps xmmword [rsp + 0x70], xmm11
movaps xmmword [rsp + 0x60], xmm12
test al, al
je 0x18002d8d7
cmp dword [rbx + 0x48b8], r13d
jne 0x18002d64a
test byte [rbx + 0x5c9c], 8
je 0x18002d62b
test rdi, rdi
je 0x18002d60a
mov rdx, qword [rdi + 8]
jmp 0x18002d611
lea rdx, str._NULL_
mov r8d, dword [rbx + 0x48e8]
lea rcx, str._nav__NavInitRequest:_from_move__window___s___layer_d_n
call fcn.1800309e0
movzx eax, byte [rbx + 0x4908]
mov word [rbx + 0x48f1], 0x101
mov dword [rbx + 0x48f4], r13d
mov byte [rbx + 0x48ee], r13b
test al, al
je 0x18002d8d7
cmp dword [rbx + 0x48e4], 3
jne 0x18002d8d7
cmp dword [rbx + 0x48e8], r13d
jne 0x18002d8d7
test rdi, rdi
je 0x18002d8d7
mov ebp, dword [r12]
lea rcx, [rsp + 0x20]
movss xmm11, dword [rdi + 0x200]
mov r14d, ebp
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
movaps xmmword [rsp + 0xb0], xmm7
mov rdx, rdi
movss xmm7, dword [rdi + 0x114]
and ebp, 0xa
call fcn.180029ba0
subss xmm10, xmm7
subss xmm12, xmm7
movaps xmm7, xmmword [rsp + 0xb0]
subss xmm9, xmm6
movss xmm0, dword [rax]
subss xmm11, xmm6
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 r14d, 5
je 0x18002d72b
test ebp, ebp
jne 0x18002d8d7
movsxd rax, dword [rbx + 0x48e8]
add rax, rax
movss xmm0, dword [rdi + rax*8 + 0x3a8]
comiss xmm0, xmm9
jb 0x18002d778
movss xmm0, dword [rdi + rax*8 + 0x3ac]
comiss xmm0, xmm10
jb 0x18002d778
comiss xmm11, dword [rdi + rax*8 + 0x3b0]
jb 0x18002d778
comiss xmm12, dword [rdi + rax*8 + 0x3b4]
jb 0x18002d778
mov qword [rsp + 0x20], r13
mov dword [rsp + 0x2c], r13d
jmp 0x18002d8eb
test byte [rbx + 0x5c9c], 8
je 0x18002d78d
lea rcx, str._nav__NavMoveRequest:_clamp_NavRectRel_for_gamepad_move_n
call fcn.1800309e0
mov rax, qword [rdi]
movaps xmm0, xmm11
movss xmm3, dword [0x18008c120]
subss xmm0, xmm9
movss xmm1, dword [rax + 0x3c0c]
mulss xmm1, dword [rdi + 0x290]
mov rax, qword [rdi + 0x368]
movaps xmm2, xmm1
test rax, rax
je 0x18002d7d0
mulss xmm2, dword [rax + 0x290]
mulss xmm1, dword [rax + 0x290]
mulss xmm2, xmm3
mulss xmm1, xmm3
movss xmm3, dword [0x18008c224]
minss xmm0, xmm2
movaps xmm2, xmm12
subss xmm2, xmm10
minss xmm2, xmm1
movss xmm1, dword [0x18008c208]
test r14d, r14d
jne 0x18002d80a
addss xmm9, xmm0
subss xmm11, xmm0
jmp 0x18002d812
movaps xmm9, xmm3
movaps xmm11, xmm1
test ebp, ebp
jne 0x18002d822
addss xmm10, xmm2
subss xmm12, xmm2
jmp 0x18002d82a
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 0x18002d849
movaps xmm1, xmm10
jmp 0x18002d851
movaps xmm1, xmm12
minss xmm1, xmm0
movss xmm2, dword [rdi + rax*8 + 0x3a8]
comiss xmm9, xmm2
jbe 0x18002d866
movaps xmm0, xmm9
jmp 0x18002d86e
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 0x18002d898
movaps xmm10, xmm12
minss xmm10, xmm0
movss xmm0, dword [rdi + rax*8 + 0x3b0]
comiss xmm9, xmm0
ja 0x18002d8b0
movaps xmm9, xmm11
minss xmm9, xmm0
movss dword [rdi + rax*8 + 0x3b0], xmm9
movss dword [rdi + rax*8 + 0x3b4], xmm10
mov dword [rbx + 0x48b8], r13d
mov qword [rsp + 0x20], r13
mov dword [rsp + 0x2c], r13d
jmp 0x18002d8eb
xorps xmm1, xmm1
xorps xmm4, xmm4
movups xmmword [rsp + 0x20], xmm1
test rdi, rdi
je 0x18002d9b4
movsxd rax, dword [rbx + 0x48e8]
add rax, rax
movss xmm0, dword [rdi + rax*8 + 0x3a8]
comiss xmm0, dword [rdi + rax*8 + 0x3b0]
ja 0x18002d925
movss xmm0, dword [rdi + rax*8 + 0x3ac]
comiss xmm0, dword [rdi + rax*8 + 0x3b4]
ja 0x18002d925
movups xmm0, xmmword [rdi + rax*8 + 0x3a8]
jmp 0x18002d928
xorps xmm0, xmm0
movss xmm1, dword [rdi + 0x110]
lea rax, [rsp + 0x20]
movups xmmword [rsp + 0x20], xmm0
movups xmm2, xmmword [rax]
movss xmm0, dword [rdi + 0x114]
movaps xmm8, xmm2
movaps xmm4, xmm2
addss xmm8, xmm1
shufps xmm4, xmm2, 0x55
movaps xmm3, xmm2
addss xmm4, xmm0
shufps xmm3, xmm2, 0xff
shufps xmm2, xmm2, 0xaa
addss xmm3, xmm0
addss xmm2, xmm1
addss xmm8, xmm14
addss xmm4, xmm13
addss xmm3, xmm13
minss xmm8, xmm2
movaps xmm1, xmm4
movaps xmm5, xmm4
shufps xmm1, xmm1, 0
movss xmm1, xmm3
shufps xmm1, xmm1, 0x39
movaps xmm6, xmm8
movaps xmm2, xmm8
movss xmm1, xmm6
shufps xmm1, xmm1, 0xd2
movss xmm1, xmm6
shufps xmm1, xmm1, 0xe4
movss xmm1, xmm2
shufps xmm1, xmm1, 0xc9
jmp 0x18002d9cf
xorps xmm0, xmm0
xorps xmm2, xmm2
shufps xmm0, xmm1, 0xff
xorps xmm5, xmm5
movaps xmm3, xmm0
shufps xmm2, xmm1, 0xaa
shufps xmm5, xmm1, 0x55
xorps xmm6, xmm6
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]
movaps xmm9, xmmword [rsp + 0x90]
mov r14, qword [rsp + 0xd8]
mov r13, qword [rsp + 0xe0]
mov r12, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0x110]
mov rbp, qword [rsp + 0x108]
movups xmmword [rbx + 0x4924], xmm1
mov rbx, qword [rsp + 0x100]
movss xmm0, dword [rsi]
comiss xmm0, xmm8
movaps xmm8, xmmword [rsp + 0xa0]
jbe 0x18002da47
movss dword [rsi], xmm6
movss xmm0, dword [rsi + 4]
comiss xmm0, xmm4
movaps xmm6, xmmword [rsp + 0xc0]
jbe 0x18002da5e
movss dword [rsi + 4], xmm5
comiss xmm2, dword [rsi + 8]
jbe 0x18002da69
movss dword [rsi + 8], xmm2
comiss xmm3, dword [rsi + 0xc]
jbe 0x18002da74
movss dword [rsi + 0xc], xmm3
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.18005f3b0
add rsp, 0xf0
pop rsi
ret