Function at 0x14009b900
Capabilities:
Hide graphical window

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xe0
call fcn.14008f7f0
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov rcx, rax
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
cmp byte [0x1401f96f4], 0
jne 0x14009b941
mov eax, 1
jmp 0x14009bde4
mov dword [0x1401f95c0], 0x50
mov dword [0x1401f95c4], 0x40
lea rax, [0x140068db0]
mov qword [0x1401f95c8], rax
xor edi, edi
mov qword [0x1401f95d0], rdi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov qword [0x1401f95d8], rax
xorps xmm0, xmm0
movdqa xmmword [0x1401f95e0], xmm0
xorps xmm1, xmm1
movdqa xmmword [0x1401f95f0], xmm1
lea rax, str.class001
mov qword [0x1401f9600], rax
mov qword [0x1401f9608], rdi
lea rcx, [0x1401f95c0]
call qword [sym.imp.USER32.dll_RegisterClassExW]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ebx, eax
lea ecx, [rdi + 1]
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, eax
lea eax, [rbx - 0x38e]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea eax, [rcx - 0x280]
cdq
sub eax, edx
sar eax, 1
mov qword [rsp + 0x58], rdi
mov rcx, qword [0x1401f95d8]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rdi
mov dword [rsp + 0x38], 0x280
mov dword [rsp + 0x30], 0x38e
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r8d
mov r9d, 0x80000000
lea r8, str.SLTools
mov rdx, qword [0x1401f9600]
mov ecx, 0x80000
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov qword [0x1401f9620], rax
lea r9d, [rdi + 2]
mov r8b, 0xff
xor edx, edx
mov rcx, rax
call qword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
lea rdx, [rbp - 0x39]
mov rcx, qword [0x1401f9620]
call qword [sym.imp.USER32.dll_GetClientRect]
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
lea rdx, [rbp - 0x29]
mov rcx, qword [0x1401f9620]
call qword [sym.imp.USER32.dll_GetWindowRect]
mov qword [rbp + 0x67], rdi
lea rdx, [rbp + 0x67]
mov rcx, qword [0x1401f9620]
call qword [sym.imp.USER32.dll_ClientToScreen]
mov eax, dword [rbp + 0x67]
add eax, 5
mov dword [rbp - 0x49], eax
mov eax, dword [rbp + 0x6b]
add eax, 5
mov dword [rbp - 0x45], eax
mov eax, dword [rbp - 0x31]
add eax, 0xfffffffb
mov dword [rbp - 0x41], eax
mov eax, dword [rbp - 0x2d]
add eax, 0xfffffffb
mov dword [rbp - 0x3d], eax
lea rdx, [rbp - 0x49]
mov rcx, qword [0x1401f9620]
call qword [sym.imp.dwmapi.dll_DwmExtendFrameIntoClientArea]
lea edx, [rdi + 0xa]
mov rcx, qword [0x1401f9620]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [0x1401f9620]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov qword [rbp - 5], rdi
mov qword [rbp + 0xf], 2
mov qword [rbp + 0x27], 2
mov qword [rbp - 0x19], rdi
mov dword [rbp - 9], 0x1c
mov dword [rbp - 0x11], 0x3c
mov dword [rbp - 0xd], 1
mov dword [rbp + 0xb], 0x20
mov rax, qword [0x1401f9620]
mov qword [rbp + 0x17], rax
mov qword [rbp + 3], 1
mov qword [rbp + 0x1f], 1
mov dword [rbp + 0x6f], 0xb000
mov dword [rbp + 0x73], 0xa000
lea rbx, [0x1401f9588]
mov qword [rsp + 0x58], rbx
lea rax, [rbp + 0x67]
mov qword [rsp + 0x50], rax
lea rsi, [0x1401f9598]
mov qword [rsp + 0x48], rsi
lea r14, [0x1401f95a8]
mov qword [rsp + 0x40], r14
lea rax, [rbp - 0x19]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 7
mov dword [rsp + 0x28], 2
lea rax, [rbp + 0x6f]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [rdi + 1]
xor ecx, ecx
call qword [sym.imp.d3d11.dll_D3D11CreateDeviceAndSwapChain]
cmp eax, 0x887a0004
jne 0x14009bbf3
mov qword [rsp + 0x58], rbx
lea rax, [rbp + 0x67]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], r14
lea rax, [rbp - 0x19]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 7
mov dword [rsp + 0x28], 2
lea rax, [rbp + 0x6f]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [rdi + 5]
xor ecx, ecx
call qword [sym.imp.d3d11.dll_D3D11CreateDeviceAndSwapChain]
test eax, eax
jne 0x14009bc37
mov rcx, qword [0x1401f95a8]
mov rax, qword [rcx]
lea r9, [rbp + 0x77]
lea r8, [0x140141850]
xor edx, edx
call qword [rax + 0x48]
mov rcx, qword [0x1401f9598]
mov rax, qword [rcx]
lea r9, [0x1401f9610]
xor r8d, r8d
mov rdx, qword [rbp + 0x77]
call qword [rax + 0x48]
mov rcx, qword [rbp + 0x77]
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
call fcn.140068f40
cmp byte [0x1401f74ec], 0
je 0x14009bd57
movabs rsi, 0x7fffffffffb3b4bf
mov r15d, 0xff
movabs r14, 0x7fffffffffffffff
call fcn.14006d7e0
call fcn.14006da20
nop
call fcn.140011a10
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov rcx, qword [0x1401f9588]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [0x1401f9610]
lea edx, [r9 + 1]
call qword [rax + 0x108]
mov rcx, qword [0x1401f9588]
mov rax, qword [rcx]
lea r8, [rbp - 0x29]
mov rdx, qword [0x1401f9610]
call qword [rax + 0x190]
mov rbx, qword [0x1401f8c48]
cmp dword [rbx + 0x48c8], 0
jg 0x14009bcdd
mov r8d, 0x710
lea rdx, str.C:_sourceCSLTools_Simgui.h
lea rcx, str.i___0__i___Size
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov rax, qword [rbx + 0x48d0]
mov rcx, qword [rax]
add rcx, 0x48
mov rax, rdi
cmp byte [rcx], dil
cmovne rax, rcx
mov rcx, rax
call fcn.14004ef10
mov rcx, qword [0x1401f95a8]
mov rax, qword [rcx]
xor r8d, r8d
lea edx, [r8 + 1]
call qword [rax + 0x40]
nop
lea rcx, [rbp + 0x6f]
call fcn.1400647a0
mov rax, qword [rbp + 0x6f]
cmp rax, rsi
je 0x14009bd3d
mov ecx, 1
cmovl ecx, r15d
test cl, cl
jns 0x14009bd3d
add rax, 0x4c4b40
mov qword [rbp + 0x67], rax
jmp 0x14009bd41
mov qword [rbp + 0x67], r14
lea rcx, [rbp + 0x67]
call fcn.140066e60
cmp byte [0x1401f74ec], 0
jne 0x14009bc63
call fcn.14006d610
nop
mov rcx, qword [0x1401f9610]
test rcx, rcx
je 0x14009bd76
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x1401f9610], rdi
mov rcx, qword [0x1401f95a8]
test rcx, rcx
je 0x14009bd8f
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x1401f95a8], rdi
mov rcx, qword [0x1401f9588]
test rcx, rcx
je 0x14009bda8
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x1401f9588], rdi
mov rcx, qword [0x1401f9598]
test rcx, rcx
je 0x14009bdc1
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x1401f9598], rdi
mov rcx, qword [0x1401f9620]
call qword [sym.imp.USER32.dll_DestroyWindow]
mov rdx, qword [0x1401f95d8]
mov rcx, qword [0x1401f9600]
call qword [sym.imp.USER32.dll_UnregisterClassW]
xor eax, eax
mov rbx, qword [rsp + 0x128]
add rsp, 0xe0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret