Function at 0x140040940
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x10], rbx
push rsi
sub rsp, 0xe0
mov rax, qword [0x140059040]
xor rax, rsp
mov qword [rsp + 0xd0], rax
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov rcx, rax
mov edx, 5
call qword [sym.imp.USER32.dll_ShowWindow]
lea rax, [0x140040880]
mov qword [rsp + 0x70], 0x50
xor esi, esi
mov qword [rsp + 0x78], rax
mov edx, 0x7f00
mov qword [rsp + 0x80], rsi
xor ecx, ecx
mov qword [rsp + 0x88], rsi
call qword [sym.imp.USER32.dll_LoadIconA]
mov edx, 0x7f00
xor ecx, ecx
mov qword [rsp + 0x90], rax
call qword [sym.imp.USER32.dll_LoadCursorA]
xorps xmm0, xmm0
lea rbx, str.Element
mov edx, 0x7f00
mov qword [rsp + 0x98], rax
xor ecx, ecx
movdqa xmmword [rsp + 0xa0], xmm0
mov qword [rsp + 0xb0], rbx
call qword [sym.imp.USER32.dll_LoadIconA]
lea rcx, [rsp + 0x70]
mov qword [rsp + 0xb8], rax
call qword [sym.imp.USER32.dll_RegisterClassExA]
test ax, ax
je 0x140040d64
lea rdx, [0x140050b10]
xor ecx, ecx
call qword [sym.imp.USER32.dll_FindWindowA]
mov qword [0x140059188], rax
test rax, rax
je 0x140040b0b
lea rdx, [rsp + 0x60]
mov rcx, rax
call qword [sym.imp.USER32.dll_GetWindowRect]
mov ecx, dword [rsp + 0x64]
mov r9d, 0x90000000
mov r8d, dword [rsp + 0x60]
mov edx, dword [rsp + 0x68]
mov eax, dword [rsp + 0x6c]
sub edx, r8d
mov qword [rsp + 0x58], rsi
sub eax, ecx
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], edx
mov dword [rsp + 0x28], ecx
xor ecx, ecx
mov dword [rsp + 0x20], r8d
mov r8, rbx
mov dword [0x140059190], edx
mov rdx, rbx
mov dword [0x140059194], eax
call qword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, dword [0x140059190]
mov edx, 0xffffffec
mov dword [rsp + 0xc8], ecx
mov ecx, dword [0x140059194]
mov dword [rsp + 0xcc], ecx
mov rcx, rax
mov qword [0x140059180], rax
mov qword [rsp + 0xc0], rsi
call qword [sym.imp.USER32.dll_GetWindowLongA]
mov rcx, qword [0x140059180]
mov edx, 0xffffffec
and eax, 0xffffffdf
or eax, 0x8080000
mov r8d, eax
call qword [sym.imp.USER32.dll_SetWindowLongA]
mov rcx, qword [0x140059180]
lea rdx, [rsp + 0xc0]
call qword [sym.imp.dwmapi.dll_DwmExtendFrameIntoClientArea]
mov rcx, qword [0x140059180]
mov edx, 5
call qword [sym.imp.USER32.dll_ShowWindow]
mov rbx, qword [0x140059180]
lea rdx, [0x140059bc8]
mov ecx, 0x20
call qword [sym.imp.d3d9.dll_Direct3DCreate9Ex]
test eax, eax
jns 0x140040b34
mov ecx, 3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov eax, dword [0x140059190]
lea rdx, [0x140059c10]
mov rcx, qword [0x140059bc8]
mov r9, rbx
mov qword [rsp + 0x38], rdx
mov r8d, 1
mov dword [0x140059bd0], eax
lea rdx, [0x140059bd0]
mov eax, dword [0x140059194]
mov qword [0x140059bdc], rsi
mov qword [0x140059be8], 1
mov qword [0x140059c04], rsi
mov dword [0x140059bf8], 1
mov qword [0x140059bf0], rbx
mov dword [0x140059be4], esi
mov dword [0x140059bd8], 0x15
mov dword [0x140059bd4], eax
mov dword [0x140059bfc], 1
mov dword [0x140059c00], 0x50
mov dword [0x140059c0c], 0x80000000
mov rax, qword [rcx]
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdx
xor edx, edx
mov dword [rsp + 0x20], 0x40
call qword [rax + 0xa0]
test eax, eax
jns 0x140040c01
mov rcx, qword [0x140059bc8]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov ecx, 4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov qword [rsp + 0xf0], rdi
call fcn.14000b010
mov rdi, qword [0x140059bc0]
lea rcx, [0x140059ca0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x140040d07
lea rcx, [0x140059c98]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x140040d07
mov rcx, qword [0x140059bc0]
lea rax, str.imgui_impl_win32
mov qword [0x140059c90], rbx
or dword [rcx + 0xc], 6
mov qword [rcx + 0xd8], rax
mov qword [rcx + 0x108], rbx
mov dword [rcx + 0x3c], 9
mov dword [rcx + 0x40], 0x25
mov dword [rcx + 0x44], 0x27
mov dword [rcx + 0x48], 0x26
mov dword [rcx + 0x4c], 0x28
mov dword [rcx + 0x50], 0x21
mov dword [rcx + 0x54], 0x22
mov dword [rcx + 0x58], 0x24
mov dword [rcx + 0x5c], 0x23
mov dword [rcx + 0x60], 0x2d
mov dword [rcx + 0x64], 0x2e
mov dword [rcx + 0x68], 8
mov dword [rcx + 0x6c], 0x20
mov dword [rcx + 0x70], 0xd
mov dword [rcx + 0x74], 0x1b
mov dword [rcx + 0x78], 0x41
mov dword [rcx + 0x7c], 0x43
mov dword [rcx + 0x80], 0x56
mov dword [rcx + 0x84], 0x58
mov dword [rcx + 0x88], 0x59
mov dword [rcx + 0x8c], 0x5a
jmp 0x140040d0e
mov rcx, qword [0x140059bc0]
mov rax, qword [0x140059c10]
lea rdx, str.imgui_impl_dx9
movss xmm3, dword [0x1400511e4]
mov qword [rcx + 0xe0], rdx
lea rdx, [0x140047800]
mov rcx, qword [rdi + 0xa0]
mov qword [rsp + 0x28], rsi
mov qword [0x140059c80], rax
mov qword [rsp + 0x20], rsi
call fcn.1400256b0
mov rcx, qword [0x140059bc8]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rdi, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.1400414a0
mov rbx, qword [rsp + 0xf8]
add rsp, 0xe0
pop rsi
ret