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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x180142010]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov r11, qword [0x180145c50]
xor r14d, r14d
mov rbx, r11
test byte [r11 + 8], 2
lea esi, [r14 + 1]
mov byte [r11 + 0xdb], r14b
je 0x180018b37
mov r12b, sil
test byte [r11 + 0xc], sil
jne 0x180018b3a
mov r12b, r14b
movdqa xmm0, xmmword [0x180139f50]
movdqa xmm1, xmmword [0x180139f60]
movdqu xmmword [rsp + 0x28], xmm0
movdqu xmmword [rsp + 0x38], xmm1
test r12b, r12b
je 0x180018b84
lea rdi, [rsp + 0x28]
mov ecx, dword [rdi]
call fcn.1800145f8
test al, al
je 0x180018b76
mov dword [r11 + 0x1bdc], 3
add rdi, 4
lea rax, [rsp + 0x48]
cmp rdi, rax
jne 0x180018b60
mov r13b, byte [r11 + 8]
movdqa xmm0, xmmword [0x180139f40]
mov dword [rsp + 0x38], 0x201
mov dword [rsp + 0x3c], 0x203
mov dword [rsp + 0x40], 0x204
movdqu xmmword [rsp + 0x28], xmm0
and r13b, sil
je 0x180018bdc
lea rdi, [rsp + 0x28]
mov ecx, dword [rdi]
call fcn.1800145f8
test al, al
je 0x180018bce
mov dword [r11 + 0x1bdc], 2
add rdi, 4
lea rax, [rsp + 0x44]
cmp rdi, rax
jne 0x180018bb8
mov edx, dword [r11 + 0x1bec]
test edx, edx
je 0x180018c96
mov r9, qword [r11 + 0x1ba8]
mov rdi, r11
test r9, r9
je 0x180018c96
test byte [r11 + 0x2f7c], 8
lea rsi, [r11 + 0x1be0]
je 0x180018c29
mov r9, qword [r9 + 8]
lea rcx, str._nav__NavInitRequest:_ApplyResult:_NavID_0x_08X_in_Layer__d_Window___s__n
mov r8d, dword [rsi]
call fcn.18001c6d4
mov r11, qword [0x180145c50]
movsxd rax, dword [rsi]
mov esi, 1
mov edx, dword [rbx + 0x1bec]
mov rcx, rax
mov dword [r11 + 0x1be0], eax
mov rax, qword [r11 + 0x1ba8]
mov dword [r11 + 0x1bb0], edx
mov dword [r11 + 0x1bb4], r14d
mov dword [rax + rcx*4 + 0x3b8], edx
add rcx, 0x3c
mov rax, qword [r11 + 0x1ba8]
add rcx, rcx
movups xmm0, xmmword [rdi + 0x1bf0]
movdqu xmmword [rax + rcx*8], xmm0
mov byte [rdi + 0x1be4], sil
cmp byte [rdi + 0x1bea], r14b
je 0x180018c96
mov word [r11 + 0x1be5], si
mov byte [r11 + 0x1be7], sil
mov word [rbx + 0x1be9], r14w
mov dword [rbx + 0x1bec], r14d
mov dword [rbx + 0x1bc8], r14d
cmp byte [rbx + 0x1c00], r14b
je 0x180018cba
call fcn.180019a84
mov bpl, r14b
mov dword [rbx + 0x1c44], r14d
mov dword [rsp + 0x20], ebp
mov word [rbx + 0x1c00], r14w
cmp byte [rbx + 0x1be5], r14b
je 0x180018d06
cmp byte [rbx + 0x1be4], r14b
je 0x180018d06
cmp byte [rbx + 0x1be6], r14b
jne 0x180018d06
cmp byte [rbx + 0x1be7], r14b
je 0x180018d06
cmp qword [rbx + 0x1ba8], r14
movzx ebp, r14b
cmovne ebp, esi
mov dword [rsp + 0x20], ebp
mov rcx, qword [rbx + 0x1ba8]
mov byte [rbx + 0x1be5], r14b
test rcx, rcx
je 0x180018d4b
mov rax, rcx
cmp qword [rax + 0x390], rax
je 0x180018d3f
test dword [rax + 0x14], 0x14000000
jne 0x180018d3a
mov rax, qword [rax + 0x380]
test rax, rax
jne 0x180018d1c
test rax, rax
je 0x180018d4b
cmp rax, rcx
je 0x180018d4b
mov qword [rax + 0x3b0], rcx
mov rax, qword [rbx + 0x1ba8]
test rax, rax
je 0x180018d70
cmp qword [rax + 0x3b0], r14
je 0x180018d70
cmp dword [rbx + 0x1be0], r14d
jne 0x180018d70
mov qword [rax + 0x3b0], r14
call fcn.18001a62c
test r13b, r13b
jne 0x180018d7f
test r12b, r12b
je 0x180018d97
mov rax, qword [rbx + 0x1ba8]
test rax, rax
je 0x180018d97
test dword [rax + 0x14], 0x40000
mov al, sil
je 0x180018d9a
mov al, r14b
mov byte [rbx + 0xdd], al
test al, al
je 0x180018dbf
cmp dword [rbx + 0x1bb0], r14d
je 0x180018dbf
cmp byte [rbx + 0x1be6], r14b
jne 0x180018dbf
lea r15, [rbx + 0x1d10]
jmp 0x180018dce
lea r15, [rbx + 0x1d10]
mov al, r14b
cmp qword [r15], r14
je 0x180018dd1
mov al, sil
mov byte [rbx + 0xde], al
call fcn.180019db4
mov edi, dword [rbx + 0x1bb0]
mov qword [rbx + 0x1bbc], r14
mov dword [rbx + 0x1bb8], r14d
mov dword [rbx + 0x1bc4], r14d
test edi, edi
je 0x180018f6c
cmp byte [rbx + 0x1be6], r14b
jne 0x180018f6c
cmp qword [r15], r14
jne 0x180018f6c
mov rax, qword [rbx + 0x1ba8]
test rax, rax
je 0x180018f6c
test dword [rax + 0x14], 0x40000
jne 0x180018f6c
mov ebp, 0x26e
lea r11d, [rbp - 0x62]
test r13b, r13b
je 0x180018e4c
mov ecx, r11d
call fcn.1800145f8
test al, al
jne 0x180018e5c
test r12b, r12b
je 0x180018e8f
mov ecx, ebp
call fcn.1800145f8
test al, al
je 0x180018e8f
mov r14b, sil
test r13b, r13b
je 0x180018e75
xor r8d, r8d
xor edx, edx
mov ecx, r11d
call fcn.180014624
test al, al
jne 0x180018e8a
test r12b, r12b
je 0x180018e8f
xor r8d, r8d
xor edx, edx
mov ecx, ebp
call fcn.180014624
test al, al
je 0x180018e8f
mov bpl, sil
jmp 0x180018e92
xor bpl, bpl
mov r11d, 0x20d
test r13b, r13b
je 0x180018ea9
mov ecx, r11d
call fcn.1800145f8
test al, al
jne 0x180018ebc
test r12b, r12b
je 0x180018eee
mov ecx, 0x26d
call fcn.1800145f8
test al, al
je 0x180018eee
test r13b, r13b
je 0x180018ed2
xor r8d, r8d
xor edx, edx
mov ecx, r11d
call fcn.180014624
test al, al
jne 0x180018eea
test r12b, r12b
je 0x180018ef1
xor r8d, r8d
xor edx, edx
mov ecx, 0x26d
call fcn.180014624
test al, al
je 0x180018ef1
mov cl, 1
jmp 0x180018ef3
xor sil, sil
xor cl, cl
mov eax, dword [rbx + 0x1228]
test eax, eax
jne 0x180018f14
test bpl, bpl
je 0x180018f18
mov dword [rbx + 0x1bb8], edi
mov dword [rbx + 0x1bc4], 2
jmp 0x180018f18
cmp eax, edi
jne 0x180018f52
test cl, cl
je 0x180018f2c
mov dword [rbx + 0x1bb8], edi
mov dword [rbx + 0x1bc4], 1
test eax, eax
je 0x180018f34
cmp eax, edi
jne 0x180018f52
test r14b, r14b
jne 0x180018f43
xor r14d, r14d
test sil, sil
je 0x180018f4c
jmp 0x180018f46
xor r14d, r14d
mov dword [rbx + 0x1bbc], edi
test eax, eax
je 0x180018f59
jmp 0x180018f55
xor r14d, r14d
cmp eax, edi
jne 0x180018f68
test bpl, bpl
jne 0x180018f62
test cl, cl
je 0x180018f68
mov dword [rbx + 0x1bc0], edi
mov ebp, dword [rsp + 0x20]
mov rax, qword [rbx + 0x1ba8]
test rax, rax
je 0x180018f88
test dword [rax + 0x14], 0x40000
je 0x180018f88
mov byte [rbx + 0x1be6], 1
mov eax, dword [rbx + 0x1bd4]
test eax, eax
je 0x180018fb0
mov dword [rbx + 0x1bc0], eax
mov dword [rbx + 0x1bbc], eax
mov dword [rbx + 0x1bb8], eax
mov eax, dword [rbx + 0x1bd8]
mov dword [rbx + 0x1bc4], eax
mov dword [rbx + 0x1bd4], r14d
call fcn.18001937c
cmp dword [rbx + 0x1c10], 0xffffffff
mov rdi, qword [0x180145c50]
jne 0x1800190a3
mov rsi, qword [rdi + 0x1ba8]
test rsi, rsi
je 0x1800190a3
cmp qword [rdi + 0x1d10], r14
jne 0x1800190a3
test dword [rsi + 0x14], 0x40000
jne 0x1800190a3
mov r8d, 1
or edx, 0xffffffff
mov ecx, 0x200
call fcn.180014624
test al, al
je 0x1800190a3
cmp byte [rdi + 0x120], r14b
jne 0x1800190a3
cmp byte [rdi + 0x122], r14b
jne 0x1800190a3
test byte [rdi + 8], 1
mov al, byte [rdi + 0x121]
je 0x18001905e
test al, al
je 0x180019040
or edx, 0xffffffff
jmp 0x18001906f
cmp byte [rdi + 0x1be6], 1
jne 0x180019057
cmp dword [rdi + 0x1228], r14d
jne 0x180019057
mov edx, r14d
jmp 0x18001906f
mov edx, 1
jmp 0x18001906f
test al, al
jne 0x18001903b
cmp dword [rdi + 0x1228], r14d
mov edx, r14d
setne dl
mov dword [rdi + 0x1c40], edx
mov r8d, 0x400
mov al, byte [rsi + 0xbc]
neg al
sbb r9d, r9d
sar edx, 0x1f
and r9d, 0x1e
add edx, 3
add r9d, 3
or ecx, 0xffffffff
call fcn.180018464
or dword [rdi + 0x1c44], 0xffffffff
cmp byte [rdi + 0x1c01], r14b
jne 0x1800190b8
mov al, r14b
cmp byte [rdi + 0x1be9], r14b
je 0x1800190ba
mov al, 1
mov byte [rdi + 0x1be8], al
mov r11, qword [rbx + 0x1ba8]
mov byte [rbx + 0x1be4], r14b
test r11, r11
je 0x1800192e7
test dword [r11 + 0x14], 0x40000
jne 0x1800192e7
cmp qword [r15], r14
jne 0x1800192e7
mov rax, qword [r11]
movss xmm0, dword [rax + 0xf2c]
mov rax, qword [r11 + 0x380]
mulss xmm0, dword [r11 + 0x2a8]
test rax, rax
je 0x180019116
mulss xmm0, dword [rax + 0x2a8]
mulss xmm0, dword [0x180139dac]
mov ecx, dword [rbx + 0x1c10]
movss xmm2, dword [0x180139cc8]
mulss xmm0, dword [rbx + 0x18]
addss xmm0, dword [0x180139c74]
cvttss2si eax, xmm0
movd xmm4, eax
cvtdq2ps xmm4, xmm4
cmp word [r11 + 0x15c], r14w
jne 0x1800191ec
cmp byte [r11 + 0x161], r14b
je 0x1800191ec
cmp ecx, 0xffffffff
je 0x1800191ec
movss xmm1, dword [0x180139e74]
test ecx, ecx
je 0x18001917e
cmp ecx, 1
jne 0x1800191b0
movaps xmm0, xmm2
jmp 0x180019181
movaps xmm0, xmm1
mulss xmm0, xmm4
mov dword [r11 + 0x9c], r14d
mov dword [r11 + 0xa4], r14d
addss xmm0, dword [r11 + 0x84]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r11 + 0x94], xmm0
cmp ecx, 2
je 0x1800191bd
cmp ecx, 3
jne 0x1800191ec
movaps xmm1, xmm2
mulss xmm1, xmm4
mov dword [r11 + 0xa0], r14d
mov dword [r11 + 0xa8], r14d
addss xmm1, dword [r11 + 0x88]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r11 + 0x98], xmm0
test r12b, r12b
je 0x1800192e7
mov ecx, 0x27a
call fcn.180013fe4
mov ecx, 0x279
mov r8, rax
call fcn.180013fe4
movss xmm0, dword [r8 + 0xc]
mov ecx, 0x27c
subss xmm0, dword [rax + 0xc]
call fcn.180013fe4
mov ecx, 0x27b
mov r8, rax
call fcn.180013fe4
movss xmm1, dword [r8 + 0xc]
mov ecx, 0x273
subss xmm1, dword [rax + 0xc]
call fcn.1800145f8
test al, al
je 0x180019251
movss xmm2, dword [0x180139c4c]
jmp 0x180019267
mov ecx, 0x274
call fcn.1800145f8
test al, al
je 0x180019267
movss xmm2, dword [0x180139d50]
xorps xmm3, xmm3
ucomiss xmm0, xmm3
jp 0x180019271
je 0x1800192ad
cmp byte [r11 + 0xb4], r14b
je 0x1800192ad
mulss xmm0, xmm4
mov dword [r11 + 0x9c], r14d
mov dword [r11 + 0xa4], r14d
mulss xmm0, xmm2
addss xmm0, dword [r11 + 0x84]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r11 + 0x94], xmm0
ucomiss xmm1, xmm3
jp 0x1800192b4
je 0x1800192e7
mulss xmm1, xmm4
mov dword [r11 + 0xa0], r14d
mov dword [r11 + 0xa8], r14d
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 0x1800192fc
test r12b, r12b
jne 0x1800192fc
mov word [rbx + 0x1be6], 1
jmp 0x180019347
test bpl, bpl
je 0x180019347
test byte [rbx + 8], 4
je 0x180019347
test byte [rbx + 0xc], 4
je 0x180019347
lea rcx, [rsp + 0x20]
call fcn.1800187ec
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbx + 0x9ec], xmm0
movss dword [rbx + 0x9f0], xmm1
movss dword [rbx + 0x108], xmm0
movss dword [rbx + 0x10c], xmm1
mov byte [rbx + 0xdb], 1
mov dword [rbx + 0x1c3c], r14d
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.1800ac940
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret