Function at 0x100de290
Capabilities:
Create thread
Enumerate gui resources
Hide graphical window
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1023695c
mov eax, dword fs:[0]
push eax
sub esp, 0x2a0
mov eax, dword [0x1033bbac]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 1
mov dword [ebp - 0x108], 0
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.1005a9f0
call fcn.1005aa20
push 0xb0
lea eax, [ebp - 0x100]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x100], 0x103205f8
lea ecx, [ebp - 0x98]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::constructor_void_]
push 0
push 0
lea eax, [ebp - 0xfc]
mov dword [ebp - 4], 0
push eax
lea ecx, [ebp - 0x100]
mov dword [ebp - 0x108], 1
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char_____bool_]
mov dword [ebp - 4], 1
mov eax, dword [ebp - 0x100]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ofstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x100]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x104], eax
lea eax, [ebp - 0xfc]
mov ecx, eax
mov dword [ebp - 0x144], eax
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0xfc], vtable.std::basic_filebuf_char__struct_std::char_traits_char__.0
mov byte [ebp - 0xb4], 0
mov byte [ebp - 0xbf], 0
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::_Init_void_]
mov eax, dword [0x1048f490]
mov ecx, dword [0x1048f494]
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb8], ecx
mov dword [ebp - 0xc4], 0
mov dword [ebp - 4], 3
cmp byte [0x1045946c], 1
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
mov ebx, dword [sym.imp.USER32.dll_FindWindowExW]
jne 0x100de421
push 0
push 0x100deee0
call dword [sym.imp.USER32.dll_EnumWindows]
push dword [0x10459468]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
je 0x100de406
push 9
push dword [0x10459468]
call edi
push str.AEngineRenderWindow
push str.AEngineRenderWindowClass
push 0
push dword [0x10459468]
call ebx
mov dword [0x10459468], eax
jmp 0x100de471
cmp byte [0x1045945b], 1
jne 0x100de46c
push 0
push 0x100deee0
call dword [sym.imp.USER32.dll_EnumWindows]
push dword [0x10459468]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
je 0x100de451
push 9
push dword [0x10459468]
call edi
push str.TitanOpenglWindow
push str.TitanOpenglWindowClass
push 0
push dword [0x10459468]
call ebx
mov dword [0x10459468], eax
jmp 0x100de471
mov eax, dword [0x10459468]
mov ebx, dword [sym.imp.USER32.dll_GetWindowRect]
push 0x10459484
push eax
call ebx
mov ecx, dword [0x10459484]
mov esi, dword [sym.imp.dwmapi.dll_DwmExtendFrameIntoClientArea]
test ecx, ecx
js 0x100de4ae
mov eax, dword [0x10459488]
test eax, eax
js 0x100de4ae
cmp dword [0x1045948c], 0
jl 0x100de4ae
cmp dword [0x10459490], 0
jge 0x100de538
lea eax, [ebp - 0x20]
push eax
push dword [0x10459468]
call ebx
mov eax, dword [0x10459490]
mov ecx, dword [0x10459488]
sub eax, ecx
mov edx, dword [0x1045948c]
mov esi, dword [0x10459484]
sub edx, esi
push 3
push eax
push edx
push ecx
push esi
push 0xffffffffffffffff
push dword [0x10458fb8]
mov dword [0x1048acb4], edx
mov dword [0x1048acb8], eax
call dword [sym.imp.USER32.dll_SetWindowPos]
push 1
push dword [0x1048acb8]
push dword [0x1048acb4]
push dword [0x10459488]
push dword [0x10459484]
push dword [0x10458fb8]
call dword [sym.imp.USER32.dll_MoveWindow]
mov esi, dword [sym.imp.dwmapi.dll_DwmExtendFrameIntoClientArea]
push 0x10458fbc
push dword [0x10458fb8]
call esi
mov eax, dword [0x10459488]
mov ecx, dword [0x10459484]
mov dword [0x10458fb4], eax
xorps xmm0, xmm0
mov eax, dword [0x1048acb4]
mov dword [0x10458fb0], eax
mov eax, dword [0x1048acb8]
mov dword [0x10458fac], eax
lea eax, [ebp - 0x13c]
push eax
mov dword [0x10458fcc], ecx
mov dword [ebp - 0x13c], 0x30
mov dword [ebp - 0x138], 3
mov dword [ebp - 0x134], 0x10065e50
movups xmmword [ebp - 0x130], xmm0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x118], 0x103207e0
mov dword [ebp - 0x114], str.DX11WindowClass
mov dword [ebp - 0x110], 0
call dword [sym.imp.USER32.dll_RegisterClassExW]
push 0
push 0
push 0
push 0
push dword [0x10458fac]
push dword [0x10458fb0]
push dword [0x10458fb4]
push dword [0x10458fcc]
push accept
push str.DX11Window
push str.DX11WindowClass
push 0x8000028
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov dword [0x10458fb8], eax
test eax, eax
je 0x100de636
movaps xmm0, xmmword [0x1032c0e0]
push 2
push 0xff
push 0
push eax
movups xmmword [0x10458fbc], xmm0
call dword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
push 0x10458fbc
push dword [0x10458fb8]
call esi
push 5
push dword [0x10458fb8]
call edi
push ecx
call fcn.100636c0
mov eax, dword [0x10459474]
add esp, 4
test eax, eax
je 0x100de64e
inc dword [eax + 0x370]
push 0x3d48
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov dword [ebp - 0x144], eax
lea ecx, [ebp - 0x13d]
add esp, 4
mov dword [ebp - 0x10c], ecx
mov dword [ebp - 0x108], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x100de689
push 0
mov ecx, eax
call fcn.1009c8f0
mov ecx, eax
jmp 0x100de68b
xor ecx, ecx
mov byte [ebp - 4], 3
mov eax, dword [0x10459474]
test eax, eax
cmove eax, ecx
mov dword [0x10459474], eax
call fcn.100a2e60
mov edi, dword [0x10459474]
mov ebx, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov dword [ebp - 0x104], edi
test edi, edi
jne 0x100de6d9
push 0xd69
push str.C:UsersAdminDesktopMEGA_2.5.4MEGA_2.5.4dsoundimgui_dockingimgui.cpp
push str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___and_ImGui::SetCurrentContext_____
call ebx
mov edi, dword [0x10459474]
add esp, 0xc
mov dword [ebp - 0x104], edi
call fcn.100ddef0
push 0x78
lea eax, [ebp - 0x234]
mov byte [edi + 0x358], 1
push 0
push eax
call sub.VCRUNTIME140.dll_memset
push 0x78
lea eax, [ebp - 0x1bc]
mov dword [ebp - 0x1fc], 0x7f7fffff
push 0
mov esi, 0xffff
mov dword [ebp - 0x1f0], 0x3f800000
push eax
mov word [ebp - 0x1ec], si
mov byte [ebp - 0x22c], 1
call sub.VCRUNTIME140.dll_memset
push 0x78
lea eax, [ebp - 0x2ac]
mov dword [ebp - 0x1a8], 3
push 0
push eax
mov dword [ebp - 0x1a4], 1
mov dword [ebp - 0x184], 0x7f7fffff
mov dword [ebp - 0x178], 0x3f800000
mov word [ebp - 0x174], si
mov byte [ebp - 0x1b4], 0
mov byte [ebp - 0x1f8], 1
mov byte [ebp - 0x218], 1
mov dword [ebp - 0x220], 2
mov dword [ebp - 0x21c], 2
call sub.VCRUNTIME140.dll_memset
movss xmm3, dword [0x1032b88c]
lea eax, [ebp - 0x1bc]
mov ecx, dword [edi + 0x98]
add esp, 0x24
mov byte [ebp - 0x2a4], 1
mov dword [ebp - 0x274], 0x7f7fffff
mov dword [ebp - 0x268], 0x3f800000
push 0
push eax
push 0x1f8e0
push 0x1042a990
mov word [ebp - 0x264], si
mov dword [ebp - 0x298], 1
mov dword [ebp - 0x294], 1
mov byte [ebp - 0x290], 1
call fcn.100bd0b0
movss xmm3, dword [0x1032b8a4]
mov esi, eax
mov ecx, dword [edi + 0x98]
lea eax, [ebp - 0x2ac]
push 0x1032b5d0
push eax
push 0x6458
push 0x1044a270
call fcn.100bd0b0
movss xmm3, dword [0x1032b888]
push 0x1032b5d0
mov dword [0x1045947c], eax
lea eax, [ebp - 0x234]
push eax
push ecx
mov ecx, dword [edi + 0x98]
push 0x102ae098
call fcn.100bd1d0
movss xmm3, dword [0x1032b884]
lea eax, [ebp - 0x1bc]
mov ecx, dword [edi + 0x98]
push 0
push eax
push 0x4f2a4
push 0x102cc730
call fcn.100bd0b0
mov dword [0x10458f84], esi
mov esi, dword [0x10458fb8]
push 0x1048f428
mov dword [0x10458f7c], eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x100de9f6
push 0x1048f420
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x100de9f6
mov eax, dword [0x10459474]
mov dword [0x1048f418], esi
test eax, eax
jne 0x100de8d4
push 0xd69
push str.C:UsersAdminDesktopMEGA_2.5.4MEGA_2.5.4dsoundimgui_dockingimgui.cpp
push str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___and_ImGui::SetCurrentContext_____
call ebx
mov eax, dword [0x10459474]
add esp, 0xc
or dword [eax + 0xc], 6
mov ebx, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [eax + 0xe0], esi
xor esi, esi
mov dword [eax + 0xbc], 0x1032931c
mov dword [eax + 0x34], 9
mov dword [eax + 0x38], 0x25
mov dword [eax + 0x3c], 0x27
mov dword [eax + 0x40], 0x26
mov dword [eax + 0x44], 0x28
mov dword [eax + 0x48], 0x21
mov dword [eax + 0x4c], 0x22
mov dword [eax + 0x50], 0x24
mov dword [eax + 0x54], 0x23
mov dword [eax + 0x58], 0x2d
mov dword [eax + 0x5c], 0x2e
mov dword [eax + 0x60], 8
mov dword [eax + 0x64], 0x20
mov dword [eax + 0x68], 0xd
mov dword [eax + 0x6c], 0x1b
mov dword [eax + 0x70], 0xd
mov dword [eax + 0x74], 0x41
mov dword [eax + 0x78], 0x43
mov dword [eax + 0x7c], 0x56
mov dword [eax + 0x80], 0x58
mov dword [eax + 0x84], 0x59
mov dword [eax + 0x88], 0x5a
mov dword [ebp - 0x34], str.xinput1_4.dll
mov dword [ebp - 0x30], str.xinput1_3.dll
mov dword [ebp - 0x2c], str.xinput9_1_0.dll
mov dword [ebp - 0x28], str.xinput1_2.dll
mov dword [ebp - 0x24], str.xinput1_1.dll
push dword [ebp + esi*4 - 0x34]
call ebx
mov edi, eax
test edi, edi
jne 0x100de9ca
inc esi
cmp esi, 5
jl 0x100de9b6
jmp 0x100de9ea
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.XInputGetCapabilities
push edi
call esi
push str.XInputGetState
push edi
mov dword [0x1048f410], eax
call esi
mov dword [0x1048f414], eax
mov edi, dword [ebp - 0x104]
mov ebx, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [0x10458f78]
mov esi, dword [0x10458f94]
mov dword [ebp - 0x144], eax
mov eax, dword [0x10459474]
test eax, eax
jne 0x100dea29
push 0xd69
push str.C:UsersAdminDesktopMEGA_2.5.4MEGA_2.5.4dsoundimgui_dockingimgui.cpp
push str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___and_ImGui::SetCurrentContext_____
call ebx
mov eax, dword [0x10459474]
add esp, 0xc
or dword [eax + 0xc], 8
lea ecx, [ebp - 0x104]
mov dword [eax + 0xc0], str.imgui_impl_dx11
mov eax, dword [esi]
push ecx
push 0x103292ec
push esi
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x108], 0
mov dword [ebp - 0x10c], 0
call dword [eax]
test eax, eax
jne 0x100deab3
mov eax, dword [ebp - 0x104]
lea edx, [ebp - 0x108]
push edx
push 0x103292fc
push eax
mov ecx, dword [eax]
call dword [ecx + 0x18]
test eax, eax
jne 0x100deab3
mov eax, dword [ebp - 0x108]
lea edx, [ebp - 0x10c]
push edx
push 0x1032930c
push eax
mov ecx, dword [eax]
call dword [ecx + 0x18]
test eax, eax
jne 0x100deab3
mov eax, dword [ebp - 0x144]
mov dword [0x1048f3fc], esi
mov dword [0x1048f408], eax
mov ecx, dword [ebp - 0x104]
test ecx, ecx
je 0x100deac3
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [ebp - 0x108]
test ecx, ecx
je 0x100dead3
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [0x1048f3fc]
push eax
mov ecx, dword [eax]
call dword [ecx + 4]
mov eax, dword [0x1048f408]
push eax
mov ecx, dword [eax]
call dword [ecx + 4]
movss xmm3, dword [0x1032b884]
lea eax, [ebp - 0x1bc]
mov ecx, dword [edi + 0x98]
push 0
push eax
push 0x4f2a4
push 0x102cc730
call fcn.100bd0b0
movss xmm3, dword [0x1032b878]
mov ecx, dword [edi + 0x98]
push 0
mov dword [0x10458f7c], eax
lea eax, [ebp - 0x1bc]
push eax
push 0x4f2a4
push 0x102cc730
call fcn.100bd0b0
push ecx
mov ecx, dword [edi + 0x98]
mov dword [0x10458f84], eax
call fcn.100bcf60
mov edi, dword [sym.imp.KERNEL32.dll_CreateThread]
push 0
push 0
push 0
push 0x1004cb80
push 0
push 0
call edi
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push eax
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
push 5
call ebx
push 0
push 0
push 0
push 0x10073f70
push 0
push 0
call edi
push eax
call esi
push 5
call ebx
push 0
push 0
push 0
push 0x100e0540
push 0
push 0
call edi
push eax
call esi
push 5
mov esi, ebx
call esi
mov ebx, dword [sym.imp.USER32.dll_SetWindowDisplayAffinity]
mov edi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
push 0x19
call esi
cmp dword [0x10459484], 0
jl 0x100debdb
cmp dword [0x10459488], 0
jl 0x100debdb
cmp dword [0x1045948c], 0
jl 0x100debdb
cmp dword [0x10459490], 0
jge 0x100dec4b
lea eax, [ebp - 0x30]
push eax
push dword [0x10459468]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [0x10459490]
mov ecx, dword [0x10459488]
sub eax, ecx
mov edx, dword [0x1045948c]
mov esi, dword [0x10459484]
sub edx, esi
push 3
push eax
push edx
push ecx
push esi
push 0xffffffffffffffff
push dword [0x10458fb8]
mov dword [0x1048acb4], edx
mov dword [0x1048acb8], eax
call dword [sym.imp.USER32.dll_SetWindowPos]
push 1
push dword [0x1048acb8]
push dword [0x1048acb4]
push dword [0x10459488]
push dword [0x10459484]
push dword [0x10458fb8]
call dword [sym.imp.USER32.dll_MoveWindow]
push 1
push 0
push 0
push dword [0x10458fb8]
lea eax, [ebp - 0x50]
push eax
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x100dec79
lea eax, [ebp - 0x50]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x50]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
cmp byte [0x1045945b], 1
jne 0x100decae
push 0
push 0x1032b568
call dword [sym.imp.USER32.dll_FindWindowW]
push str.TitanOpenglWindow
push str.TitanOpenglWindowClass
push 0
push eax
mov dword [0x10459468], eax
call dword [sym.imp.USER32.dll_FindWindowExW]
mov dword [0x10459468], eax
jmp 0x100decb3
mov eax, dword [0x10459468]
test eax, eax
je 0x100ded57
lea ecx, [ebp - 0x20]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ebx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x1c]
sub edx, ebx
mov ecx, dword [ebp - 0x14]
mov dword [0x10458fcc], ebx
mov dword [0x10458fb4], esi
cmp dword [0x10458fb0], edx
jne 0x100decf4
mov eax, ecx
sub eax, esi
cmp dword [0x10458fac], eax
je 0x100ded02
sub ecx, esi
mov dword [0x10458fb0], edx
mov dword [0x10458fac], ecx
push 3
push dword [0x1048a74c]
push dword [0x1048acb0]
push esi
push ebx
push 0xffffffffffffffff
push dword [0x10458fb8]
call dword [sym.imp.USER32.dll_SetWindowPos]
push 1
push dword [0x1048a74c]
push dword [0x1048acb0]
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
push dword [0x10458fb8]
call dword [sym.imp.USER32.dll_MoveWindow]
push 0x10458fbc
push dword [0x10458fb8]
call dword [sym.imp.dwmapi.dll_DwmExtendFrameIntoClientArea]
mov ebx, dword [sym.imp.USER32.dll_SetWindowDisplayAffinity]
cmp byte [0x104594e6], 0
je 0x100ded64
push 0x11
jmp 0x100ded66
push 0
push dword [0x10458fb8]
call ebx
cmp byte [0x1033fa2a], 0
je 0x100ded83
push dword [0x10458fb8]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
push 0x2d
call edi
test al, 1
je 0x100dedec
cmp byte [0x1033bc65], 1
mov esi, dword [0x10458fb8]
push 0xffffffffffffffec
push esi
jne 0x100dedb4
call dword [sym.imp.USER32.dll_GetWindowLongW]
or eax, 0x80000
push eax
push 0xffffffffffffffec
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
jmp 0x100dedd0
call dword [sym.imp.USER32.dll_GetWindowLongW]
and eax, 0xfff7ffff
push eax
push 0xffffffffffffffec
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push esi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
cmp byte [0x1033bc65], 0
sete byte [0x1033bc65]
cmp byte [0x1033fa2a], 0
sete byte [0x1033fa2a]
push 0x4e
call edi
test al, 1
je 0x100dee2a
mov eax, dword [0x104594dc]
cmp eax, 2
jne 0x100dee0a
mov dword [0x104594dc], 0
jmp 0x100dee2a
test eax, eax
jne 0x100dee1a
mov dword [0x104594dc], 1
jmp 0x100dee2a
cmp eax, 1
mov ecx, 2
cmove eax, ecx
mov dword [0x104594dc], eax
push 0x72
call edi
test al, 1
je 0x100dee74
cmp byte [0x104594c1], 0
sete al
cmp byte [0x104594d3], 0
mov byte [0x104594c1], al
sete byte [0x104594d3]
cmp byte [0x104594eb], 0
sete byte [0x104594eb]
cmp byte [0x104594e4], 0
sete byte [0x104594e4]
cmp al, 1
jne 0x100dee74
call fcn.100df520
push 0x73
call edi
test al, 1
je 0x100dee8a
cmp byte [0x104594d2], 0
sete byte [0x104594d2]
push 0x76
call edi
test al, 1
je 0x100deea0
cmp byte [0x104594e6], 0
sete byte [0x104594e6]
push 0x75
call edi
test al, 1
je 0x100deeb6
cmp byte [0x1033daf2], 0
sete byte [0x1033daf2]
push 0x24
call edi
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
test al, 1
je 0x100debb3
cmp byte [0x1033e08f], 0
sete byte [0x1033e08f]
jmp 0x100debb3