Function at 0x180042158
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, 0x60
mov rdi, qword [0x1801aa2d0]
xor r13d, r13d
mov rbx, rdi
test byte [rdi + 8], 2
lea ebp, [r13 + 1]
mov byte [rdi + 0xdb], r13b
je 0x18004219b
mov r15b, bpl
test byte [rdi + 0xc], bpl
jne 0x18004219e
mov r15b, r13b
movdqa xmm0, xmmword [0x180158800]
movdqa xmm1, xmmword [0x180158810]
movdqu xmmword [rsp + 0x40], xmm0
movdqu xmmword [rsp + 0x50], xmm1
test r15b, r15b
je 0x1800421e7
lea rsi, [rsp + 0x40]
mov ecx, dword [rsi]
call fcn.18003d990
test al, al
je 0x1800421d9
mov dword [rdi + 0x48dc], 3
add rsi, 4
lea rax, [rsp + 0x60]
cmp rsi, rax
jne 0x1800421c4
mov r12b, byte [rdi + 8]
movdqa xmm0, xmmword [0x1801587f0]
mov dword [rsp + 0x30], 0x201
mov dword [rsp + 0x34], 0x203
mov dword [rsp + 0x38], 0x204
movdqu xmmword [rsp + 0x20], xmm0
and r12b, bpl
je 0x18004223e
lea rsi, [rsp + 0x20]
mov ecx, dword [rsi]
call fcn.18003d990
test al, al
je 0x180042230
mov dword [rdi + 0x48dc], 2
add rsi, 4
lea rax, [rsp + 0x3c]
cmp rsi, rax
jne 0x18004221b
mov edx, dword [rdi + 0x48ec]
test edx, edx
je 0x1800422ee
mov r9, qword [rdi + 0x48a8]
mov rsi, rdi
test r9, r9
je 0x1800422ee
test byte [rdi + 0x5c94], 8
lea r14, [rdi + 0x48e0]
je 0x180042289
mov r9, qword [r9 + 8]
lea rcx, str._nav__NavInitRequest:_ApplyResult:_NavID_0x_08X_in_Layer__d_Window___s__n
mov r8d, dword [r14]
call fcn.1800454c8
mov rdi, qword [0x1801aa2d0]
movsxd rax, dword [r14]
mov ecx, dword [rbx + 0x48ec]
mov rdx, rax
mov dword [rdi + 0x48e0], eax
mov rax, qword [rdi + 0x48a8]
mov dword [rdi + 0x48b0], ecx
mov dword [rdi + 0x48b4], r13d
mov dword [rax + rdx*4 + 0x3a0], ecx
add rdx, rdx
mov rax, qword [rdi + 0x48a8]
movups xmm0, xmmword [rsi + 0x48f0]
movdqu xmmword [rax + rdx*8 + 0x3a8], xmm0
mov byte [rsi + 0x48e4], bpl
cmp byte [rsi + 0x48ea], r13b
je 0x1800422ee
mov word [rdi + 0x48e5], bp
mov byte [rdi + 0x48e7], bpl
mov word [rbx + 0x48e9], r13w
mov dword [rbx + 0x48ec], r13d
mov dword [rbx + 0x48c8], r13d
cmp byte [rbx + 0x4900], r13b
je 0x180042312
call fcn.1800430e0
mov dword [rbx + 0x4944], r13d
mov word [rbx + 0x4900], r13w
movzx r14d, r13b
cmp byte [rbx + 0x48e5], r13b
je 0x180042354
cmp byte [rbx + 0x48e4], r13b
je 0x180042354
cmp byte [rbx + 0x48e6], r13b
jne 0x180042354
cmp byte [rbx + 0x48e7], r13b
je 0x180042354
cmp qword [rbx + 0x48a8], r13
cmovne r14d, ebp
mov rcx, qword [rbx + 0x48a8]
mov byte [rbx + 0x48e5], r13b
test rcx, rcx
je 0x180042399
mov rax, rcx
cmp qword [rax + 0x378], rax
je 0x18004238d
test dword [rax + 0x14], 0x14000000
jne 0x180042388
mov rax, qword [rax + 0x368]
test rax, rax
jne 0x18004236a
test rax, rax
je 0x180042399
cmp rax, rcx
je 0x180042399
mov qword [rax + 0x398], rcx
mov rax, qword [rbx + 0x48a8]
mov rcx, rax
test rax, rax
je 0x1800423c8
cmp qword [rax + 0x398], r13
je 0x1800423c8
cmp dword [rbx + 0x48e0], r13d
jne 0x1800423c8
mov qword [rax + 0x398], r13
mov rcx, qword [rbx + 0x48a8]
test r12b, r12b
jne 0x1800423d2
test r15b, r15b
je 0x1800423e3
test rcx, rcx
je 0x1800423e3
test dword [rcx + 0x14], 0x40000
mov al, bpl
je 0x1800423e6
mov al, r13b
mov byte [rbx + 0xdd], al
test al, al
je 0x180042402
cmp dword [rbx + 0x48b0], r13d
je 0x180042402
cmp byte [rbx + 0x48e6], r13b
je 0x18004240e
mov al, r13b
cmp qword [rbx + 0x4a10], r13
je 0x180042411
mov al, bpl
mov byte [rbx + 0xde], al
call fcn.1800433f4
mov qword [rbx + 0x48bc], r13
mov dword [rbx + 0x48b8], r13d
mov dword [rbx + 0x48c4], r13d
cmp dword [rbx + 0x48b0], r13d
je 0x1800425c7
cmp byte [rbx + 0x48e6], r13b
jne 0x1800425c7
cmp qword [rbx + 0x4a10], r13
jne 0x1800425c7
mov rax, qword [rbx + 0x48a8]
test rax, rax
je 0x1800425c7
test dword [rax + 0x14], 0x40000
jne 0x1800425c7
mov esi, 0x26e
lea edi, [rsi - 0x62]
test r12b, r12b
je 0x18004248d
mov ecx, edi
call fcn.18003d990
test al, al
jne 0x18004249d
test r15b, r15b
je 0x1800424cc
mov ecx, esi
call fcn.18003d990
test al, al
je 0x1800424cc
test r12b, r12b
je 0x1800424b2
xor r8d, r8d
xor edx, edx
mov ecx, edi
call fcn.18003d9c8
test al, al
jne 0x1800424c7
test r15b, r15b
je 0x1800424cf
xor r8d, r8d
xor edx, edx
mov ecx, esi
call fcn.18003d9c8
test al, al
je 0x1800424cf
mov dil, bpl
jmp 0x1800424d2
mov bpl, r13b
mov dil, r13b
test r12b, r12b
je 0x1800424e5
mov ecx, 0x20d
call fcn.18003d990
test al, al
jne 0x1800424f8
test r15b, r15b
je 0x180042530
mov ecx, 0x26d
call fcn.18003d990
test al, al
je 0x180042530
mov sil, 1
test r12b, r12b
je 0x180042513
xor r8d, r8d
xor edx, edx
mov ecx, 0x20d
call fcn.18003d9c8
test al, al
jne 0x18004252b
test r15b, r15b
je 0x180042533
xor r8d, r8d
xor edx, edx
mov ecx, 0x26d
call fcn.18003d9c8
test al, al
je 0x180042533
mov dl, sil
jmp 0x180042536
mov sil, r13b
mov dl, r13b
mov ecx, dword [rbx + 0x3f28]
test ecx, ecx
jne 0x18004255d
test dil, dil
je 0x180042565
mov eax, dword [rbx + 0x48b0]
mov dword [rbx + 0x48b8], eax
mov dword [rbx + 0x48c4], 2
jmp 0x180042565
cmp ecx, dword [rbx + 0x48b0]
jne 0x1800425c2
test dl, dl
je 0x18004257f
mov eax, dword [rbx + 0x48b0]
mov dword [rbx + 0x48b8], eax
mov dword [rbx + 0x48c4], 1
test ecx, ecx
je 0x18004258b
cmp ecx, dword [rbx + 0x48b0]
jne 0x1800425c2
test bpl, bpl
jne 0x180042595
test sil, sil
je 0x1800425a1
mov eax, dword [rbx + 0x48b0]
mov dword [rbx + 0x48bc], eax
test ecx, ecx
je 0x1800425ad
cmp ecx, dword [rbx + 0x48b0]
jne 0x1800425c2
test dil, dil
jne 0x1800425b6
test dl, dl
je 0x1800425c2
mov eax, dword [rbx + 0x48b0]
mov dword [rbx + 0x48c0], eax
mov ebp, 1
mov rax, qword [rbx + 0x48a8]
test rax, rax
je 0x1800425e3
test dword [rax + 0x14], 0x40000
je 0x1800425e3
mov byte [rbx + 0x48e6], bpl
mov eax, dword [rbx + 0x48d4]
test eax, eax
je 0x18004260b
mov dword [rbx + 0x48c0], eax
mov dword [rbx + 0x48bc], eax
mov dword [rbx + 0x48b8], eax
mov eax, dword [rbx + 0x48d8]
mov dword [rbx + 0x48c4], eax
mov dword [rbx + 0x48d4], r13d
call fcn.1800429c0
cmp dword [rbx + 0x4910], 0xffffffff
mov rsi, qword [0x1801aa2d0]
jne 0x1800426f4
mov rdi, qword [rsi + 0x48a8]
test rdi, rdi
je 0x1800426f4
cmp qword [rsi + 0x4a10], r13
jne 0x1800426f4
test dword [rdi + 0x14], 0x40000
jne 0x1800426f4
mov r8d, ebp
or edx, 0xffffffff
mov ecx, 0x200
call fcn.18003d9c8
test al, al
je 0x1800426f4
cmp byte [rsi + 0xe24], r13b
jne 0x1800426f4
cmp byte [rsi + 0xe26], r13b
jne 0x1800426f4
mov al, byte [rsi + 0xe25]
test byte [rsi + 8], bpl
je 0x1800426af
test al, al
je 0x180042694
or edx, 0xffffffff
jmp 0x1800426c0
cmp byte [rsi + 0x48e6], bpl
jne 0x1800426ab
cmp dword [rsi + 0x3f28], r13d
jne 0x1800426ab
mov edx, r13d
jmp 0x1800426c0
mov edx, ebp
jmp 0x1800426c0
test al, al
jne 0x18004268f
cmp dword [rsi + 0x3f28], r13d
mov edx, r13d
setne dl
mov dword [rsi + 0x4940], edx
mov r8d, 0x400
mov al, byte [rdi + 0xbc]
neg al
sbb r9d, r9d
sar edx, 0x1f
and r9d, 0x1e
add edx, 3
add r9d, 3
or ecx, 0xffffffff
call fcn.180041b44
or dword [rsi + 0x4944], 0xffffffff
cmp byte [rsi + 0x4901], r13b
jne 0x180042709
mov al, r13b
cmp byte [rsi + 0x48e9], r13b
je 0x18004270c
mov al, bpl
mov byte [rsi + 0x48e8], al
mov rdi, qword [rbx + 0x48a8]
mov byte [rbx + 0x48e4], r13b
test rdi, rdi
je 0x180042936
test dword [rdi + 0x14], 0x40000
jne 0x180042936
cmp qword [rbx + 0x4a10], r13
jne 0x180042936
mov rax, qword [rdi]
movss xmm0, dword [rax + 0x3c2c]
mov rax, qword [rdi + 0x368]
mulss xmm0, dword [rdi + 0x290]
test rax, rax
je 0x18004276a
mulss xmm0, dword [rax + 0x290]
mulss xmm0, dword [0x180158640]
mov ecx, dword [rbx + 0x4910]
movss xmm2, dword [0x1801584fc]
mulss xmm0, dword [rbx + 0x18]
addss xmm0, dword [0x1801584a4]
cvttss2si eax, xmm0
movd xmm4, eax
cvtdq2ps xmm4, xmm4
cmp word [rdi + 0x15c], r13w
jne 0x180042837
cmp byte [rdi + 0x161], r13b
je 0x180042837
cmp ecx, 0xffffffff
je 0x180042837
movss xmm1, dword [0x180158700]
test ecx, ecx
je 0x1800427cd
cmp ecx, ebp
jne 0x1800427fd
movaps xmm0, xmm2
jmp 0x1800427d0
movaps xmm0, xmm1
mulss xmm0, xmm4
mov dword [rdi + 0x9c], r13d
mov dword [rdi + 0xa4], r13d
addss xmm0, dword [rdi + 0x84]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rdi + 0x94], xmm0
cmp ecx, 2
je 0x18004280a
cmp ecx, 3
jne 0x180042837
movaps xmm1, xmm2
mulss xmm1, xmm4
mov dword [rdi + 0xa0], r13d
mov dword [rdi + 0xa8], r13d
addss xmm1, dword [rdi + 0x88]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rdi + 0x98], xmm0
test r15b, r15b
je 0x180042936
mov edx, 0x27b
mov rcx, rsi
call fcn.18003d34c
mov edx, 0x279
mov rcx, rsi
mov r10, rax
call fcn.18003d34c
mov edx, 0x27a
mov rcx, rsi
mov r9, rax
call fcn.18003d34c
mov edx, 0x27c
mov rcx, rsi
movss xmm0, dword [rax + 0xc]
subss xmm0, dword [r9 + 0xc]
call fcn.18003d34c
mov ecx, 0x273
movss xmm1, dword [rax + 0xc]
subss xmm1, dword [r10 + 0xc]
call fcn.18003d990
test al, al
je 0x1800428a8
movss xmm2, dword [0x18015844c]
jmp 0x1800428be
mov ecx, 0x274
call fcn.18003d990
test al, al
je 0x1800428be
movss xmm2, dword [0x1801585cc]
xorps xmm3, xmm3
ucomiss xmm0, xmm3
je 0x180042900
cmp byte [rdi + 0xb4], r13b
je 0x180042900
mulss xmm0, xmm4
mov dword [rdi + 0x9c], r13d
mov dword [rdi + 0xa4], r13d
mulss xmm0, xmm2
addss xmm0, dword [rdi + 0x84]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rdi + 0x94], xmm0
ucomiss xmm1, xmm3
je 0x180042936
mulss xmm1, xmm4
mov dword [rdi + 0xa0], r13d
mov dword [rdi + 0xa8], r13d
mulss xmm1, xmm2
addss xmm1, dword [rdi + 0x88]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rdi + 0x98], xmm0
test r12b, r12b
jne 0x18004294b
test r15b, r15b
jne 0x18004294b
mov word [rbx + 0x48e6], 1
jmp 0x180042999
test r14b, r14b
je 0x180042999
test byte [rbx + 8], 4
je 0x180042999
test byte [rbx + 0xc], 4
je 0x180042999
lea rcx, [rsp + 0x90]
call fcn.180041ec0
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbx + 0x36f0], xmm0
movss dword [rbx + 0x36f4], xmm1
movss dword [rbx + 0xe08], xmm0
movss dword [rbx + 0xe0c], xmm1
mov byte [rbx + 0xdb], bpl
lea r11, [rsp + 0x60]
mov dword [rbx + 0x493c], r13d
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