Function at 0x140054740
Capabilities:
Create thread

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], rbx
push rsi
sub rsp, 0xf0
mov rax, qword [0x14006b040]
xor rax, rsp
mov qword [rsp + 0xd0], rax
xor esi, esi
mov qword [r11 + 8], rbp
mov qword [rsp + 0x28], rsi
lea r8, [0x140054670]
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor edx, edx
mov qword [r11 + 0x10], rdi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
xor ecx, ecx
mov dword [rsp + 0x64], esi
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x98], rsi
call qword [sym.imp.GDI32.dll_GetStockObject]
mov edx, 0x7f00
xor ecx, ecx
mov qword [rsp + 0x90], rax
call qword [sym.imp.USER32.dll_LoadCursorW]
xor ecx, ecx
mov qword [rsp + 0x88], rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rbp, str.nigger
mov dword [rsp + 0x60], 3
mov qword [rsp + 0x78], rax
lea rcx, [rsp + 0x60]
lea rax, [0x140055460]
mov qword [rsp + 0xa0], rbp
mov qword [rsp + 0x68], rax
call qword [sym.imp.USER32.dll_RegisterClassW]
test ax, ax
jne 0x140054819
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._nFailed_to_register_window_class.
call fcn.140057100
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov ecx, 1
mov rdi, rax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
xor ecx, ecx
mov ebx, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov qword [rsp + 0x58], rsi
mov r9d, 0x80000000
mov qword [rsp + 0x50], rdi
xor r8d, r8d
mov qword [rsp + 0x48], rsi
mov rdx, rbp
mov qword [rsp + 0x40], rsi
xor ecx, ecx
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov rdi, qword [rsp + 0x108]
mov rbp, qword [rsp + 0x100]
mov qword [0x14006bb28], rax
test rax, rax
jne 0x1400548a5
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._nFailed_to_create_window.
call fcn.140057100
jmp 0x140054a5d
mov edx, 5
movaps xmmword [rsp + 0xe0], xmm6
mov rcx, rax
call qword [sym.imp.USER32.dll_ShowWindow]
movdqa xmm6, xmmword [0x140062a10]
lea rdx, [rsp + 0xb0]
mov rcx, qword [0x14006bb28]
movdqu xmmword [rsp + 0xb0], xmm6
call qword [sym.imp.dwmapi.dll_DwmExtendFrameIntoClientArea]
mov rcx, qword [0x14006bb28]
mov edx, 0xffffffec
mov r8d, 0x800a0
call qword [sym.imp.USER32.dll_SetWindowLongW]
mov rcx, qword [0x14006bb28]
xor r9d, r9d
mov dword [rsp + 0x30], 3
xor r8d, r8d
mov dword [rsp + 0x28], esi
mov rdx, 0xffffffffffffffff
mov dword [rsp + 0x20], esi
call qword [sym.imp.USER32.dll_SetWindowPos]
mov rcx, qword [0x14006bb28]
mov r9d, 2
mov r8b, 0xff
xor edx, edx
call qword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
mov rcx, qword [0x14006bb28]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov rcx, qword [0x14006bb28]
mov edx, 0xfffffff0
call qword [sym.imp.USER32.dll_GetWindowLongPtrW]
mov rcx, qword [0x14006bb28]
mov edx, 0xfffffff0
and rax, 0xffffffffff3fffff
mov r8, rax
call qword [sym.imp.USER32.dll_SetWindowLongPtrW]
mov rcx, qword [0x14006bb28]
mov edx, 0xffffffec
mov r8d, 0x80020
call qword [sym.imp.USER32.dll_SetWindowLongW]
mov rcx, qword [0x14006bb28]
mov edx, 0xfffffff0
mov r8d, 0x90000000
call qword [sym.imp.USER32.dll_SetWindowLongW]
mov rcx, qword [0x14006bb28]
call qword [sym.imp.USER32.dll_GetMenu]
test rax, rax
je 0x1400549c6
mov rcx, qword [0x14006bb28]
xor edx, edx
call qword [sym.imp.USER32.dll_SetMenu]
mov rcx, qword [0x14006bb28]
lea rdx, [rsp + 0xc0]
movdqu xmmword [rsp + 0xc0], xmm6
call qword [sym.imp.dwmapi.dll_DwmExtendFrameIntoClientArea]
mov rcx, qword [0x14006bb28]
mov edx, 3
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [0x14006bb28]
mov r9d, 2
mov r8b, 0xff
xor edx, edx
call qword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
mov rcx, qword [0x14006bb28]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
xor ecx, ecx
mov ebx, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov rcx, qword [0x14006bb28]
xor r9d, r9d
mov dword [rsp + 0x30], 0x26
xor r8d, r8d
mov dword [rsp + 0x28], ebx
xor edx, edx
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_SetWindowPos]
movaps xmm6, xmmword [rsp + 0xe0]
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.1400586f0
mov rbx, qword [rsp + 0x110]
add rsp, 0xf0
pop rsi
ret