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

Disassembly:
mov r11, rsp
push rbx
push rsi
push r12
push r14
sub rsp, 0x78
mov rax, qword [0x140087400]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov rbx, qword [0x140088258]
mov qword [r11 + 8], rbp
mov qword [r11 + 0x10], rdi
mov qword [r11 + 0x18], r13
test byte [rbx + 8], 2
mov qword [r11 - 0x28], r15
mov byte [rbx + 0xdb], 0
je 0x140031e78
test byte [rbx + 0xc], 1
je 0x140031e78
movdqa xmm0, xmmword [0x140075120]
lea r15, [r11 - 0x50]
movdqa xmm1, xmmword [0x140075130]
mov sil, 1
mov rbp, qword [0x140088258]
movdqu xmmword [rsp + 0x48], xmm0
movdqu xmmword [rsp + 0x58], xmm1
nop dword [rax + rax]
mov edi, dword [r15]
mov rcx, rbp
mov edx, edi
call fcn.14002d210
cmp byte [rax], 0
je 0x140031e68
lea eax, [rdi - 0x200]
cmp eax, 0x8b
jbe 0x140031e47
cmp edi, 0x1000
je 0x140031e47
cmp edi, 0x2000
je 0x140031e47
cmp edi, 0x4000
je 0x140031e47
cmp edi, 0x8000
je 0x140031e47
cmp edi, 0x800
jne 0x140031e57
mov edx, edi
mov rcx, rbp
call fcn.14002d370
cmp byte [rax + 8], 0
jne 0x140031e68
mov dword [rbx + 0x48dc], 3
mov rbp, qword [0x140088258]
add r15, 4
lea rax, [rsp + 0x68]
cmp r15, rax
jne 0x140031e00
jmp 0x140031e82
mov rbp, qword [0x140088258]
xor sil, sil
movzx r13d, byte [rbx + 8]
movdqa xmm0, xmmword [0x140075110]
mov dword [rsp + 0x38], 0x201
mov dword [rsp + 0x3c], 0x203
mov dword [rsp + 0x40], 0x204
movdqu xmmword [rsp + 0x28], xmm0
and r13b, 1
je 0x140031f36
lea r15, [rsp + 0x28]
nop dword [rax]
mov edi, dword [r15]
mov rcx, rbp
mov edx, edi
call fcn.14002d210
cmp byte [rax], 0
je 0x140031f28
lea eax, [rdi - 0x200]
cmp eax, 0x8b
jbe 0x140031f07
cmp edi, 0x1000
je 0x140031f07
cmp edi, 0x2000
je 0x140031f07
cmp edi, 0x4000
je 0x140031f07
cmp edi, 0x8000
je 0x140031f07
cmp edi, 0x800
jne 0x140031f17
mov edx, edi
mov rcx, rbp
call fcn.14002d370
cmp byte [rax + 8], 0
jne 0x140031f28
mov dword [rbx + 0x48dc], 2
mov rbp, qword [0x140088258]
add r15, 4
lea rax, [rsp + 0x44]
cmp r15, rax
jne 0x140031ec0
xor r14d, r14d
cmp dword [rbx + 0x48ec], r14d
je 0x140031ff7
mov r9, qword [rbp + 0x48a8]
mov rdi, rbp
test r9, r9
je 0x140031ff7
test byte [rbp + 0x5c94], 8
je 0x140031f86
mov r9, qword [r9 + 8]
lea rcx, str._nav__NavInitRequest:_ApplyResult:_NavID_0x_08X_in_Layer__d_Window___s__n
mov r8d, dword [rbp + 0x48e0]
mov edx, dword [rbp + 0x48ec]
call fcn.14002a890
mov rbp, qword [0x140088258]
movsxd rax, dword [rdi + 0x48e0]
mov ecx, dword [rdi + 0x48ec]
mov rdx, rax
mov dword [rbp + 0x48e0], eax
mov rax, qword [rbp + 0x48a8]
mov dword [rbp + 0x48b0], ecx
mov dword [rbp + 0x48b4], r14d
mov dword [rax + rdx*4 + 0x3a0], ecx
add rdx, rdx
mov rax, qword [rbp + 0x48a8]
movups xmm0, xmmword [rdi + 0x48f0]
movups xmmword [rax + rdx*8 + 0x3a8], xmm0
mov byte [rdi + 0x48e4], 1
cmp byte [rdi + 0x48ea], r14b
je 0x140031ff7
mov rax, qword [0x140088258]
mov word [rax + 0x48e5], 1
mov byte [rax + 0x48e7], 1
cmp byte [rbx + 0x4900], 0
mov word [rbx + 0x48e9], 0
mov dword [rbx + 0x48ec], r14d
mov dword [rbx + 0x48c8], r14d
je 0x14003201c
call fcn.140030e80
xor r12b, r12b
mov dword [rbx + 0x4944], r14d
mov r15d, 1
mov word [rbx + 0x4900], 0
cmp byte [rbx + 0x48e5], r12b
je 0x140032069
cmp byte [rbx + 0x48e4], r12b
je 0x140032069
cmp byte [rbx + 0x48e6], r12b
jne 0x140032069
cmp byte [rbx + 0x48e7], r12b
je 0x140032069
cmp qword [rbx + 0x48a8], 0
movzx r12d, r12b
cmovne r12d, r15d
mov rcx, qword [rbx + 0x48a8]
mov byte [rbx + 0x48e5], 0
test rcx, rcx
je 0x1400320ac
mov rax, rcx
nop
cmp qword [rax + 0x378], rax
je 0x1400320a0
test dword [rax + 0x14], 0x14000000
jne 0x1400320a0
mov rax, qword [rax + 0x368]
test rax, rax
jne 0x140032080
jmp 0x1400320ac
cmp rax, rcx
je 0x1400320ac
mov qword [rax + 0x398], rcx
mov rax, qword [rbx + 0x48a8]
test rax, rax
je 0x1400320d2
cmp qword [rax + 0x398], 0
je 0x1400320d2
cmp dword [rbx + 0x48e0], 0
jne 0x1400320d2
mov qword [rax + 0x398], r14
call fcn.140033770
test r13b, r13b
jne 0x1400320e5
test sil, sil
je 0x1400321ff
mov rax, qword [rbx + 0x48a8]
test rax, rax
je 0x1400321ff
test dword [rax + 0x14], 0x40000
jne 0x1400321ff
mov byte [rbx + 0xdd], r15b
cmp dword [rbx + 0x48b0], 0
je 0x140032206
cmp byte [rbx + 0x48e6], 0
jne 0x140032206
movzx eax, r15b
mov byte [rbx + 0xde], al
call fcn.140032770
cmp dword [rbx + 0x48b0], 0
mov qword [rbx + 0x48bc], 0
mov dword [rbx + 0x48b8], r14d
mov dword [rbx + 0x48c4], r14d
je 0x14003231a
cmp byte [rbx + 0x48e6], 0
jne 0x14003231a
cmp qword [rbx + 0x4a10], 0
jne 0x14003231a
mov rax, qword [rbx + 0x48a8]
test rax, rax
je 0x14003231a
test dword [rax + 0x14], 0x40000
jne 0x14003231a
mov rdi, qword [0x140088258]
test r13b, r13b
je 0x1400321ae
cmp byte [rdi + 0x2eec], 0
je 0x1400321ae
cmp byte [rdi + 0x4008], 0
je 0x1400321c5
test sil, sil
je 0x14003221b
cmp byte [rdi + 0x350c], 0
je 0x14003221b
cmp byte [rdi + 0x44a0], 0
jne 0x14003221b
movzx r14d, r15b
test r13b, r13b
je 0x1400321e1
xor r8d, r8d
xor edx, edx
mov ecx, 0x20c
call fcn.14002f870
test al, al
jne 0x1400321f9
test sil, sil
je 0x14003221e
xor r8d, r8d
xor edx, edx
mov ecx, 0x26e
call fcn.14002f870
test al, al
je 0x14003221e
movzx ebp, r15b
jmp 0x140032221
mov byte [rbx + 0xdd], 0
cmp qword [rbx + 0x4a10], 0
jne 0x140032123
xor al, al
jmp 0x140032127
xor r14b, r14b
xor bpl, bpl
test r13b, r13b
je 0x140032238
cmp byte [rdi + 0x2efc], 0
je 0x140032238
cmp byte [rdi + 0x4014], 0
je 0x14003224f
test sil, sil
je 0x140032289
cmp byte [rdi + 0x34fc], 0
je 0x140032289
cmp byte [rdi + 0x4494], 0
jne 0x140032289
movzx edi, r15b
test r13b, r13b
je 0x14003226b
xor r8d, r8d
xor edx, edx
mov ecx, 0x20d
call fcn.14002f870
test al, al
jne 0x140032283
test sil, sil
je 0x14003228c
xor r8d, r8d
xor edx, edx
mov ecx, 0x26d
call fcn.14002f870
test al, al
je 0x14003228c
movzx edx, r15b
jmp 0x14003228e
xor dil, dil
xor dl, dl
mov ecx, dword [rbx + 0x3f28]
test ecx, ecx
jne 0x1400322b5
test bpl, bpl
je 0x1400322bd
mov eax, dword [rbx + 0x48b0]
mov dword [rbx + 0x48b8], eax
mov dword [rbx + 0x48c4], 2
jmp 0x1400322bd
cmp ecx, dword [rbx + 0x48b0]
jne 0x140032317
test dl, dl
je 0x1400322d4
mov eax, dword [rbx + 0x48b0]
mov dword [rbx + 0x48b8], eax
mov dword [rbx + 0x48c4], r15d
test ecx, ecx
je 0x1400322e0
cmp ecx, dword [rbx + 0x48b0]
jne 0x140032317
test r14b, r14b
jne 0x1400322ea
test dil, dil
je 0x1400322f6
mov eax, dword [rbx + 0x48b0]
mov dword [rbx + 0x48bc], eax
test ecx, ecx
je 0x140032302
cmp ecx, dword [rbx + 0x48b0]
jne 0x140032317
test bpl, bpl
jne 0x14003230b
test dl, dl
je 0x140032317
mov eax, dword [rbx + 0x48b0]
mov dword [rbx + 0x48c0], eax
xor r14d, r14d
mov rax, qword [rbx + 0x48a8]
test rax, rax
je 0x140032336
test dword [rax + 0x14], 0x40000
je 0x140032336
mov byte [rbx + 0x48e6], r15b
mov eax, dword [rbx + 0x48d4]
test eax, eax
je 0x14003235e
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], r14d
call fcn.1400329e0
cmp dword [rbx + 0x4910], 0xffffffff
jne 0x140032464
mov rdi, qword [0x140088258]
mov rbp, qword [rdi + 0x48a8]
test rbp, rbp
je 0x140032464
cmp qword [rdi + 0x4a10], 0
jne 0x140032464
test dword [rbp + 0x14], 0x40000
jne 0x140032464
mov r8d, r15d
mov edx, 0xffffffff
mov ecx, 0x200
call fcn.14002f870
test al, al
je 0x140032464
cmp byte [rdi + 0xe24], 0
jne 0x140032464
cmp byte [rdi + 0xe26], 0
jne 0x140032464
movzx eax, byte [rdi + 0xe25]
test byte [rdi + 8], r15b
je 0x14003240d
test al, al
je 0x1400323f6
mov r15d, 0xffffffff
jmp 0x140032427
cmp byte [rdi + 0x48e6], r15b
jne 0x140032427
cmp dword [rdi + 0x3f28], 0
jne 0x140032427
mov r15d, r14d
jmp 0x140032427
test al, al
je 0x140032419
mov r15d, 0xffffffff
jmp 0x140032427
cmp dword [rdi + 0x3f28], 0
mov r15d, r14d
setne r15b
mov dword [rdi + 0x4940], r15d
mov eax, 0x21
cmp byte [rbp + 0xbc], 0
mov r9d, 3
mov r8d, 0x400
cmovne r9d, eax
sar r15d, 0x1f
lea ecx, [rax - 0x22]
lea edx, [r15 + 3]
call fcn.140031260
mov dword [rdi + 0x4944], 0xffffffff
mov rax, qword [0x140088258]
mov r15, qword [rsp + 0x70]
mov rdi, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0xa0]
cmp byte [rax + 0x4901], 0
jne 0x140032496
cmp byte [rax + 0x48e9], 0
jne 0x140032496
xor cl, cl
jmp 0x140032498
mov cl, 1
mov byte [rax + 0x48e8], cl
mov rcx, qword [rbx + 0x48a8]
mov byte [rbx + 0x48e4], 0
test rcx, rcx
je 0x1400326ab
test dword [rcx + 0x14], 0x40000
jne 0x1400326ab
cmp qword [rbx + 0x4a10], 0
jne 0x1400326ab
mov rax, qword [rcx]
movss xmm0, dword [rax + 0x3c2c]
mov rax, qword [rcx + 0x368]
mulss xmm0, dword [rcx + 0x290]
test rax, rax
je 0x1400324f7
mulss xmm0, dword [rax + 0x290]
cmp word [rcx + 0x15c], 0
mulss xmm0, dword [0x1400734a8]
mov edx, dword [rbx + 0x4910]
movss xmm2, dword [0x140073408]
mulss xmm0, dword [rbx + 0x18]
addss xmm0, dword [0x140073404]
cvttss2si eax, xmm0
movd xmm4, eax
cvtdq2ps xmm4, xmm4
jne 0x1400325c9
cmp byte [rcx + 0x161], 0
je 0x1400325c9
cmp edx, 0xffffffff
je 0x1400325c9
movss xmm1, dword [0x1400734c0]
test edx, edx
je 0x14003255f
cmp edx, 1
jne 0x14003258f
movaps xmm0, xmm2
jmp 0x140032562
movaps xmm0, xmm1
mulss xmm0, xmm4
mov dword [rcx + 0x9c], r14d
mov dword [rcx + 0xa4], r14d
addss xmm0, dword [rcx + 0x84]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rcx + 0x94], xmm0
cmp edx, 2
je 0x14003259c
cmp edx, 3
jne 0x1400325c9
movaps xmm1, xmm2
mulss xmm1, xmm4
mov dword [rcx + 0xa0], r14d
mov dword [rcx + 0xa8], r14d
addss xmm1, dword [rcx + 0x88]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rcx + 0x98], xmm0
test sil, sil
je 0x1400326ab
mov rax, qword [0x140088258]
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 0x14003260b
cmp byte [rax + 0x44dc], 0
je 0x140032627
cmp byte [rax + 0x356c], 0
je 0x14003262f
cmp byte [rax + 0x44e8], 0
jne 0x14003262f
movss xmm2, dword [0x140073474]
jmp 0x14003262f
movss xmm2, dword [0x140075080]
xorps xmm3, xmm3
ucomiss xmm0, xmm3
jp 0x140032639
je 0x140032673
cmp byte [rcx + 0xb4], 0
je 0x140032673
mulss xmm0, xmm4
mov dword [rcx + 0x9c], r14d
mov dword [rcx + 0xa4], r14d
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 0x14003267a
je 0x1400326ab
mulss xmm1, xmm4
mov dword [rcx + 0xa0], r14d
mov dword [rcx + 0xa8], r14d
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 0x1400326c8
test sil, sil
jne 0x1400326c8
mov word [rbx + 0x48e6], 1
jmp 0x140032713
test r12b, r12b
je 0x140032713
test byte [rbx + 8], 4
je 0x140032713
test byte [rbx + 0xc], 4
je 0x140032713
lea rcx, [rsp + 0x20]
call fcn.140030ae0
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 + 0x493c], r14d
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.14006c800
add rsp, 0x78
pop r14
pop r12
pop rsi
pop rbx
ret