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

Disassembly:
mov rax, rsp
push rbx
push rsi
push r12
push r15
sub rsp, 0xa8
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rdi
mov rdi, qword [0x180233850]
mov qword [rax + 0x20], r13
mov rbx, rdi
mov qword [rax - 0x28], r14
mov r13d, 3
test byte [rdi + 8], 2
mov byte [rdi + 0xd3], 0
je 0x180053926
test byte [rdi + 0xc], 1
je 0x180053926
vmovdqu ymm0, ymmword [0x18020abc0]
vmovdqu ymmword [rsp + 0x40], ymm0
mov sil, 1
lea r11, [rsp + 0x40]
nop dword [rax]
mov ecx, dword [r11]
vzeroupper
call fcn.18004dbd0
test al, al
je 0x180053916
mov dword [rdi + 0x48fc], r13d
add r11, 4
lea rax, [rsp + 0x60]
cmp r11, rax
jne 0x180053900
jmp 0x180053929
xor sil, sil
movzx r14d, byte [rdi + 8]
vmovdqu xmm0, xmmword [0x18020aa00]
and r14b, 1
mov dword [rsp + 0x30], 0x201
mov byte [rsp + 0xd0], r14b
vmovdqu xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x34], 0x203
mov dword [rsp + 0x38], 0x204
je 0x1800539e7
lea r10, [rsp + 0x20]
nop dword [rax + rax]
mov r9d, dword [r10]
mov rcx, rdi
mov edx, r9d
call fcn.18004d4b0
cmp byte [rax], 0
je 0x1800539d9
lea eax, [r9 - 0x200]
cmp eax, 0x8b
jbe 0x1800539be
cmp r9d, 0x1000
je 0x1800539be
cmp r9d, 0x2000
je 0x1800539be
cmp r9d, 0x4000
je 0x1800539be
cmp r9d, 0x8000
je 0x1800539be
cmp r9d, 0x800
jne 0x1800539cf
mov edx, r9d
mov rcx, rdi
call fcn.18003fee0
cmp byte [rax + 8], 0
jne 0x1800539d9
mov dword [rdi + 0x48fc], 2
add r10, 4
lea rax, [rsp + 0x3c]
cmp r10, rax
jne 0x180053970
mov edx, dword [rdi + 0x4918]
xor r15d, r15d
mov dword [rdi + 0x48e8], r15d
test edx, edx
je 0x180053b0c
mov r9, qword [rdi + 0x48c8]
mov rbp, rdi
test r9, r9
je 0x180053b0c
cmp dword [rdi + 0x48d0], edx
je 0x180053a33
mov dword [rdi + 0x48e8], edx
mov eax, dword [rdi + 0x491c]
mov dword [rdi + 0x48ec], eax
mov dword [rdi + 0x48f0], r15d
test byte [rdi + 0x5ce4], 8
je 0x180053a5a
mov r9, qword [r9 + 8]
lea rcx, str._nav__NavInitRequest:_ApplyResult:_NavID_0x_08X_in_Layer__d_Window___s__n
mov r8d, dword [rdi + 0x4900]
call fcn.180057ac0
mov rdi, qword [0x180233850]
mov eax, dword [rbp + 0x491c]
movsxd rcx, dword [rbp + 0x4900]
mov edx, dword [rbp + 0x4918]
mov r8, rcx
mov dword [rdi + 0x48d4], eax
add r8, r8
mov rax, qword [rdi + 0x48c8]
mov dword [rdi + 0x48d0], edx
mov dword [rdi + 0x4900], ecx
mov dword [rax + rcx*4 + 0x3a0], edx
mov rax, qword [rdi + 0x48c8]
vmovups xmm0, xmmword [rbp + 0x4920]
vmovups xmmword [rax + r8*8 + 0x3a8], xmm0
mov rax, qword [rdi + 0x48c8]
movsxd rdx, dword [rdi + 0x4900]
mov rcx, qword [rax + 0x390]
mov dword [rcx + rdx*8 + 0x3c8], 0x7f7fffff
mov rax, qword [rdi + 0x48c8]
movsxd rdx, dword [rdi + 0x4900]
mov rcx, qword [rax + 0x390]
mov dword [rcx + rdx*8 + 0x3cc], 0x7f7fffff
mov byte [rbp + 0x4904], 1
cmp byte [rbp + 0x490a], r15b
je 0x180053b0c
mov word [rdi + 0x4905], 1
mov byte [rdi + 0x4907], 1
mov word [rbx + 0x4909], r15w
mov dword [rbx + 0x4918], r15d
cmp byte [rbx + 0x4940], r15b
je 0x180053b29
call fcn.180054bb0
xor r12b, r12b
mov dword [rbx + 0x4984], r15d
mov ebp, 1
mov word [rbx + 0x4940], r15w
cmp byte [rbx + 0x4905], r12b
je 0x180053b73
cmp byte [rbx + 0x4904], r12b
je 0x180053b73
cmp byte [rbx + 0x4906], r12b
jne 0x180053b73
cmp byte [rbx + 0x4907], r12b
je 0x180053b73
cmp qword [rbx + 0x48c8], r15
movzx r12d, r12b
cmovne r12d, ebp
mov rcx, qword [rbx + 0x48c8]
mov byte [rbx + 0x4905], r15b
test rcx, rcx
je 0x180053bbc
mov rax, rcx
nop dword [rax]
cmp qword [rax + 0x378], rax
je 0x180053bb0
test dword [rax + 0x14], 0x14000000
jne 0x180053bb0
mov rax, qword [rax + 0x368]
test rax, rax
jne 0x180053b90
jmp 0x180053bbc
cmp rax, rcx
je 0x180053bbc
mov qword [rax + 0x398], rcx
mov rax, qword [rbx + 0x48c8]
test rax, rax
je 0x180053be1
cmp qword [rax + 0x398], r15
je 0x180053be1
cmp dword [rbx + 0x4900], r15d
jne 0x180053be1
mov qword [rax + 0x398], r15
call fcn.1800559e0
test r14b, r14b
jne 0x180053bf4
test sil, sil
je 0x180053d1b
mov rax, qword [rbx + 0x48c8]
test rax, rax
je 0x180053d1b
test dword [rax + 0x14], 0x40000
jne 0x180053d1b
mov byte [rbx + 0xd5], bpl
cmp dword [rbx + 0x48d0], r15d
je 0x180053d22
cmp byte [rbx + 0x4906], r15b
jne 0x180053d22
movzx eax, bpl
mov byte [rbx + 0xd6], al
call fcn.180055020
mov qword [rbx + 0x48dc], r15
mov dword [rbx + 0x48d8], r15d
mov dword [rbx + 0x48e4], r15d
cmp dword [rbx + 0x48d0], r15d
je 0x180053e4c
cmp byte [rbx + 0x4906], r15b
jne 0x180053e4c
cmp qword [rbx + 0x4a50], r15
jne 0x180053e4c
mov rax, qword [rbx + 0x48c8]
test rax, rax
je 0x180053e4c
test dword [rax + 0x14], 0x40000
jne 0x180053e4c
mov rdi, qword [0x180233850]
test r14b, r14b
je 0x180053cc1
mov edx, 0x20c
mov rcx, rdi
call fcn.18004d4b0
cmp byte [rax], r15b
je 0x180053cc1
cmp byte [rdi + 0x4020], r15b
je 0x180053ce1
test sil, sil
je 0x180053d36
mov edx, 0x26e
mov rcx, rdi
call fcn.18004d4b0
cmp byte [rax], r15b
je 0x180053d36
cmp byte [rdi + 0x44b8], r15b
jne 0x180053d36
movzx r15d, bpl
test r14b, r14b
je 0x180053cfd
xor r8d, r8d
xor edx, edx
mov ecx, 0x20c
call fcn.18004dc50
test al, al
jne 0x180053d15
test sil, sil
je 0x180053d36
xor r8d, r8d
xor edx, edx
mov ecx, 0x26e
call fcn.18004dc50
test al, al
je 0x180053d36
movzx r14d, bpl
jmp 0x180053d39
mov byte [rbx + 0xd5], r15b
cmp qword [rbx + 0x4a50], r15
jne 0x180053c32
xor al, al
jmp 0x180053c36
xor r14b, r14b
movzx r9d, byte [rsp + 0xd0]
test r9b, r9b
je 0x180053d62
mov edx, 0x20d
mov rcx, rdi
call fcn.18004d4b0
cmp byte [rax], 0
je 0x180053d62
cmp byte [rdi + 0x402c], 0
je 0x180053d82
test sil, sil
je 0x180053dbc
mov edx, 0x26d
mov rcx, rdi
call fcn.18004d4b0
cmp byte [rax], 0
je 0x180053dbc
cmp byte [rdi + 0x44ac], 0
jne 0x180053dbc
movzx edi, bpl
test r9b, r9b
je 0x180053d9e
xor r8d, r8d
xor edx, edx
mov ecx, 0x20d
call fcn.18004dc50
test al, al
jne 0x180053db6
test sil, sil
je 0x180053dbf
xor r8d, r8d
xor edx, edx
mov ecx, 0x26d
call fcn.18004dc50
test al, al
je 0x180053dbf
movzx edx, bpl
jmp 0x180053dc1
xor dil, dil
xor dl, dl
mov ecx, dword [rbx + 0x3f40]
test ecx, ecx
jne 0x180053de8
test r14b, r14b
je 0x180053df0
mov eax, dword [rbx + 0x48d0]
mov dword [rbx + 0x48d8], eax
mov dword [rbx + 0x48e4], 2
jmp 0x180053df0
cmp ecx, dword [rbx + 0x48d0]
jne 0x180053e49
test dl, dl
je 0x180053e06
mov eax, dword [rbx + 0x48d0]
mov dword [rbx + 0x48d8], eax
mov dword [rbx + 0x48e4], ebp
test ecx, ecx
je 0x180053e12
cmp ecx, dword [rbx + 0x48d0]
jne 0x180053e49
test r15b, r15b
jne 0x180053e1c
test dil, dil
je 0x180053e28
mov eax, dword [rbx + 0x48d0]
mov dword [rbx + 0x48dc], eax
test ecx, ecx
je 0x180053e34
cmp ecx, dword [rbx + 0x48d0]
jne 0x180053e49
test r14b, r14b
jne 0x180053e3d
test dl, dl
je 0x180053e49
mov eax, dword [rbx + 0x48d0]
mov dword [rbx + 0x48e0], eax
xor r15d, r15d
mov rax, qword [rbx + 0x48c8]
test rax, rax
je 0x180053e68
test dword [rax + 0x14], 0x40000
je 0x180053e68
mov byte [rbx + 0x4906], bpl
mov eax, dword [rbx + 0x48f4]
test eax, eax
je 0x180053e90
mov dword [rbx + 0x48e0], eax
mov dword [rbx + 0x48dc], eax
mov dword [rbx + 0x48d8], eax
mov eax, dword [rbx + 0x48f8]
mov dword [rbx + 0x48e4], eax
mov dword [rbx + 0x48f4], r15d
call fcn.180054320
cmp dword [rbx + 0x4950], 0xffffffff
mov rdi, qword [0x180233850]
jne 0x180053f90
mov r14, qword [rdi + 0x48c8]
test r14, r14
je 0x180053f90
cmp qword [rdi + 0x4a50], 0
jne 0x180053f90
test dword [r14 + 0x14], 0x40000
jne 0x180053f90
mov r8d, ebp
mov edx, 0xffffffff
mov ecx, 0x200
call fcn.18004dc50
test al, al
je 0x180053f90
cmp byte [rdi + 0xe1c], 0
jne 0x180053f90
cmp byte [rdi + 0xe1e], 0
jne 0x180053f90
movzx eax, byte [rdi + 0xe1d]
test byte [rdi + 8], bpl
je 0x180053f3f
test al, al
je 0x180053f28
mov ebp, 0xffffffff
jmp 0x180053f58
cmp byte [rdi + 0x4906], bpl
jne 0x180053f58
cmp dword [rdi + 0x3f40], 0
jne 0x180053f58
mov ebp, r15d
jmp 0x180053f58
test al, al
je 0x180053f4a
mov ebp, 0xffffffff
jmp 0x180053f58
cmp dword [rdi + 0x3f40], 0
mov ebp, r15d
setne bpl
mov dword [rdi + 0x4980], ebp
mov eax, 0x21
cmp byte [r14 + 0xbc], 0
mov r8d, 0x1400
cmovne r13d, eax
sar ebp, 0x1f
mov r9d, r13d
lea ecx, [rax - 0x22]
lea edx, [rbp + 3]
call fcn.180053090
mov dword [rdi + 0x4984], 0xffffffff
cmp byte [rdi + 0x4941], 0
mov r14, qword [rsp + 0xa0]
mov r13, qword [rsp + 0xe8]
mov rbp, qword [rsp + 0xd8]
jne 0x180053fbe
cmp byte [rdi + 0x4909], 0
jne 0x180053fbe
xor al, al
jmp 0x180053fc0
mov al, 1
mov byte [rdi + 0x4908], al
mov r11, qword [rbx + 0x48c8]
mov byte [rbx + 0x4904], 0
test r11, r11
je 0x180054293
test dword [r11 + 0x14], 0x40000
jne 0x180054293
cmp qword [rbx + 0x4a50], 0
jne 0x180054293
mov rax, qword [r11]
vmovaps xmmword [rsp + 0x90], xmm6
vmovaps xmmword [rsp + 0x80], xmm7
vmovss xmm0, dword [rax + 0x3c1c]
mov rax, qword [r11 + 0x368]
vmulss xmm1, xmm0, dword [r11 + 0x290]
test rax, rax
je 0x180054033
vmulss xmm1, xmm1, dword [rax + 0x290]
cmp word [r11 + 0x15c], 0
vmulss xmm0, xmm1, dword [0x18020a500]
vmulss xmm1, xmm0, dword [rbx + 0x18]
vaddss xmm1, xmm1, dword [0x18020a2f8]
mov ecx, dword [rbx + 0x4950]
vmovss xmm7, dword [0x18020a348]
vcvttss2si eax, xmm1
vxorps xmm6, xmm6, xmm6
vcvtsi2ss xmm6, xmm6, eax
jne 0x180054127
cmp byte [r11 + 0x162], 0
je 0x180054127
cmp ecx, 0xffffffff
je 0x180054127
vmovss xmm3, dword [0x18020a658]
cmp ecx, 1
ja 0x1800540d8
vmovd xmm0, ecx
vmovd xmm1, r15d
vpcmpeqd xmm2, xmm0, xmm1
vblendvps xmm0, xmm7, xmm3, xmm2
vmulss xmm1, xmm0, xmm6
vaddss xmm2, xmm1, dword [r11 + 0x84]
vcvttss2si eax, xmm2
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [r11 + 0x94], xmm0
mov dword [r11 + 0x9c], r15d
mov dword [r11 + 0xa4], r15d
lea eax, [rcx - 2]
cmp eax, 1
ja 0x180054127
vmovd xmm0, ecx
mov eax, 2
mov dword [r11 + 0xa0], r15d
vmovd xmm1, eax
vpcmpeqd xmm2, xmm0, xmm1
vblendvps xmm0, xmm7, xmm3, xmm2
vmulss xmm1, xmm0, xmm6
vaddss xmm2, xmm1, dword [r11 + 0x88]
vcvttss2si eax, xmm2
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [r11 + 0x98], xmm0
mov dword [r11 + 0xa8], r15d
test sil, sil
je 0x180054281
vmovaps xmmword [rsp + 0x70], xmm8
mov edx, 0x27b
mov rcx, rdi
vmovaps xmmword [rsp + 0x60], xmm9
call fcn.18004d4b0
mov edx, 0x27a
mov rcx, rdi
mov r10, rax
call fcn.18004d4b0
mov edx, 0x279
mov rcx, rdi
mov r9, rax
call fcn.18004d4b0
vmovss xmm0, dword [r9 + 0xc]
mov edx, 0x27c
mov rcx, rdi
vsubss xmm8, xmm0, dword [rax + 0xc]
call fcn.18004d4b0
mov edx, 0x273
mov rcx, rdi
vmovss xmm0, dword [rax + 0xc]
vsubss xmm9, xmm0, dword [r10 + 0xc]
call fcn.18004d4b0
cmp byte [rax], 0
je 0x1800541b1
cmp byte [rdi + 0x44f4], 0
jne 0x1800541b1
vmovss xmm3, dword [0x18020a2a0]
jmp 0x1800541ef
mov edx, 0x274
mov rcx, rdi
call fcn.18004d4b0
cmp byte [rax], 0
jne 0x1800541c7
xor al, al
jmp 0x1800541d1
cmp byte [rdi + 0x4500], 0
sete al
vmovd xmm1, r15d
movzx eax, al
vmovd xmm0, eax
vpcmpeqd xmm2, xmm0, xmm1
vmovss xmm1, dword [0x18020a420]
vblendvps xmm3, xmm1, xmm7, xmm2
vxorps xmm4, xmm4, xmm4
vucomiss xmm8, xmm4
jp 0x1800541fb
je 0x180054239
cmp byte [r11 + 0xb4], 0
je 0x180054239
vmulss xmm0, xmm8, xmm6
vmulss xmm1, xmm0, xmm3
vaddss xmm2, xmm1, dword [r11 + 0x84]
vcvttss2si eax, xmm2
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [r11 + 0x94], xmm0
mov dword [r11 + 0x9c], r15d
mov dword [r11 + 0xa4], r15d
vucomiss xmm9, xmm4
vmovaps xmm8, xmmword [rsp + 0x70]
jp 0x180054247
je 0x18005427b
vmulss xmm0, xmm9, xmm6
vmulss xmm1, xmm0, xmm3
vaddss xmm2, xmm1, dword [r11 + 0x88]
vcvttss2si eax, xmm2
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [r11 + 0x98], xmm0
mov dword [r11 + 0xa0], r15d
mov dword [r11 + 0xa8], r15d
vmovaps xmm9, xmmword [rsp + 0x60]
vmovaps xmm6, xmmword [rsp + 0x90]
vmovaps xmm7, xmmword [rsp + 0x80]
cmp byte [rsp + 0xd0], 0
mov rdi, qword [rsp + 0xe0]
jne 0x1800542b5
test sil, sil
jne 0x1800542b5
mov word [rbx + 0x4906], 1
jmp 0x180054303
test r12b, r12b
je 0x180054303
test byte [rbx + 8], 4
je 0x180054303
test byte [rbx + 0xc], 4
je 0x180054303
lea rcx, [rsp + 0xd0]
call fcn.180053590
vmovss xmm0, dword [rax]
vmovss xmm1, dword [rax + 4]
vmovss dword [rbx + 0x36e8], xmm0
vmovss dword [rbx + 0x36ec], xmm1
vmovss dword [rbx + 0xe00], xmm0
vmovss dword [rbx + 0xe04], xmm1
mov byte [rbx + 0xd3], 1
mov dword [rbx + 0x497c], r15d
add rsp, 0xa8
pop r15
pop r12
pop rsi
pop rbx
ret