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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r10, qword [0x18007e0e0]
mov ebp, 3
mov rbx, r10
mov r13d, dword [r10 + 8]
mov byte [r10 + 0xd3], 0
test r13b, 2
je 0x18001788d
test byte [r10 + 0xc], 1
je 0x18001788d
movdqa xmm0, xmmword [0x180071f70]
lea r9, [rsp + 0x20]
movdqa xmm1, xmmword [0x180071f80]
mov r12b, 1
movdqu xmmword [rsp + 0x20], xmm0
movdqu xmmword [rsp + 0x30], xmm1
nop dword [rax + rax]
mov r11d, dword [r9]
mov rcx, r10
mov edx, r11d
call fcn.1800123c0
cmp byte [rax], 0
je 0x180017878
xor edx, edx
mov ecx, r11d
call fcn.180014960
test al, al
je 0x180017878
mov dword [r10 + 0x48f4], ebp
add r9, 4
lea rax, [rsp + 0x40]
cmp r9, rax
jne 0x180017850
movzx r13d, byte [r10 + 8]
jmp 0x180017890
xor r12b, r12b
movdqa xmm0, xmmword [0x180071f60]
mov dword [rsp + 0x30], 0x201
mov dword [rsp + 0x34], 0x203
mov dword [rsp + 0x38], 0x204
movdqu xmmword [rsp + 0x20], xmm0
and r13b, 1
je 0x1800178fb
lea r9, [rsp + 0x20]
mov r11d, dword [r9]
mov rcx, r10
mov edx, r11d
call fcn.1800123c0
cmp byte [rax], 0
je 0x1800178ed
xor edx, edx
mov ecx, r11d
call fcn.180014960
test al, al
je 0x1800178ed
mov dword [r10 + 0x48f4], 2
add r9, 4
lea rax, [rsp + 0x3c]
cmp r9, rax
jne 0x1800178c1
xor r15d, r15d
mov dword [r10 + 0x48e0], r15d
cmp dword [r10 + 0x4910], r15d
je 0x180017a32
mov r9, qword [r10 + 0x48c0]
mov rdi, r10
test r9, r9
je 0x180017a32
mov r11d, dword [r10 + 0x4910]
cmp dword [r10 + 0x48c8], r11d
je 0x180017951
mov dword [r10 + 0x48e0], r11d
mov eax, dword [r10 + 0x4914]
mov dword [r10 + 0x48e4], eax
mov dword [r10 + 0x48e8], r15d
test byte [r10 + 0x5cdc], 8
je 0x180017983
mov r9, qword [r9 + 8]
lea rcx, str._nav__NavInitRequest:_ApplyResult:_NavID_0x_08X_in_Layer__d_Window___s__n
mov r8d, dword [r10 + 0x48f8]
mov edx, r11d
call fcn.18001bc80
mov r11d, dword [rdi + 0x4910]
mov r10, qword [0x18007e0e0]
mov eax, dword [rdi + 0x4914]
movsxd rcx, dword [rdi + 0x48f8]
mov dword [r10 + 0x48cc], eax
mov rdx, rcx
mov rax, qword [r10 + 0x48c0]
add rdx, rdx
mov dword [r10 + 0x48f8], ecx
mov dword [r10 + 0x48c8], r11d
mov dword [rax + rcx*4 + 0x3a0], r11d
mov rax, qword [r10 + 0x48c0]
movups xmm0, xmmword [rdi + 0x4918]
movups xmmword [rax + rdx*8 + 0x3a8], xmm0
mov rax, qword [r10 + 0x48c0]
movsxd rdx, dword [r10 + 0x48f8]
mov rcx, qword [rax + 0x390]
mov dword [rcx + rdx*8 + 0x3c8], 0x7f7fffff
mov rax, qword [r10 + 0x48c0]
movsxd rdx, dword [r10 + 0x48f8]
mov rcx, qword [rax + 0x390]
mov dword [rcx + rdx*8 + 0x3cc], 0x7f7fffff
mov byte [rdi + 0x48fc], 1
cmp byte [rdi + 0x4902], r15b
je 0x180017a32
mov word [r10 + 0x48fd], 1
mov byte [r10 + 0x48ff], 1
mov word [rbx + 0x4901], r15w
mov dword [rbx + 0x4910], r15d
cmp byte [rbx + 0x4938], r15b
je 0x180017a4f
call fcn.180018cd0
xor r14b, r14b
mov dword [rbx + 0x497c], r15d
mov esi, 1
mov word [rbx + 0x4938], r15w
mov dword [rsp + 0x70], r14d
cmp byte [rbx + 0x48fd], r15b
je 0x180017aa3
cmp byte [rbx + 0x48fc], r15b
je 0x180017aa3
cmp byte [rbx + 0x48fe], r15b
jne 0x180017aa3
cmp byte [rbx + 0x48ff], r15b
je 0x180017aa3
cmp qword [rbx + 0x48c0], r15
movzx r14d, r14b
cmovne r14d, esi
mov dword [rsp + 0x70], r14d
mov rcx, qword [rbx + 0x48c0]
mov byte [rbx + 0x48fd], r15b
test rcx, rcx
je 0x180017aec
mov rax, rcx
nop dword [rax]
cmp qword [rax + 0x378], rax
je 0x180017ae0
test dword [rax + 0x14], 0x14000000
jne 0x180017ae0
mov rax, qword [rax + 0x368]
test rax, rax
jne 0x180017ac0
jmp 0x180017aec
cmp rax, rcx
je 0x180017aec
mov qword [rax + 0x398], rcx
mov rax, qword [rbx + 0x48c0]
test rax, rax
je 0x180017b11
cmp qword [rax + 0x398], r15
je 0x180017b11
cmp dword [rbx + 0x48f8], r15d
jne 0x180017b11
mov qword [rax + 0x398], r15
call fcn.180019be0
test r13b, r13b
jne 0x180017b24
test r12b, r12b
je 0x180017c5a
mov rax, qword [rbx + 0x48c0]
test rax, rax
je 0x180017c5a
test dword [rax + 0x14], 0x40000
jne 0x180017c5a
mov byte [rbx + 0xd5], sil
cmp dword [rbx + 0x48c8], r15d
je 0x180017c61
cmp byte [rbx + 0x48fe], r15b
jne 0x180017c61
movzx eax, sil
mov byte [rbx + 0xd6], al
call fcn.180019150
mov edi, dword [rbx + 0x48c8]
mov qword [rbx + 0x48d4], r15
mov dword [rbx + 0x48d0], r15d
mov dword [rbx + 0x48dc], r15d
test edi, edi
je 0x180017d76
cmp byte [rbx + 0x48fe], r15b
jne 0x180017d76
cmp qword [rbx + 0x4a48], r15
jne 0x180017d76
mov rax, qword [rbx + 0x48c0]
test rax, rax
je 0x180017d76
test dword [rax + 0x14], 0x40000
jne 0x180017d76
mov rbp, qword [0x18007e0e0]
test r13b, r13b
je 0x180017bf9
mov edx, 0x20c
mov rcx, rbp
call fcn.1800123c0
cmp byte [rax], r15b
je 0x180017bf9
xor edx, edx
mov ecx, 0x20c
call fcn.180014960
test al, al
jne 0x180017c20
test r12b, r12b
je 0x180017c75
mov edx, 0x26e
mov rcx, rbp
call fcn.1800123c0
cmp byte [rax], r15b
je 0x180017c75
xor edx, edx
mov ecx, 0x26e
call fcn.180014960
test al, al
je 0x180017c75
movzx r15d, sil
test r13b, r13b
je 0x180017c3c
xor r8d, r8d
xor edx, edx
mov ecx, 0x20c
call fcn.180012af0
test al, al
jne 0x180017c54
test r12b, r12b
je 0x180017c75
xor r8d, r8d
xor edx, edx
mov ecx, 0x26e
call fcn.180012af0
test al, al
je 0x180017c75
movzx r14d, sil
jmp 0x180017c78
mov byte [rbx + 0xd5], r15b
cmp qword [rbx + 0x4a48], r15
jne 0x180017b62
xor al, al
jmp 0x180017b66
xor r14b, r14b
test r13b, r13b
je 0x180017c9f
mov edx, 0x20d
mov rcx, rbp
call fcn.1800123c0
cmp byte [rax], 0
je 0x180017c9f
xor edx, edx
mov ecx, 0x20d
call fcn.180014960
test al, al
jne 0x180017cc6
test r12b, r12b
je 0x180017d00
mov edx, 0x26d
mov rcx, rbp
call fcn.1800123c0
cmp byte [rax], 0
je 0x180017d00
xor edx, edx
mov ecx, 0x26d
call fcn.180014960
test al, al
je 0x180017d00
movzx ebp, sil
test r13b, r13b
je 0x180017ce2
xor r8d, r8d
xor edx, edx
mov ecx, 0x20d
call fcn.180012af0
test al, al
jne 0x180017cfa
test r12b, r12b
je 0x180017d03
xor r8d, r8d
xor edx, edx
mov ecx, 0x26d
call fcn.180012af0
test al, al
je 0x180017d03
movzx ecx, sil
jmp 0x180017d05
xor bpl, bpl
xor cl, cl
mov eax, dword [rbx + 0x3f38]
test eax, eax
jne 0x180017d26
test r14b, r14b
je 0x180017d2a
mov dword [rbx + 0x48d0], edi
mov dword [rbx + 0x48dc], 2
jmp 0x180017d2a
cmp eax, edi
jne 0x180017d69
test cl, cl
je 0x180017d3a
mov dword [rbx + 0x48d0], edi
mov dword [rbx + 0x48dc], esi
test eax, eax
je 0x180017d42
cmp eax, edi
jne 0x180017d69
test r15b, r15b
jne 0x180017d4c
test bpl, bpl
je 0x180017d52
mov dword [rbx + 0x48d4], edi
test eax, eax
je 0x180017d5a
cmp eax, edi
jne 0x180017d69
test r14b, r14b
jne 0x180017d63
test cl, cl
je 0x180017d69
mov dword [rbx + 0x48d8], edi
mov r14d, dword [rsp + 0x70]
mov ebp, 3
xor r15d, r15d
mov rax, qword [rbx + 0x48c0]
test rax, rax
je 0x180017d92
test dword [rax + 0x14], 0x40000
je 0x180017d92
mov byte [rbx + 0x48fe], sil
mov eax, dword [rbx + 0x48ec]
test eax, eax
je 0x180017dba
mov dword [rbx + 0x48d8], eax
mov dword [rbx + 0x48d4], eax
mov dword [rbx + 0x48d0], eax
mov eax, dword [rbx + 0x48f0]
mov dword [rbx + 0x48dc], eax
mov dword [rbx + 0x48ec], r15d
call fcn.180018210
cmp dword [rbx + 0x4948], 0xffffffff
xorps xmm5, xmm5
mov rdi, qword [0x18007e0e0]
jne 0x180017f05
mov r10, qword [rdi + 0x48c0]
test r10, r10
je 0x180017f05
cmp qword [rdi + 0x4a48], 0
jne 0x180017f05
test dword [r10 + 0x14], 0x40000
jne 0x180017f05
mov edx, 0x200
mov rcx, rdi
call fcn.1800123c0
cmp byte [rax], 0
je 0x180017f05
movss xmm0, dword [rax + 4]
comiss xmm5, xmm0
ja 0x180017f05
ucomiss xmm0, xmm5
jp 0x180017e34
je 0x180017e59
movss xmm1, dword [rdi + 0x70]
comiss xmm0, xmm1
jbe 0x180017f05
movss xmm2, dword [rdi + 0x74]
mov ecx, 0x200
call fcn.180012590
test eax, eax
jle 0x180017f05
mov edx, 0xffffffff
mov ecx, 0x200
call fcn.180014960
test al, al
je 0x180017f05
cmp byte [rdi + 0xe1c], 0
jne 0x180017f05
cmp byte [rdi + 0xe1e], 0
jne 0x180017f05
movzx eax, byte [rdi + 0xe1d]
test byte [rdi + 8], sil
je 0x180017eb5
test al, al
je 0x180017e9e
mov esi, 0xffffffff
jmp 0x180017ece
cmp byte [rdi + 0x48fe], sil
jne 0x180017ece
cmp dword [rdi + 0x3f38], 0
jne 0x180017ece
mov esi, r15d
jmp 0x180017ece
test al, al
je 0x180017ec0
mov esi, 0xffffffff
jmp 0x180017ece
cmp dword [rdi + 0x3f38], 0
mov esi, r15d
setne sil
mov dword [rdi + 0x4978], esi
mov eax, 0x21
cmp byte [r10 + 0xbc], 0
mov r8d, 0x1400
cmovne ebp, eax
sar esi, 0x1f
mov r9d, ebp
lea ecx, [rax - 0x22]
lea edx, [rsi + 3]
call fcn.1800170c0
mov dword [rdi + 0x497c], 0xffffffff
cmp byte [rdi + 0x4939], 0
jne 0x180017f1b
cmp byte [rdi + 0x4901], 0
jne 0x180017f1b
xor al, al
jmp 0x180017f1d
mov al, 1
mov byte [rdi + 0x4900], al
mov r11, qword [rbx + 0x48c0]
mov byte [rbx + 0x48fc], 0
test r11, r11
je 0x180018183
test dword [r11 + 0x14], 0x40000
jne 0x180018183
cmp qword [rbx + 0x4a48], 0
jne 0x180018183
mov rax, qword [r11]
movss xmm0, dword [rax + 0x3c14]
mov rax, qword [r11 + 0x368]
mulss xmm0, dword [r11 + 0x290]
test rax, rax
je 0x180017f7e
mulss xmm0, dword [rax + 0x290]
cmp word [r11 + 0x15c], 0
mulss xmm0, dword [0x180071e6c]
mov ecx, dword [rbx + 0x4948]
movss xmm2, dword [0x180071d7c]
mulss xmm0, dword [rbx + 0x18]
addss xmm0, dword [0x180071d48]
cvttss2si eax, xmm0
movd xmm3, eax
cvtdq2ps xmm3, xmm3
jne 0x180018056
cmp byte [r11 + 0x162], 0
je 0x180018056
cmp ecx, 0xffffffff
je 0x180018056
movss xmm1, dword [0x180071eb4]
test ecx, ecx
je 0x180017fe8
cmp ecx, 1
jne 0x18001801a
movaps xmm0, xmm2
jmp 0x180017feb
movaps xmm0, xmm1
mulss xmm0, xmm3
mov dword [r11 + 0x9c], r15d
mov dword [r11 + 0xa4], r15d
addss xmm0, dword [r11 + 0x84]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r11 + 0x94], xmm0
cmp ecx, 2
je 0x180018027
cmp ecx, 3
jne 0x180018056
movaps xmm1, xmm2
mulss xmm1, xmm3
mov dword [r11 + 0xa0], r15d
mov dword [r11 + 0xa8], r15d
addss xmm1, dword [r11 + 0x88]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r11 + 0x98], xmm0
test r12b, r12b
je 0x180018183
mov edx, 0x27b
mov rcx, rdi
call fcn.1800123c0
mov edx, 0x279
mov rcx, rdi
mov r10, rax
call fcn.1800123c0
mov edx, 0x27a
mov rcx, rdi
mov r9, rax
call fcn.1800123c0
mov edx, 0x27c
mov rcx, rdi
movss xmm0, dword [rax + 0xc]
subss xmm0, dword [r9 + 0xc]
call fcn.1800123c0
mov edx, 0x273
mov rcx, rdi
movss xmm1, dword [rax + 0xc]
subss xmm1, dword [r10 + 0xc]
call fcn.1800123c0
cmp byte [rax], 0
je 0x1800180db
xor edx, edx
mov ecx, 0x273
call fcn.180014960
test al, al
je 0x1800180db
movss xmm2, dword [0x180071d20]
jmp 0x180018105
mov edx, 0x274
mov rcx, rdi
call fcn.1800123c0
cmp byte [rax], 0
je 0x180018105
xor edx, edx
mov ecx, 0x274
call fcn.180014960
test al, al
je 0x180018105
movss xmm2, dword [0x180071e34]
ucomiss xmm0, xmm5
jp 0x18001810c
je 0x180018149
cmp byte [r11 + 0xb4], 0
je 0x180018149
mulss xmm0, xmm3
mov dword [r11 + 0x9c], r15d
mov dword [r11 + 0xa4], r15d
mulss xmm0, xmm2
addss xmm0, dword [r11 + 0x84]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r11 + 0x94], xmm0
ucomiss xmm1, xmm5
jp 0x180018150
je 0x180018183
mulss xmm1, xmm3
mov dword [r11 + 0xa0], r15d
mov dword [r11 + 0xa8], r15d
mulss xmm1, xmm2
addss xmm1, dword [r11 + 0x88]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r11 + 0x98], xmm0
test r13b, r13b
jne 0x180018198
test r12b, r12b
jne 0x180018198
mov word [rbx + 0x48fe], 1
jmp 0x1800181e3
test r14b, r14b
je 0x1800181e3
test byte [rbx + 8], 4
je 0x1800181e3
test byte [rbx + 0xc], 4
je 0x1800181e3
lea rcx, [rsp + 0x70]
call fcn.1800175c0
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbx + 0x36e8], xmm0
movss dword [rbx + 0x36ec], xmm1
movss dword [rbx + 0xe00], xmm0
movss dword [rbx + 0xe04], xmm1
mov byte [rbx + 0xd3], 1
lea r11, [rsp + 0x40]
mov dword [rbx + 0x4974], r15d
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret