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

Disassembly:
mov r11, rsp
push rbx
push rsi
push r12
push r15
sub rsp, 0x78
mov rax, qword [0x14025e900]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov rbx, qword [0x14025f8e0]
mov qword [r11 + 8], rbp
mov qword [r11 + 0x10], rdi
mov qword [r11 + 0x18], r13
test byte [rbx + 8], 2
mov qword [r11 - 0x28], r14
mov byte [rbx + 0xdb], 0
je 0x140045658
test byte [rbx + 0xc], 1
je 0x140045658
movdqa xmm0, xmmword [0x140131a10]
lea r14, [r11 - 0x50]
movdqa xmm1, xmmword [0x140131a20]
mov sil, 1
mov rbp, qword [0x14025f8e0]
movdqu xmmword [rsp + 0x48], xmm0
movdqu xmmword [rsp + 0x58], xmm1
nop dword [rax + rax]
mov edi, dword [r14]
mov rcx, rbp
mov edx, edi
call fcn.140040b20
cmp byte [rax], 0
je 0x140045648
lea eax, [rdi - 0x200]
cmp eax, 0x8b
jbe 0x140045627
cmp edi, 0x1000
je 0x140045627
cmp edi, 0x2000
je 0x140045627
cmp edi, 0x4000
je 0x140045627
cmp edi, 0x8000
je 0x140045627
cmp edi, 0x800
jne 0x140045637
mov edx, edi
mov rcx, rbp
call fcn.140040c80
cmp byte [rax + 8], 0
jne 0x140045648
mov dword [rbx + 0x48e4], 3
mov rbp, qword [0x14025f8e0]
add r14, 4
lea rax, [rsp + 0x68]
cmp r14, rax
jne 0x1400455e0
jmp 0x140045662
mov rbp, qword [0x14025f8e0]
xor sil, sil
movzx r13d, byte [rbx + 8]
movdqa xmm0, xmmword [0x140131a00]
mov dword [rsp + 0x38], 0x201
mov dword [rsp + 0x3c], 0x203
mov dword [rsp + 0x40], 0x204
movdqu xmmword [rsp + 0x28], xmm0
and r13b, 1
je 0x140045716
lea r14, [rsp + 0x28]
nop dword [rax]
mov edi, dword [r14]
mov rcx, rbp
mov edx, edi
call fcn.140040b20
cmp byte [rax], 0
je 0x140045708
lea eax, [rdi - 0x200]
cmp eax, 0x8b
jbe 0x1400456e7
cmp edi, 0x1000
je 0x1400456e7
cmp edi, 0x2000
je 0x1400456e7
cmp edi, 0x4000
je 0x1400456e7
cmp edi, 0x8000
je 0x1400456e7
cmp edi, 0x800
jne 0x1400456f7
mov edx, edi
mov rcx, rbp
call fcn.140040c80
cmp byte [rax + 8], 0
jne 0x140045708
mov dword [rbx + 0x48e4], 2
mov rbp, qword [0x14025f8e0]
add r14, 4
lea rax, [rsp + 0x44]
cmp r14, rax
jne 0x1400456a0
xor r15d, r15d
mov dword [rbx + 0x48d0], r15d
cmp dword [rbx + 0x4900], r15d
je 0x14004585a
mov rdi, qword [0x14025f8e0]
mov r9, qword [rdi + 0x48b0]
test r9, r9
je 0x14004585a
mov edx, dword [rdi + 0x4900]
cmp dword [rdi + 0x48b8], edx
je 0x14004576b
mov dword [rdi + 0x48d0], edx
mov eax, dword [rdi + 0x4904]
mov dword [rdi + 0x48d4], eax
mov dword [rdi + 0x48d8], r15d
test byte [rdi + 0x5cbc], 8
je 0x14004578b
mov r9, qword [r9 + 8]
lea rcx, str._nav__NavInitRequest:_ApplyResult:_NavID_0x_08X_in_Layer__d_Window___s__n
mov r8d, dword [rdi + 0x48e8]
call fcn.14003de80
mov r8, qword [0x14025f8e0]
mov eax, dword [rdi + 0x4904]
movsxd rcx, dword [rdi + 0x48e8]
mov edx, dword [rdi + 0x4900]
mov r9, rcx
mov dword [r8 + 0x48bc], eax
add r9, r9
mov rax, qword [r8 + 0x48b0]
mov dword [r8 + 0x48b8], edx
mov dword [r8 + 0x48e8], ecx
mov dword [rax + rcx*4 + 0x3a0], edx
mov rax, qword [r8 + 0x48b0]
movups xmm0, xmmword [rdi + 0x4908]
movups xmmword [rax + r9*8 + 0x3a8], xmm0
mov rax, qword [0x14025f8e0]
movsxd rdx, dword [rax + 0x48e8]
mov rax, qword [rax + 0x48b0]
mov rcx, qword [rax + 0x390]
mov dword [rcx + rdx*8 + 0x3c8], 0x7f7fffff
mov rax, qword [0x14025f8e0]
movsxd rdx, dword [rax + 0x48e8]
mov rax, qword [rax + 0x48b0]
mov rcx, qword [rax + 0x390]
mov dword [rcx + rdx*8 + 0x3cc], 0x7f7fffff
mov byte [rdi + 0x48ec], 1
cmp byte [rdi + 0x48f2], r15b
je 0x14004585a
mov rax, qword [0x14025f8e0]
mov word [rax + 0x48ed], 1
mov byte [rax + 0x48ef], 1
mov word [rbx + 0x48f1], r15w
mov dword [rbx + 0x4900], r15d
cmp byte [rbx + 0x4928], r15b
je 0x140045877
call fcn.140044500
xor r12b, r12b
mov dword [rbx + 0x496c], r15d
mov ebp, 1
mov word [rbx + 0x4928], r15w
cmp byte [rbx + 0x48ed], r12b
je 0x1400458c1
cmp byte [rbx + 0x48ec], r12b
je 0x1400458c1
cmp byte [rbx + 0x48ee], r12b
jne 0x1400458c1
cmp byte [rbx + 0x48ef], r12b
je 0x1400458c1
cmp qword [rbx + 0x48b0], r15
movzx r12d, r12b
cmovne r12d, ebp
mov rcx, qword [rbx + 0x48b0]
mov byte [rbx + 0x48ed], r15b
test rcx, rcx
je 0x140045903
mov rax, rcx
cmp qword [rax + 0x378], rax
je 0x1400458f7
test dword [rax + 0x14], 0x14000000
jne 0x1400458f7
mov rax, qword [rax + 0x368]
test rax, rax
jne 0x1400458d7
jmp 0x140045903
cmp rax, rcx
je 0x140045903
mov qword [rax + 0x398], rcx
mov rax, qword [rbx + 0x48b0]
test rax, rax
je 0x140045928
cmp qword [rax + 0x398], r15
je 0x140045928
cmp dword [rbx + 0x48e8], r15d
jne 0x140045928
mov qword [rax + 0x398], r15
call fcn.140047100
test r13b, r13b
jne 0x14004593b
test sil, sil
je 0x140045a50
mov rax, qword [rbx + 0x48b0]
test rax, rax
je 0x140045a50
test dword [rax + 0x14], 0x40000
jne 0x140045a50
mov byte [rbx + 0xdd], bpl
cmp dword [rbx + 0x48b8], r15d
je 0x140045a57
cmp byte [rbx + 0x48ee], r15b
jne 0x140045a57
movzx eax, bpl
mov byte [rbx + 0xde], al
call fcn.140045fb0
mov qword [rbx + 0x48c4], r15
mov dword [rbx + 0x48c0], r15d
mov dword [rbx + 0x48cc], r15d
cmp dword [rbx + 0x48b8], r15d
je 0x140045b66
cmp byte [rbx + 0x48ee], r15b
jne 0x140045b66
cmp qword [rbx + 0x4a38], r15
jne 0x140045b66
mov rax, qword [rbx + 0x48b0]
test rax, rax
je 0x140045b66
test dword [rax + 0x14], 0x40000
jne 0x140045b66
mov rdi, qword [0x14025f8e0]
test r13b, r13b
je 0x1400459ff
cmp byte [rdi + 0x2eec], r15b
je 0x1400459ff
cmp byte [rdi + 0x4010], r15b
je 0x140045a16
test sil, sil
je 0x140045a6b
cmp byte [rdi + 0x350c], r15b
je 0x140045a6b
cmp byte [rdi + 0x44a8], r15b
jne 0x140045a6b
movzx r15d, bpl
test r13b, r13b
je 0x140045a32
xor r8d, r8d
xor edx, edx
mov ecx, 0x20c
call fcn.140042f50
test al, al
jne 0x140045a4a
test sil, sil
je 0x140045a6b
xor r8d, r8d
xor edx, edx
mov ecx, 0x26e
call fcn.140042f50
test al, al
je 0x140045a6b
movzx r14d, bpl
jmp 0x140045a6e
mov byte [rbx + 0xdd], r15b
cmp qword [rbx + 0x4a38], r15
jne 0x140045979
xor al, al
jmp 0x14004597d
xor r14b, r14b
test r13b, r13b
je 0x140045a85
cmp byte [rdi + 0x2efc], 0
je 0x140045a85
cmp byte [rdi + 0x401c], 0
je 0x140045a9c
test sil, sil
je 0x140045ad6
cmp byte [rdi + 0x34fc], 0
je 0x140045ad6
cmp byte [rdi + 0x449c], 0
jne 0x140045ad6
movzx edi, bpl
test r13b, r13b
je 0x140045ab8
xor r8d, r8d
xor edx, edx
mov ecx, 0x20d
call fcn.140042f50
test al, al
jne 0x140045ad0
test sil, sil
je 0x140045ad9
xor r8d, r8d
xor edx, edx
mov ecx, 0x26d
call fcn.140042f50
test al, al
je 0x140045ad9
movzx edx, bpl
jmp 0x140045adb
xor dil, dil
xor dl, dl
mov ecx, dword [rbx + 0x3f30]
test ecx, ecx
jne 0x140045b02
test r14b, r14b
je 0x140045b0a
mov eax, dword [rbx + 0x48b8]
mov dword [rbx + 0x48c0], eax
mov dword [rbx + 0x48cc], 2
jmp 0x140045b0a
cmp ecx, dword [rbx + 0x48b8]
jne 0x140045b63
test dl, dl
je 0x140045b20
mov eax, dword [rbx + 0x48b8]
mov dword [rbx + 0x48c0], eax
mov dword [rbx + 0x48cc], ebp
test ecx, ecx
je 0x140045b2c
cmp ecx, dword [rbx + 0x48b8]
jne 0x140045b63
test r15b, r15b
jne 0x140045b36
test dil, dil
je 0x140045b42
mov eax, dword [rbx + 0x48b8]
mov dword [rbx + 0x48c4], eax
test ecx, ecx
je 0x140045b4e
cmp ecx, dword [rbx + 0x48b8]
jne 0x140045b63
test r14b, r14b
jne 0x140045b57
test dl, dl
je 0x140045b63
mov eax, dword [rbx + 0x48b8]
mov dword [rbx + 0x48c8], eax
xor r15d, r15d
mov rax, qword [rbx + 0x48b0]
test rax, rax
je 0x140045b82
test dword [rax + 0x14], 0x40000
je 0x140045b82
mov byte [rbx + 0x48ee], bpl
mov eax, dword [rbx + 0x48dc]
test eax, eax
je 0x140045baa
mov dword [rbx + 0x48c8], eax
mov dword [rbx + 0x48c4], eax
mov dword [rbx + 0x48c0], eax
mov eax, dword [rbx + 0x48e0]
mov dword [rbx + 0x48cc], eax
mov dword [rbx + 0x48dc], r15d
call fcn.140046200
cmp dword [rbx + 0x4938], 0xffffffff
jne 0x140045cad
mov rdi, qword [0x14025f8e0]
mov r14, qword [rdi + 0x48b0]
test r14, r14
je 0x140045cad
cmp qword [rdi + 0x4a38], 0
jne 0x140045cad
test dword [r14 + 0x14], 0x40000
jne 0x140045cad
mov r8d, ebp
mov edx, 0xffffffff
mov ecx, 0x200
call fcn.140042f50
test al, al
je 0x140045cad
cmp byte [rdi + 0xe24], 0
jne 0x140045cad
cmp byte [rdi + 0xe26], 0
jne 0x140045cad
movzx eax, byte [rdi + 0xe25]
test byte [rdi + 8], bpl
je 0x140045c59
test al, al
je 0x140045c42
mov ebp, 0xffffffff
jmp 0x140045c72
cmp byte [rdi + 0x48ee], bpl
jne 0x140045c72
cmp dword [rdi + 0x3f30], 0
jne 0x140045c72
mov ebp, r15d
jmp 0x140045c72
test al, al
je 0x140045c64
mov ebp, 0xffffffff
jmp 0x140045c72
cmp dword [rdi + 0x3f30], 0
mov ebp, r15d
setne bpl
mov dword [rdi + 0x4968], ebp
mov eax, 0x21
cmp byte [r14 + 0xbc], 0
mov r9d, 3
mov r8d, 0xc00
cmovne r9d, eax
sar ebp, 0x1f
lea ecx, [rax - 0x22]
lea edx, [rbp + 3]
call fcn.140044a40
mov dword [rdi + 0x496c], 0xffffffff
mov rax, qword [0x14025f8e0]
mov r14, qword [rsp + 0x70]
mov rdi, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0xa0]
cmp byte [rax + 0x4929], 0
jne 0x140045cdf
cmp byte [rax + 0x48f1], 0
jne 0x140045cdf
xor cl, cl
jmp 0x140045ce1
mov cl, 1
mov byte [rax + 0x48f0], cl
mov rcx, qword [rbx + 0x48b0]
mov byte [rbx + 0x48ec], 0
test rcx, rcx
je 0x140045ef4
test dword [rcx + 0x14], 0x40000
jne 0x140045ef4
cmp qword [rbx + 0x4a38], 0
jne 0x140045ef4
mov rax, qword [rcx]
movss xmm0, dword [rax + 0x3c0c]
mov rax, qword [rcx + 0x368]
mulss xmm0, dword [rcx + 0x290]
test rax, rax
je 0x140045d40
mulss xmm0, dword [rax + 0x290]
cmp word [rcx + 0x15c], 0
mulss xmm0, dword [0x14012fcfc]
mov edx, dword [rbx + 0x4938]
movss xmm2, dword [0x14012fc50]
mulss xmm0, dword [rbx + 0x18]
addss xmm0, dword [0x14012fc40]
cvttss2si eax, xmm0
movd xmm4, eax
cvtdq2ps xmm4, xmm4
jne 0x140045e12
cmp byte [rcx + 0x162], 0
je 0x140045e12
cmp edx, 0xffffffff
je 0x140045e12
movss xmm1, dword [0x14012fd24]
test edx, edx
je 0x140045da8
cmp edx, 1
jne 0x140045dd8
movaps xmm0, xmm2
jmp 0x140045dab
movaps xmm0, xmm1
mulss xmm0, xmm4
mov dword [rcx + 0x9c], r15d
mov dword [rcx + 0xa4], r15d
addss xmm0, dword [rcx + 0x84]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rcx + 0x94], xmm0
cmp edx, 2
je 0x140045de5
cmp edx, 3
jne 0x140045e12
movaps xmm1, xmm2
mulss xmm1, xmm4
mov dword [rcx + 0xa0], r15d
mov dword [rcx + 0xa8], r15d
addss xmm1, dword [rcx + 0x88]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rcx + 0x98], xmm0
test sil, sil
je 0x140045ef4
mov rax, qword [0x14025f8e0]
cmp byte [rax + 0x355c], 0
movss xmm1, dword [rax + 0x35f8]
movss xmm0, dword [rax + 0x35d8]
subss xmm1, dword [rax + 0x35e8]
subss xmm0, dword [rax + 0x35c8]
je 0x140045e54
cmp byte [rax + 0x44e4], 0
je 0x140045e70
cmp byte [rax + 0x356c], 0
je 0x140045e78
cmp byte [rax + 0x44f0], 0
jne 0x140045e78
movss xmm2, dword [0x14012fcd4]
jmp 0x140045e78
movss xmm2, dword [0x14012fc2c]
xorps xmm3, xmm3
ucomiss xmm0, xmm3
jp 0x140045e82
je 0x140045ebc
cmp byte [rcx + 0xb4], 0
je 0x140045ebc
mulss xmm0, xmm4
mov dword [rcx + 0x9c], r15d
mov dword [rcx + 0xa4], r15d
mulss xmm0, xmm2
addss xmm0, dword [rcx + 0x84]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rcx + 0x94], xmm0
ucomiss xmm1, xmm3
jp 0x140045ec3
je 0x140045ef4
mulss xmm1, xmm4
mov dword [rcx + 0xa0], r15d
mov dword [rcx + 0xa8], r15d
mulss xmm1, xmm2
addss xmm1, dword [rcx + 0x88]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rcx + 0x98], xmm0
test r13b, r13b
mov r13, qword [rsp + 0xb0]
jne 0x140045f11
test sil, sil
jne 0x140045f11
mov word [rbx + 0x48ee], 1
jmp 0x140045f5c
test r12b, r12b
je 0x140045f5c
test byte [rbx + 8], 4
je 0x140045f5c
test byte [rbx + 0xc], 4
je 0x140045f5c
lea rcx, [rsp + 0x20]
call fcn.140044130
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], 1
mov dword [rbx + 0x4964], r15d
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.14012a5c0
add rsp, 0x78
pop r15
pop r12
pop rsi
pop rbx
ret