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

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], rbx
push rdi
push r12
push r13
sub rsp, 0xa0
mov rax, qword [0x140085040]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov r10, qword [0x140086460]
mov qword [r11 + 8], rsi
mov rbx, r10
mov qword [r11 + 0x10], r14
mov qword [r11 + 0x18], r15
mov r15d, 3
test byte [r10 + 8], 2
vmovaps xmmword [r11 - 0x38], xmm7
mov byte [r10 + 0xdb], 0
je 0x1400226e9
test byte [r10 + 0xc], 1
je 0x1400226e9
vmovdqu ymm0, ymmword [0x140077e20]
vmovdqu ymmword [rsp + 0x50], ymm0
mov r12b, 1
lea r11, [r11 - 0x68]
nop word [rax + rax]
mov r9d, dword [r11]
mov rcx, r10
mov edx, r9d
vzeroupper
call fcn.14001c790
cmp byte [rax], 0
je 0x1400226d9
lea eax, [r9 - 0x200]
cmp eax, 0x8b
jbe 0x1400226c1
cmp r9d, 0x1000
je 0x1400226c1
cmp r9d, 0x2000
je 0x1400226c1
cmp r9d, 0x4000
je 0x1400226c1
cmp r9d, 0x8000
je 0x1400226c1
cmp r9d, 0x800
jne 0x1400226d2
mov edx, r9d
mov rcx, r10
call fcn.14000e020
cmp byte [rax + 8], 0
jne 0x1400226d9
mov dword [r10 + 0x490c], r15d
add r11, 4
lea rax, [rsp + 0x70]
cmp r11, rax
jne 0x140022670
jmp 0x1400226ec
xor r12b, r12b
movzx r14d, byte [r10 + 8]
vmovdqu xmm0, xmmword [0x140077b70]
and r14b, 1
mov dword [rsp + 0x40], 0x201
mov byte [rsp + 0x20], r14b
vmovdqu xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x44], 0x203
mov dword [rsp + 0x48], 0x204
je 0x1400227a8
lea r11, [rsp + 0x30]
nop dword [rax + rax]
mov r9d, dword [r11]
mov rcx, r10
mov edx, r9d
call fcn.14001c790
cmp byte [rax], 0
je 0x14002279a
lea eax, [r9 - 0x200]
cmp eax, 0x8b
jbe 0x14002277e
cmp r9d, 0x1000
je 0x14002277e
cmp r9d, 0x2000
je 0x14002277e
cmp r9d, 0x4000
je 0x14002277e
cmp r9d, 0x8000
je 0x14002277e
cmp r9d, 0x800
jne 0x14002278f
mov edx, r9d
mov rcx, r10
call fcn.14000e020
cmp byte [rax + 8], 0
jne 0x14002279a
mov dword [r10 + 0x490c], 2
add r11, 4
lea rax, [rsp + 0x4c]
cmp r11, rax
jne 0x140022730
mov edx, dword [r10 + 0x4928]
xor r11d, r11d
mov dword [r10 + 0x48f8], r11d
test edx, edx
je 0x1400228db
mov r9, qword [r10 + 0x48d8]
mov rdi, r10
test r9, r9
je 0x1400228db
cmp dword [r10 + 0x48e0], edx
je 0x1400227f9
mov dword [r10 + 0x48f8], edx
mov eax, dword [r10 + 0x492c]
mov dword [r10 + 0x48fc], eax
mov dword [r10 + 0x4900], r11d
test byte [r10 + 0x5ce4], 8
je 0x140022824
mov r9, qword [r9 + 8]
lea rcx, str._nav__NavInitRequest:_ApplyResult:_NavID_0x_08X_in_Layer__d_Window___s__n
mov r8d, dword [r10 + 0x4910]
call fcn.140027150
mov r10, qword [0x140086460]
xor r11d, r11d
mov eax, dword [rdi + 0x492c]
movsxd rcx, dword [rdi + 0x4910]
mov edx, dword [rdi + 0x4928]
mov r8, rcx
mov dword [r10 + 0x48e4], eax
add r8, r8
mov rax, qword [r10 + 0x48d8]
mov dword [r10 + 0x48e0], edx
mov dword [r10 + 0x4910], ecx
mov dword [rax + rcx*4 + 0x3a0], edx
mov rax, qword [r10 + 0x48d8]
vmovups xmm0, xmmword [rdi + 0x4930]
vmovups xmmword [rax + r8*8 + 0x3a8], xmm0
mov rax, qword [r10 + 0x48d8]
movsxd rdx, dword [r10 + 0x4910]
mov rcx, qword [rax + 0x390]
mov dword [rcx + rdx*8 + 0x3c8], 0x7f7fffff
mov rax, qword [r10 + 0x48d8]
movsxd rdx, dword [r10 + 0x4910]
mov rcx, qword [rax + 0x390]
mov dword [rcx + rdx*8 + 0x3cc], 0x7f7fffff
cmp byte [rdi + 0x491a], 0
mov byte [rdi + 0x4914], 1
je 0x1400228db
mov word [r10 + 0x4915], 1
mov byte [r10 + 0x4917], 1
cmp byte [rbx + 0x4950], 0
mov word [rbx + 0x4919], 0
mov dword [rbx + 0x4928], r11d
je 0x1400228fc
call fcn.140023b40
xor r11d, r11d
xor r13b, r13b
mov dword [rbx + 0x4994], r11d
mov esi, 1
mov word [rbx + 0x4950], 0
cmp byte [rbx + 0x4915], r13b
je 0x140022948
cmp byte [rbx + 0x4914], r13b
je 0x140022948
cmp byte [rbx + 0x4916], r13b
jne 0x140022948
cmp byte [rbx + 0x4917], r13b
je 0x140022948
cmp qword [rbx + 0x48d8], 0
movzx r13d, r13b
cmovne r13d, esi
mov rcx, qword [rbx + 0x48d8]
mov byte [rbx + 0x4915], 0
test rcx, rcx
je 0x14002298c
mov rax, rcx
nop
cmp qword [rax + 0x378], rax
je 0x140022980
test dword [rax + 0x14], 0x14000000
jne 0x140022980
mov rax, qword [rax + 0x368]
test rax, rax
jne 0x140022960
jmp 0x14002298c
cmp rax, rcx
je 0x14002298c
mov qword [rax + 0x398], rcx
mov rax, qword [rbx + 0x48d8]
test rax, rax
je 0x1400229b2
cmp qword [rax + 0x398], 0
je 0x1400229b2
cmp dword [rbx + 0x4910], 0
jne 0x1400229b2
mov qword [rax + 0x398], r11
call fcn.140024ae0
test r14b, r14b
jne 0x1400229c5
test r12b, r12b
je 0x140022ad9
mov rax, qword [rbx + 0x48d8]
test rax, rax
je 0x140022ad9
test dword [rax + 0x14], 0x40000
jne 0x140022ad9
mov byte [rbx + 0xdd], sil
cmp dword [rbx + 0x48e0], 0
je 0x140022ae0
cmp byte [rbx + 0x4916], 0
jne 0x140022ae0
movzx eax, sil
mov byte [rbx + 0xde], al
call fcn.140023fd0
xor edi, edi
mov qword [rbx + 0x48ec], rdi
mov dword [rbx + 0x48e8], edi
mov dword [rbx + 0x48f4], edi
cmp dword [rbx + 0x48e0], edi
je 0x140022c07
cmp byte [rbx + 0x4916], dil
jne 0x140022c07
cmp qword [rbx + 0x4a60], rdi
jne 0x140022c07
mov rax, qword [rbx + 0x48d8]
test rax, rax
je 0x140022c07
test dword [rax + 0x14], 0x40000
jne 0x140022c07
mov rdi, qword [0x140086460]
test r14b, r14b
je 0x140022a88
cmp byte [rdi + 0x2eec], 0
je 0x140022a88
cmp byte [rdi + 0x4038], 0
je 0x140022a9f
test r12b, r12b
je 0x140022af5
cmp byte [rdi + 0x350c], 0
je 0x140022af5
cmp byte [rdi + 0x44d0], 0
jne 0x140022af5
movzx r15d, sil
test r14b, r14b
je 0x140022abb
xor r8d, r8d
xor edx, edx
mov ecx, 0x20c
call fcn.14001cef0
test al, al
jne 0x140022ad3
test r12b, r12b
je 0x140022af8
xor r8d, r8d
xor edx, edx
mov ecx, 0x26e
call fcn.14001cef0
test al, al
je 0x140022af8
movzx r14d, sil
jmp 0x140022afb
mov byte [rbx + 0xdd], 0
cmp qword [rbx + 0x4a60], 0
jne 0x140022a03
xor al, al
jmp 0x140022a07
xor r15b, r15b
xor r14b, r14b
movzx eax, byte [rsp + 0x20]
test al, al
je 0x140022b16
cmp byte [rdi + 0x2efc], 0
je 0x140022b16
cmp byte [rdi + 0x4044], 0
je 0x140022b2d
test r12b, r12b
je 0x140022b66
cmp byte [rdi + 0x34fc], 0
je 0x140022b66
cmp byte [rdi + 0x44c4], 0
jne 0x140022b66
movzx edi, sil
test al, al
je 0x140022b48
xor r8d, r8d
xor edx, edx
mov ecx, 0x20d
call fcn.14001cef0
test al, al
jne 0x140022b60
test r12b, r12b
je 0x140022b69
xor r8d, r8d
xor edx, edx
mov ecx, 0x26d
call fcn.14001cef0
test al, al
je 0x140022b69
movzx edx, sil
jmp 0x140022b6b
xor dil, dil
xor dl, dl
mov ecx, dword [rbx + 0x3f58]
test ecx, ecx
jne 0x140022b92
test r14b, r14b
je 0x140022b9a
mov eax, dword [rbx + 0x48e0]
mov dword [rbx + 0x48e8], eax
mov dword [rbx + 0x48f4], 2
jmp 0x140022b9a
cmp ecx, dword [rbx + 0x48e0]
jne 0x140022bd2
test dl, dl
je 0x140022bb0
mov eax, dword [rbx + 0x48e0]
mov dword [rbx + 0x48e8], eax
mov dword [rbx + 0x48f4], esi
test ecx, ecx
je 0x140022bbc
cmp ecx, dword [rbx + 0x48e0]
jne 0x140022bd2
test r15b, r15b
jne 0x140022bc6
test dil, dil
je 0x140022bd2
mov eax, dword [rbx + 0x48e0]
mov dword [rbx + 0x48ec], eax
mov eax, dword [rbx + 0x3f58]
test eax, eax
je 0x140022be4
cmp eax, dword [rbx + 0x48e0]
jne 0x140022bf9
test r14b, r14b
jne 0x140022bed
test dl, dl
je 0x140022bf9
mov eax, dword [rbx + 0x48e0]
mov dword [rbx + 0x48f0], eax
movzx r14d, byte [rsp + 0x20]
xor edi, edi
mov r15d, 3
mov rax, qword [rbx + 0x48d8]
test rax, rax
je 0x140022c23
test dword [rax + 0x14], 0x40000
je 0x140022c23
mov byte [rbx + 0x4916], sil
mov eax, dword [rbx + 0x4904]
test eax, eax
je 0x140022c4b
mov dword [rbx + 0x48f0], eax
mov dword [rbx + 0x48ec], eax
mov dword [rbx + 0x48e8], eax
mov eax, dword [rbx + 0x4908]
mov dword [rbx + 0x48f4], eax
mov dword [rbx + 0x4904], edi
call fcn.1400230d0
cmp dword [rbx + 0x4960], 0xffffffff
mov r11, qword [0x140086460]
vxorps xmm7, xmm7, xmm7
jne 0x140022db2
mov rdi, qword [r11 + 0x48d8]
test rdi, rdi
je 0x140022db0
cmp qword [r11 + 0x4a60], 0
jne 0x140022db0
test dword [rdi + 0x14], 0x40000
jne 0x140022db0
cmp byte [r11 + 0x2e2c], 0
je 0x140022db0
vmovss xmm0, dword [r11 + 0x2e30]
vcomiss xmm0, xmm7
jb 0x140022db0
vucomiss xmm0, xmm7
mov r10, r11
je 0x140022ceb
vmovss xmm1, dword [r11 + 0x3c]
vcomiss xmm0, xmm1
jbe 0x140022db0
vmovss xmm2, dword [r11 + 0x40]
mov ecx, 0x200
call fcn.14001c8e0
test eax, eax
jle 0x140022db0
cmp byte [r10 + 0x476c], 0
je 0x140022d03
cmp dword [r10 + 0x3f58], 0xffffffff
jne 0x140022db0
cmp dword [r10 + 0x3fa0], 0xffffffff
jne 0x140022db0
cmp byte [r11 + 0xe24], 0
jne 0x140022db0
cmp byte [r11 + 0xe26], 0
jne 0x140022db0
movzx eax, byte [r11 + 0xe25]
test byte [r11 + 8], sil
je 0x140022d5d
test al, al
je 0x140022d46
mov esi, 0xffffffff
jmp 0x140022d75
cmp byte [r11 + 0x4916], sil
jne 0x140022d75
cmp dword [r11 + 0x3f58], 0
jne 0x140022d75
xor esi, esi
jmp 0x140022d75
test al, al
je 0x140022d68
mov esi, 0xffffffff
jmp 0x140022d75
xor esi, esi
cmp dword [r11 + 0x3f58], esi
setne sil
mov dword [r11 + 0x4990], esi
mov eax, 0x21
cmp byte [rdi + 0xbc], 0
mov ecx, 0xffffffff
mov r8d, 0x400
cmovne r15d, eax
sar esi, 0x1f
mov r9d, r15d
lea edx, [rsi + 3]
call fcn.140021dd0
mov dword [r11 + 0x4994], 0xffffffff
xor edi, edi
cmp byte [r11 + 0x4951], 0
mov r15, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0xc0]
jne 0x140022dda
cmp byte [r11 + 0x4919], 0
jne 0x140022dda
xor al, al
jmp 0x140022ddc
mov al, 1
mov byte [r11 + 0x4918], al
mov rcx, qword [rbx + 0x48d8]
mov byte [rbx + 0x4914], 0
test rcx, rcx
je 0x140023028
test dword [rcx + 0x14], 0x40000
jne 0x140023028
cmp qword [rbx + 0x4a60], 0
jne 0x140023028
mov rax, qword [rcx]
vmovss xmm0, dword [rax + 0x3c24]
mov rax, qword [rcx + 0x368]
vmulss xmm1, xmm0, dword [rcx + 0x290]
test rax, rax
je 0x140022e3c
vmulss xmm1, xmm1, dword [rax + 0x290]
cmp word [rcx + 0x15c], 0
vmulss xmm0, xmm1, dword [0x1400779d4]
vmovss xmm1, dword [rbx + 0x18]
vfmadd213ss xmm1, xmm0, dword [0x140077840]
mov edx, dword [rbx + 0x4960]
vcvttss2si eax, xmm1
vxorps xmm4, xmm4, xmm4
vcvtsi2ss xmm4, xmm4, eax
jne 0x140022f1e
cmp byte [rcx + 0x162], 0
je 0x140022f1e
cmp edx, 0xffffffff
je 0x140022f1e
vmovss xmm5, dword [0x140077db0]
cmp edx, 1
ja 0x140022ed3
vmovd xmm1, edi
vmovd xmm0, edx
vpcmpeqd xmm2, xmm0, xmm1
vxorps xmm3, xmm4, xmm5
vblendvps xmm1, xmm4, xmm3, xmm2
vaddss xmm0, xmm1, dword [rcx + 0x84]
vcvttss2si eax, xmm0
vxorps xmm2, xmm2, xmm2
vcvtsi2ss xmm2, xmm2, eax
vmovss dword [rcx + 0x94], xmm2
mov dword [rcx + 0x9c], edi
mov dword [rcx + 0xa4], edi
lea eax, [rdx - 2]
cmp eax, 1
ja 0x140022f1e
mov eax, 2
mov dword [rcx + 0xa0], edi
vmovd xmm1, eax
vmovd xmm0, edx
vpcmpeqd xmm2, xmm0, xmm1
vxorps xmm3, xmm4, xmm5
vblendvps xmm1, xmm4, xmm3, xmm2
vaddss xmm0, xmm1, dword [rcx + 0x88]
vcvttss2si eax, xmm0
vxorps xmm2, xmm2, xmm2
vcvtsi2ss xmm2, xmm2, eax
vmovss dword [rcx + 0x98], xmm2
mov dword [rcx + 0xa8], edi
test r12b, r12b
je 0x140023028
cmp byte [r11 + 0x355c], 0
vmovss xmm0, dword [r11 + 0x35f8]
vsubss xmm5, xmm0, dword [r11 + 0x35e8]
vmovss xmm0, dword [r11 + 0x35d8]
vmovaps xmmword [rsp + 0x90], xmm6
vsubss xmm6, xmm0, dword [r11 + 0x35c8]
je 0x140022f72
cmp byte [r11 + 0x450c], 0
jne 0x140022f72
vmovss xmm1, dword [0x1400777f0]
jmp 0x140022fb0
cmp byte [r11 + 0x356c], 0
jne 0x140022f80
xor al, al
jmp 0x140022f8b
cmp byte [r11 + 0x4518], 0
sete al
vmovss xmm2, dword [0x140077894]
vmovd xmm1, edi
movzx eax, al
vmovd xmm0, eax
vpcmpeqd xmm3, xmm0, xmm1
vmovss xmm0, dword [0x140077990]
vblendvps xmm1, xmm0, xmm2, xmm3
vucomiss xmm6, xmm7
je 0x140022fec
cmp byte [rcx + 0xb4], 0
je 0x140022fec
vmulss xmm0, xmm6, xmm4
vfmadd213ss xmm0, xmm1, dword [rcx + 0x84]
vcvttss2si eax, xmm0
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rcx + 0x94], xmm0
mov dword [rcx + 0x9c], edi
mov dword [rcx + 0xa4], edi
vucomiss xmm5, xmm7
vmovaps xmm6, xmmword [rsp + 0x90]
je 0x140023028
vmulss xmm0, xmm5, xmm4
vfmadd213ss xmm0, xmm1, dword [rcx + 0x88]
vcvttss2si eax, xmm0
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rcx + 0x98], xmm0
mov dword [rcx + 0xa0], edi
mov dword [rcx + 0xa8], edi
vmovaps xmm7, xmmword [rsp + 0x80]
test r14b, r14b
mov r14, qword [rsp + 0xc8]
jne 0x14002304e
test r12b, r12b
jne 0x14002304e
mov word [rbx + 0x4916], 1
jmp 0x140023099
test r13b, r13b
je 0x140023099
test byte [rbx + 8], 4
je 0x140023099
test byte [rbx + 0xc], 4
je 0x140023099
lea rcx, [rsp + 0x24]
call fcn.1400222e0
vmovss xmm0, dword [rax]
vmovss xmm1, dword [rax + 4]
vmovss dword [rbx + 0x36f0], xmm0
vmovss dword [rbx + 0x36f4], xmm1
vmovss dword [rbx + 0xe08], xmm0
vmovss dword [rbx + 0xe0c], xmm1
mov byte [rbx + 0xdb], 1
mov dword [rbx + 0x498c], edi
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140066f70
mov rbx, qword [rsp + 0xd8]
add rsp, 0xa0
pop r13
pop r12
pop rdi
ret