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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x748
lea rbp, [rsp + 0x80]
movapd xmmword [rbp + 0x6b0], xmm8
movdqa xmmword [rbp + 0x6a0], xmm7
movapd xmmword [rbp + 0x690], xmm6
mov qword [rbp + 0x688], 0xfffffffffffffffe
cmp qword [rcx + 0x1c0], 0
je 0x140010a61
mov r14, rcx
cmp byte [rcx + 0x183], 0
je 0x14000ff92
cmp byte [r14 + 0x1b0], 0
jne 0x14000ff92
xor ecx, ecx
xor edx, edx
mov r8d, 0xffffffff
mov r9d, 0xffffffff
call sub.GDI32.dll_CreateRectRgn
mov rdi, rax
movabs rax, 0x100000003
mov qword [rbp + 0x480], rax
mov qword [rbp + 0x488], rdi
mov dword [rbp + 0x490], 0
mov rcx, qword [r14 + 0x1b8]
lea rdx, [rbp + 0x480]
call sub.dwmapi.dll_DwmEnableBlurBehindWindow
mov dword [rbp + 0xa0], eax
test eax, eax
jns 0x14000ff8a
mov rax, qword [0x1400663d0]
mov rax, qword [rax]
cmp rax, 2
jb 0x14000ff8a
lea rax, [rbp + 0xa0]
mov qword [rbp + 0x388], rax
lea rax, [0x1400480f0]
mov qword [rbp + 0x390], rax
lea rax, str.Setting_transparent_window_is_failed._HRESULT_Code:_0x
mov qword [rbp + 0x188], rax
mov qword [rbp + 0x190], 1
mov qword [rbp + 0x198], 0
lea rax, [rbp + 0x388]
mov qword [rbp + 0x1a8], rax
mov qword [rbp + 0x1b0], 1
lea r8, str.winit::platform_impl::platform::window
lea rcx, [rbp + 0x188]
mov edx, 2
xor r9d, r9d
call fcn.14002dc10
mov rcx, rdi
call sub.GDI32.dll_DeleteObject
mov eax, dword [r14 + 8]
mov dword [rbp + 0x668], eax
cmp eax, 2
jne 0x140010025
mov eax, dword [r14 + 0x20]
mov dword [rbp + 0x648], eax
cmp eax, 2
jne 0x140010050
mov eax, dword [r14 + 0x38]
mov dword [rbp + 0x640], eax
cmp eax, 2
jne 0x14001007b
mov eax, dword [r14 + 0x50]
mov dword [rbp + 0x670], eax
cmp eax, 2
je 0x14000fff2
mov eax, dword [r14 + 0x64]
mov dword [rbp + 0xb0], eax
movdqu xmm0, xmmword [r14 + 0x54]
movdqa xmmword [rbp + 0xa0], xmm0
lea rdi, [r14 + 0x160]
mov al, byte [r14 + 0x180]
mov byte [rbp + 0x682], al
mov rax, qword [r14 + 0x68]
cmp rax, 2
jne 0x1400100a5
mov eax, 2
mov qword [rbp + 0x650], rax
jmp 0x14001013d
mov eax, dword [r14 + 0x1c]
mov dword [rbp + 0x630], eax
movdqu xmm0, xmmword [r14 + 0xc]
movdqa xmmword [rbp + 0x620], xmm0
mov eax, dword [r14 + 0x20]
mov dword [rbp + 0x648], eax
cmp eax, 2
je 0x14000ffb8
mov eax, dword [r14 + 0x34]
mov dword [rbp + 0x610], eax
movdqu xmm0, xmmword [r14 + 0x24]
movdqa xmmword [rbp + 0x600], xmm0
mov eax, dword [r14 + 0x38]
mov dword [rbp + 0x640], eax
cmp eax, 2
je 0x14000ffcb
mov eax, dword [r14 + 0x4c]
mov dword [rbp - 0x30], eax
movdqu xmm0, xmmword [r14 + 0x3c]
movdqa xmmword [rbp - 0x40], xmm0
mov eax, dword [r14 + 0x50]
mov dword [rbp + 0x670], eax
cmp eax, 2
jne 0x14000ffda
jmp 0x14000fff2
test rax, rax
je 0x1400100ce
mov rax, qword [r14 + 0x70]
mov qword [rbp + 0x660], rax
mov rax, qword [r14 + 0x78]
mov qword [rbp + 0x658], rax
mov eax, 1
mov qword [rbp + 0x650], rax
jmp 0x140010124
movzx eax, word [r14 + 0x15c]
mov word [rbp + 0x680], ax
movzx eax, word [r14 + 0x15e]
mov word [rbp + 0x67e], ax
lea rdx, [r14 + 0x80]
mov rax, qword [r14 + 0x70]
mov qword [rbp + 0x660], rax
mov rax, qword [r14 + 0x78]
mov qword [rbp + 0x658], rax
lea rcx, [rbp + 0x188]
mov r8d, 0xdc
call sub.VCRUNTIME140.dll_memcpy
xor eax, eax
mov qword [rbp + 0x650], rax
lea rcx, [rbp + 0x388]
lea rdx, [rbp + 0x188]
mov r8d, 0xdc
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rbp + 0x188]
mov rdx, rdi
call fcn.140043390
mov dil, byte [r14 + 0x181]
mov bl, byte [r14 + 0x182]
mov sil, byte [r14 + 0x183]
mov r15b, byte [r14 + 0x184]
mov r12b, byte [r14 + 0x185]
mov r13, qword [r14 + 0x178]
test r13, r13
je 0x140010196
lock add qword [r13], 1
mov rcx, qword [rbp + 0x658]
mov rdx, qword [rbp + 0x660]
jg 0x1400101a7
jmp 0x140010a43
xor r13d, r13d
mov rcx, qword [rbp + 0x658]
mov rdx, qword [rbp + 0x660]
mov eax, dword [rbp + 0x668]
mov dword [rbp + 0x480], eax
movaps xmm0, xmmword [rbp + 0x620]
movups xmmword [rbp + 0x484], xmm0
mov eax, dword [rbp + 0x630]
mov dword [rbp + 0x494], eax
mov eax, dword [rbp + 0x648]
mov dword [rbp + 0x498], eax
movaps xmm0, xmmword [rbp + 0x600]
movups xmmword [rbp + 0x49c], xmm0
mov eax, dword [rbp + 0x610]
mov dword [rbp + 0x4ac], eax
mov eax, dword [rbp + 0x640]
mov dword [rbp + 0x4b0], eax
movaps xmm0, xmmword [rbp - 0x40]
movups xmmword [rbp + 0x4b4], xmm0
mov eax, dword [rbp - 0x30]
mov dword [rbp + 0x4c4], eax
mov eax, dword [rbp + 0x670]
mov dword [rbp + 0x4c8], eax
movaps xmm0, xmmword [rbp + 0xa0]
movups xmmword [rbp + 0x4cc], xmm0
mov eax, dword [rbp + 0xb0]
mov dword [rbp + 0x4dc], eax
mov al, byte [rbp + 0x682]
mov byte [rbp + 0x5f8], al
mov rax, qword [rbp + 0x650]
mov qword [rbp + 0x4e0], rax
mov qword [rbp + 0x4e8], rdx
mov qword [rbp + 0x4f0], rcx
lea rcx, [rbp + 0x4f8]
lea rdx, [rbp + 0x388]
mov r8d, 0xdc
call sub.VCRUNTIME140.dll_memcpy
movzx eax, word [rbp + 0x680]
mov word [rbp + 0x5d4], ax
movzx eax, word [rbp + 0x67e]
mov word [rbp + 0x5d6], ax
movdqu xmm0, xmmword [rbp + 0x188]
movdqu xmmword [rbp + 0x5d8], xmm0
mov rax, qword [rbp + 0x198]
mov qword [rbp + 0x5e8], rax
mov byte [rbp + 0x5f9], dil
mov byte [rbp + 0x5fa], bl
mov byte [rbp + 0x5fb], sil
mov byte [rbp + 0x5fc], r15b
mov byte [rbp + 0x5fd], r12b
mov qword [rbp + 0x5f0], r13
mov rax, qword [r14 + 0x1b8]
mov rdx, qword [r14 + 0x1c0]
lock add qword [rdx], 1
jle 0x140010a43
lea rcx, [r14 + 0x1c8]
mov qword [rbp + 0x188], rdx
mov qword [rbp + 0x190], rax
mov byte [rbp + 0x198], bl
lea rdx, [rbp + 0x188]
mov qword [rbp + 0x668], rcx
call fcn.1400127c0
mov esi, dword [rbp + 0x480]
cmp esi, 2
jne 0x140010353
movq xmm0, qword [0x14004e9f0]
call fcn.140029430
mov r15d, eax
movq xmm0, qword [0x14004e9f8]
call fcn.140029430
mov r12d, eax
xor esi, esi
jmp 0x140010370
mov r15d, dword [rbp + 0x484]
mov r12d, dword [rbp + 0x488]
mov r13d, dword [rbp + 0x48c]
movsd xmm6, qword [rbp + 0x490]
mov rdi, qword [r14 + 0x1c0]
lea rbx, [rdi + 0x10]
mov cl, 1
xor eax, eax
lock cmpxchg byte [rdi + 0x10], cl
je 0x1400103a0
mov qword [rbp + 0x188], 0
lea rdx, [rbp + 0x188]
mov rcx, rbx
call fcn.14004af10
movq xmm7, qword [rdi + 0x78]
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rdi + 0x10], cl
je 0x1400103ba
mov rcx, rbx
xor edx, edx
call fcn.14004b670
mov ebx, r12d
test esi, esi
je 0x1400103fd
movq rax, xmm7
test rax, rax
js 0x140010a47
movdqa xmm0, xmm7
call fcn.140043510
cmp al, 4
jne 0x140010a47
shl r13, 0x20
or r13, rbx
movq xmm0, r13
mulsd xmm0, xmm7
call fcn.140029430
mov edi, eax
mulsd xmm6, xmm7
jmp 0x140010417
mov eax, r15d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
call fcn.140029430
mov edi, eax
xorps xmm6, xmm6
cvtsi2sd xmm6, rbx
movapd xmm0, xmm6
call fcn.140029430
mov ebx, eax
mov eax, edi
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
call fcn.140029430
mov edi, eax
mov eax, ebx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
call fcn.140029430
mov rdx, qword [r14 + 0x1c0]
lock add qword [rdx], 1
jle 0x140010a43
mov ebx, eax
mov r8, qword [r14 + 0x1b8]
mov rcx, qword [rbp + 0x668]
call fcn.140012570
mov rcx, qword [r14 + 0x1b8]
mov edx, edi
mov r8d, ebx
call fcn.140025000
cmp byte [rbp + 0x5f9], 0
je 0x1400104c4
mov rax, qword [r14 + 0x1b8]
mov rcx, qword [r14 + 0x1c0]
lock add qword [rcx], 1
jle 0x140010a43
mov qword [rbp + 0x188], rcx
mov qword [rbp + 0x190], rax
mov byte [rbp + 0x198], 1
lea rdx, [rbp + 0x188]
mov rcx, qword [rbp + 0x668]
call fcn.1400122f0
cmp qword [rbp + 0x4e0], 2
je 0x140010839
lea rdx, [rbp + 0x4e0]
lea rcx, [rbp + 0x388]
mov r8d, pe_nt_image_headers64
call sub.VCRUNTIME140.dll_memcpy
mov r15, qword [r14 + 0x1b8]
mov rdi, qword [r14 + 0x1c0]
lock add qword [rdi], 1
jle 0x140010a43
mov qword [rbp + 0x620], rdi
lea rbx, [rdi + 0x10]
mov cl, 1
xor eax, eax
lock cmpxchg byte [rdi + 0x10], cl
je 0x14001053b
mov qword [rbp + 0x188], 0
mov byte [rbp + 0x687], 1
lea rdx, [rbp + 0x188]
mov rcx, rbx
call fcn.14004af10
mov qword [rbp + 0x600], rbx
mov rsi, qword [rdi + 0x80]
cmp rsi, 2
jne 0x14001059a
mov rax, qword [rbp + 0x388]
cmp rax, 2
jne 0x1400105bc
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rbx], cl
je 0x140010577
mov byte [rbp + 0x687], 1
mov rcx, rbx
xor edx, edx
call fcn.14004b670
mov rax, qword [rbp + 0x620]
lock sub qword [rax], 1
jne 0x14001082d
lea rcx, [rbp + 0x620]
call fcn.140004a00
jmp 0x14001082d
test rsi, rsi
je 0x1400105c7
mov r12, qword [rdi + 0x88]
mov rax, qword [rdi + 0x90]
mov qword [rbp + 0x640], rax
mov r13d, 1
jmp 0x140010614
mov r13d, 2
jmp 0x14001068d
movzx eax, word [rdi + 0x174]
mov word [rbp + 0x650], ax
movzx eax, word [rdi + 0x176]
mov word [rbp + 0x682], ax
lea rdx, [rdi + 0x98]
mov r12, qword [rdi + 0x88]
mov rax, qword [rdi + 0x90]
mov qword [rbp + 0x640], rax
lea rcx, [rbp + 0x188]
mov r8d, 0xdc
call sub.VCRUNTIME140.dll_memcpy
xor r13d, r13d
lea rcx, [rbp - 0x40]
lea rdx, [rbp + 0x188]
mov r8d, 0xdc
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rbp + 0x388]
cmp rax, 2
jne 0x140010653
mov qword [rbp + 0x648], r13
mov qword [rbp + 0x670], rbx
mov rbx, r12
mov r13d, 2
jmp 0x140010718
cmp rsi, rax
jne 0x14001068d
test rsi, rsi
je 0x1400109ef
mov eax, 1
cmp r12, qword [rbp + 0x390]
jne 0x14001068d
cmp r12, 1
jne 0x14001055c
mov rcx, qword [rdi + 0x90]
cmp rcx, qword [rbp + 0x398]
je 0x14001055c
mov qword [rbp + 0x670], rbx
mov qword [rbp + 0x648], r13
mov rbx, r12
test rax, rax
je 0x1400106b9
mov r12, qword [rbp + 0x390]
mov rsi, qword [rbp + 0x398]
mov r13d, 1
jmp 0x1400106ff
movzx eax, word [rbp + 0x47c]
mov word [rbp + 0x660], ax
movzx eax, word [rbp + 0x47e]
mov word [rbp + 0x658], ax
lea rdx, [rbp + 0x3a0]
mov r12, qword [rbp + 0x390]
mov rsi, qword [rbp + 0x398]
lea rcx, [rbp + 0x188]
mov r8d, 0xdc
call sub.VCRUNTIME140.dll_memcpy
xor r13d, r13d
lea rcx, [rbp + 0xa0]
lea rdx, [rbp + 0x188]
mov r8d, 0xdc
call sub.VCRUNTIME140.dll_memcpy
mov qword [rdi + 0x80], r13
mov qword [rdi + 0x88], r12
mov qword [rdi + 0x90], rsi
lea rcx, [rdi + 0x98]
lea rdx, [rbp + 0xa0]
mov r8d, 0xdc
call sub.VCRUNTIME140.dll_memcpy
movzx eax, word [rbp + 0x660]
mov word [rdi + 0x174], ax
movzx eax, word [rbp + 0x658]
mov word [rdi + 0x176], ax
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rdi + 0x10], cl
mov rsi, qword [rbp + 0x648]
je 0x140010790
mov byte [rbp + 0x686], 1
mov byte [rbp + 0x685], 0
mov rcx, qword [rbp + 0x670]
xor edx, edx
call fcn.14004b670
mov qword [rbp + 0x188], rsi
mov qword [rbp + 0x190], rbx
mov rax, qword [rbp + 0x640]
mov qword [rbp + 0x198], rax
lea rcx, [rbp + 0x1a0]
lea rdx, [rbp - 0x40]
mov r8d, 0xdc
call sub.VCRUNTIME140.dll_memcpy
movzx eax, word [rbp + 0x650]
mov word [rbp + 0x27c], ax
movzx eax, word [rbp + 0x682]
mov word [rbp + 0x27e], ax
lea rcx, [rbp + 0x280]
lea rdx, [rbp + 0x388]
mov r8d, pe_nt_image_headers64
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rbp + 0x620]
mov qword [rbp + 0x378], rax
mov qword [rbp + 0x380], r15
mov byte [rbp + 0x686], 0
mov byte [rbp + 0x685], 0
lea rdx, [rbp + 0x188]
mov rcx, qword [rbp + 0x668]
call fcn.140012a30
mov rcx, qword [r14 + 0x1b8]
call fcn.14002b480
mov esi, dword [rbp + 0x4c8]
cmp esi, 2
je 0x140010988
mov r15d, dword [rbp + 0x4cc]
movsd xmm8, qword [rbp + 0x4d0]
movsd xmm6, qword [rbp + 0x4d8]
mov rbx, qword [r14 + 0x1c0]
lea rdi, [rbx + 0x10]
mov cl, 1
xor eax, eax
lock cmpxchg byte [rbx + 0x10], cl
je 0x140010890
mov qword [rbp + 0x188], 0
lea rdx, [rbp + 0x188]
mov rcx, rdi
call fcn.14004af10
movq xmm7, qword [rbx + 0x78]
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rbx + 0x10], cl
je 0x1400108aa
mov rcx, rdi
xor edx, edx
call fcn.14004b670
test esi, esi
je 0x1400108e4
movq rax, xmm7
test rax, rax
js 0x140010a7b
movdqa xmm0, xmm7
call fcn.140043510
cmp al, 4
jne 0x140010a7b
mulsd xmm8, xmm7
movapd xmm0, xmm8
call fcn.140029460
mov edi, eax
mulsd xmm6, xmm7
jmp 0x1400108ff
xorps xmm0, xmm0
cvtsi2sd xmm0, r15d
call fcn.140029460
mov edi, eax
movq rax, xmm8
xorps xmm6, xmm6
cvtsi2sd xmm6, eax
movapd xmm0, xmm6
call fcn.140029460
mov ebx, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, edi
call fcn.140029460
mov edi, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, ebx
call fcn.140029460
mov rdx, qword [r14 + 0x1c0]
lock add qword [rdx], 1
jle 0x140010a43
mov ebx, eax
mov r8, qword [r14 + 0x1b8]
mov rcx, qword [rbp + 0x668]
call fcn.1400120a0
mov rcx, qword [r14 + 0x1b8]
mov dword [rsp + 0x30], 0x4015
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
xor edx, edx
mov r8d, edi
mov r9d, ebx
call sub.USER32.dll_SetWindowPos
mov rcx, qword [r14 + 0x1b8]
xor edx, edx
xor r8d, r8d
call fcn.1400494da
mov rdx, qword [rbp + 0x5e0]
test rdx, rdx
je 0x1400109a6
mov rcx, qword [rbp + 0x5d8]
mov r8d, 1
call fcn.140015540
mov rax, qword [rbp + 0x5f0]
test rax, rax
je 0x1400109c5
lock sub qword [rax], 1
jne 0x1400109c5
lea rcx, [rbp + 0x5f0]
call fcn.1400044e0
movaps xmm6, xmmword [rbp + 0x690]
movaps xmm7, xmmword [rbp + 0x6a0]
movaps xmm8, xmmword [rbp + 0x6b0]
add rsp, 0x748
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov qword [rbp + 0x670], rbx
lea rcx, [rdi + 0x88]
lea rdx, [rbp + 0x390]
mov byte [rbp + 0x686], 1
mov byte [rbp + 0x685], 1
call fcn.140025f60
test al, al
mov rbx, qword [rbp + 0x670]
jne 0x14001055c
mov rax, qword [rbp + 0x388]
cmp rax, 2
jne 0x140010694
mov qword [rbp + 0x648], r13
jmp 0x140010645
ud2
lea rcx, str.assertion_failed:_validate_scale_factor_scale_factor_C:Rust.cargo_registry_srcgithub.com_1ecc6299db9ec823winit_0.26.1_srcdpi.rs
lea r8, [0x14004e4b8]
mov edx, 0x35
call fcn.14004ca30
jmp 0x140010a93
lea rcx, str.failed_window_creation
lea r8, [0x14004ec18]
mov edx, 0x16
call fcn.14004ca20
ud2
lea rcx, str.assertion_failed:_validate_scale_factor_scale_factor_C:Rust.cargo_registry_srcgithub.com_1ecc6299db9ec823winit_0.26.1_srcdpi.rs
lea r8, [0x14004e4d0]
mov edx, 0x35
call fcn.14004ca30
ud2