Function at 0x180015e80
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, 0x70
mov rax, qword [0x1800cf040]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov r11, qword [0x1800d2c00]
xor r13d, r13d
mov rbx, r11
test byte [r11 + 8], 2
lea ebp, [r13 + 1]
mov byte [r11 + 0xdb], r13b
je 0x180015ed3
mov r14b, bpl
test byte [r11 + 0xc], bpl
jne 0x180015ed6
mov r14b, r13b
movdqa xmm0, xmmword [0x1800c8d50]
movdqa xmm1, xmmword [0x1800c8d60]
movdqu xmmword [rsp + 0x48], xmm0
movdqu xmmword [rsp + 0x58], xmm1
test r14b, r14b
je 0x180015f20
lea rdi, [rsp + 0x48]
mov ecx, dword [rdi]
call fcn.18001268c
test al, al
je 0x180015f12
mov dword [r11 + 0x1bdc], 3
add rdi, 4
lea rax, [rsp + 0x68]
cmp rdi, rax
jne 0x180015efc
mov r15b, byte [r11 + 8]
movdqa xmm0, xmmword [0x1800c8d40]
mov dword [rsp + 0x38], 0x201
mov dword [rsp + 0x3c], 0x203
mov dword [rsp + 0x40], 0x204
movdqu xmmword [rsp + 0x28], xmm0
and r15b, bpl
je 0x180015f78
lea rdi, [rsp + 0x28]
mov ecx, dword [rdi]
call fcn.18001268c
test al, al
je 0x180015f6a
mov dword [r11 + 0x1bdc], 2
add rdi, 4
lea rax, [rsp + 0x44]
cmp rdi, rax
jne 0x180015f54
mov edx, dword [r11 + 0x1bec]
test edx, edx
je 0x18001602d
mov r9, qword [r11 + 0x1ba8]
mov rdi, r11
test r9, r9
je 0x18001602d
test byte [r11 + 0x2f7c], 8
lea rsi, [r11 + 0x1be0]
je 0x180015fc5
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.18001957c
mov r11, qword [0x1800d2c00]
movsxd rax, dword [rsi]
mov ecx, dword [rbx + 0x1bec]
mov rdx, rax
mov dword [r11 + 0x1be0], eax
mov rax, qword [r11 + 0x1ba8]
mov dword [r11 + 0x1bb0], ecx
mov dword [r11 + 0x1bb4], r13d
mov dword [rax + rdx*4 + 0x3a0], ecx
add rdx, rdx
mov rax, qword [r11 + 0x1ba8]
movups xmm0, xmmword [rdi + 0x1bf0]
movdqu xmmword [rax + rdx*8 + 0x3a8], xmm0
mov byte [rdi + 0x1be4], bpl
cmp byte [rdi + 0x1bea], r13b
je 0x18001602d
mov word [r11 + 0x1be5], bp
mov byte [r11 + 0x1be7], bpl
mov word [rbx + 0x1be9], r13w
mov dword [rbx + 0x1bec], r13d
mov dword [rbx + 0x1bc8], r13d
cmp byte [rbx + 0x1c00], r13b
je 0x180016051
call fcn.180016e48
mov dword [rbx + 0x1c44], r13d
mov word [rbx + 0x1c00], r13w
movzx r12d, r13b
cmp byte [rbx + 0x1be5], r13b
je 0x180016093
cmp byte [rbx + 0x1be4], r13b
je 0x180016093
cmp byte [rbx + 0x1be6], r13b
jne 0x180016093
cmp byte [rbx + 0x1be7], r13b
je 0x180016093
cmp qword [rbx + 0x1ba8], r13
cmovne r12d, ebp
mov rcx, qword [rbx + 0x1ba8]
mov byte [rbx + 0x1be5], r13b
test rcx, rcx
je 0x1800160d8
mov rax, rcx
cmp qword [rax + 0x378], rax
je 0x1800160cc
test dword [rax + 0x14], 0x14000000
jne 0x1800160c7
mov rax, qword [rax + 0x368]
test rax, rax
jne 0x1800160a9
test rax, rax
je 0x1800160d8
cmp rax, rcx
je 0x1800160d8
mov qword [rax + 0x398], rcx
mov rax, qword [rbx + 0x1ba8]
test rax, rax
je 0x1800160fd
cmp qword [rax + 0x398], r13
je 0x1800160fd
cmp dword [rbx + 0x1be0], r13d
jne 0x1800160fd
mov qword [rax + 0x398], r13
call fcn.180017a30
test r15b, r15b
jne 0x18001610c
test r14b, r14b
je 0x180016124
mov rax, qword [rbx + 0x1ba8]
test rax, rax
je 0x180016124
test dword [rax + 0x14], 0x40000
mov al, bpl
je 0x180016127
mov al, r13b
mov byte [rbx + 0xdd], al
test al, al
je 0x180016143
cmp dword [rbx + 0x1bb0], r13d
je 0x180016143
cmp byte [rbx + 0x1be6], r13b
je 0x18001614f
mov al, r13b
cmp qword [rbx + 0x1d10], r13
je 0x180016152
mov al, bpl
mov byte [rbx + 0xde], al
call fcn.18001717c
mov qword [rbx + 0x1bbc], r13
mov dword [rbx + 0x1bb8], r13d
mov dword [rbx + 0x1bc4], r13d
cmp dword [rbx + 0x1bb0], r13d
je 0x18001630d
cmp byte [rbx + 0x1be6], r13b
jne 0x18001630d
cmp qword [rbx + 0x1d10], r13
jne 0x18001630d
mov rax, qword [rbx + 0x1ba8]
test rax, rax
je 0x18001630d
test dword [rax + 0x14], 0x40000
jne 0x18001630d
mov edi, 0x26e
lea r11d, [rdi - 0x62]
test r15b, r15b
je 0x1800161d0
mov ecx, r11d
call fcn.18001268c
test al, al
jne 0x1800161e0
test r14b, r14b
je 0x180016210
mov ecx, edi
call fcn.18001268c
test al, al
je 0x180016210
test r15b, r15b
je 0x1800161f6
xor r8d, r8d
xor edx, edx
mov ecx, r11d
call fcn.1800126b8
test al, al
jne 0x18001620b
test r14b, r14b
je 0x180016213
xor r8d, r8d
xor edx, edx
mov ecx, edi
call fcn.1800126b8
test al, al
je 0x180016213
mov dil, bpl
jmp 0x180016216
mov bpl, r13b
mov dil, r13b
mov r11d, 0x20d
test r15b, r15b
je 0x18001622d
mov ecx, r11d
call fcn.18001268c
test al, al
jne 0x180016240
test r14b, r14b
je 0x180016276
mov ecx, 0x26d
call fcn.18001268c
test al, al
je 0x180016276
mov sil, 1
test r15b, r15b
je 0x180016259
xor r8d, r8d
xor edx, edx
mov ecx, r11d
call fcn.1800126b8
test al, al
jne 0x180016271
test r14b, r14b
je 0x180016279
xor r8d, r8d
xor edx, edx
mov ecx, 0x26d
call fcn.1800126b8
test al, al
je 0x180016279
mov dl, sil
jmp 0x18001627c
mov sil, r13b
mov dl, r13b
mov ecx, dword [rbx + 0x1228]
test ecx, ecx
jne 0x1800162a3
test dil, dil
je 0x1800162ab
mov eax, dword [rbx + 0x1bb0]
mov dword [rbx + 0x1bb8], eax
mov dword [rbx + 0x1bc4], 2
jmp 0x1800162ab
cmp ecx, dword [rbx + 0x1bb0]
jne 0x180016308
test dl, dl
je 0x1800162c5
mov eax, dword [rbx + 0x1bb0]
mov dword [rbx + 0x1bb8], eax
mov dword [rbx + 0x1bc4], 1
test ecx, ecx
je 0x1800162d1
cmp ecx, dword [rbx + 0x1bb0]
jne 0x180016308
test bpl, bpl
jne 0x1800162db
test sil, sil
je 0x1800162e7
mov eax, dword [rbx + 0x1bb0]
mov dword [rbx + 0x1bbc], eax
test ecx, ecx
je 0x1800162f3
cmp ecx, dword [rbx + 0x1bb0]
jne 0x180016308
test dil, dil
jne 0x1800162fc
test dl, dl
je 0x180016308
mov eax, dword [rbx + 0x1bb0]
mov dword [rbx + 0x1bc0], eax
mov ebp, 1
mov rax, qword [rbx + 0x1ba8]
test rax, rax
je 0x180016329
test dword [rax + 0x14], 0x40000
je 0x180016329
mov byte [rbx + 0x1be6], bpl
mov eax, dword [rbx + 0x1bd4]
test eax, eax
je 0x180016351
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], r13d
call fcn.180016714
cmp dword [rbx + 0x1c10], 0xffffffff
mov rdi, qword [0x1800d2c00]
jne 0x18001643a
mov rsi, qword [rdi + 0x1ba8]
test rsi, rsi
je 0x18001643a
cmp qword [rdi + 0x1d10], r13
jne 0x18001643a
test dword [rsi + 0x14], 0x40000
jne 0x18001643a
mov r8d, ebp
or edx, 0xffffffff
mov ecx, 0x200
call fcn.1800126b8
test al, al
je 0x18001643a
cmp byte [rdi + 0x120], r13b
jne 0x18001643a
cmp byte [rdi + 0x122], r13b
jne 0x18001643a
mov al, byte [rdi + 0x121]
test byte [rdi + 8], bpl
je 0x1800163f5
test al, al
je 0x1800163da
or edx, 0xffffffff
jmp 0x180016406
cmp byte [rdi + 0x1be6], bpl
jne 0x1800163f1
cmp dword [rdi + 0x1228], r13d
jne 0x1800163f1
mov edx, r13d
jmp 0x180016406
mov edx, ebp
jmp 0x180016406
test al, al
jne 0x1800163d5
cmp dword [rdi + 0x1228], r13d
mov edx, r13d
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.1800158c8
or dword [rdi + 0x1c44], 0xffffffff
cmp byte [rdi + 0x1c01], r13b
jne 0x18001644f
mov al, r13b
cmp byte [rdi + 0x1be9], r13b
je 0x180016452
mov al, bpl
mov byte [rdi + 0x1be8], al
mov r11, qword [rbx + 0x1ba8]
mov byte [rbx + 0x1be4], r13b
test r11, r11
je 0x180016682
test dword [r11 + 0x14], 0x40000
jne 0x180016682
cmp qword [rbx + 0x1d10], r13
jne 0x180016682
mov rax, qword [r11]
movss xmm0, dword [rax + 0xf2c]
mov rax, qword [r11 + 0x368]
mulss xmm0, dword [r11 + 0x290]
test rax, rax
je 0x1800164b2
mulss xmm0, dword [rax + 0x290]
mulss xmm0, dword [0x1800c8c8c]
mov ecx, dword [rbx + 0x1c10]
movss xmm2, dword [0x1800c8c40]
mulss xmm0, dword [rbx + 0x18]
addss xmm0, dword [0x1800c8c0c]
cvttss2si eax, xmm0
movd xmm4, eax
cvtdq2ps xmm4, xmm4
cmp word [r11 + 0x15c], r13w
jne 0x180016587
cmp byte [r11 + 0x161], r13b
je 0x180016587
cmp ecx, 0xffffffff
je 0x180016587
movss xmm1, dword [0x1800c8ccc]
test ecx, ecx
je 0x180016519
cmp ecx, ebp
jne 0x18001654b
movaps xmm0, xmm2
jmp 0x18001651c
movaps xmm0, xmm1
mulss xmm0, xmm4
mov dword [r11 + 0x9c], r13d
mov dword [r11 + 0xa4], r13d
addss xmm0, dword [r11 + 0x84]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r11 + 0x94], xmm0
cmp ecx, 2
je 0x180016558
cmp ecx, 3
jne 0x180016587
movaps xmm1, xmm2
mulss xmm1, xmm4
mov dword [r11 + 0xa0], r13d
mov dword [r11 + 0xa8], r13d
addss xmm1, dword [r11 + 0x88]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r11 + 0x98], xmm0
test r14b, r14b
je 0x180016682
mov ecx, 0x27a
call fcn.180012090
mov ecx, 0x279
mov r8, rax
call fcn.180012090
movss xmm0, dword [r8 + 0xc]
mov ecx, 0x27c
subss xmm0, dword [rax + 0xc]
call fcn.180012090
mov ecx, 0x27b
mov r8, rax
call fcn.180012090
movss xmm1, dword [r8 + 0xc]
mov ecx, 0x273
subss xmm1, dword [rax + 0xc]
call fcn.18001268c
test al, al
je 0x1800165ec
movss xmm2, dword [0x1800c8bf4]
jmp 0x180016602
mov ecx, 0x274
call fcn.18001268c
test al, al
je 0x180016602
movss xmm2, dword [0x1800c8c70]
xorps xmm3, xmm3
ucomiss xmm0, xmm3
jp 0x18001660c
je 0x180016648
cmp byte [r11 + 0xb4], r13b
je 0x180016648
mulss xmm0, xmm4
mov dword [r11 + 0x9c], r13d
mov dword [r11 + 0xa4], r13d
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 0x18001664f
je 0x180016682
mulss xmm1, xmm4
mov dword [r11 + 0xa0], r13d
mov dword [r11 + 0xa8], r13d
mulss xmm1, xmm2
addss xmm1, dword [r11 + 0x88]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r11 + 0x98], xmm0
test r15b, r15b
jne 0x180016697
test r14b, r14b
jne 0x180016697
mov word [rbx + 0x1be6], 1
jmp 0x1800166e2
test r12b, r12b
je 0x1800166e2
test byte [rbx + 8], 4
je 0x1800166e2
test byte [rbx + 0xc], 4
je 0x1800166e2
lea rcx, [rsp + 0x20]
call fcn.180015c60
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], bpl
mov dword [rbx + 0x1c3c], r13d
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.18008b920
lea r11, [rsp + 0x70]
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