Function at 0xab956d
Capabilities:
Create thread

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x60
lea rcx, str.comctl32.dll
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryW]
call rax
mov qword [rbp - 8], rax
cmp qword [rbp - 8], 0
jne 0xab95b7
mov rax, qword [sym.imp.KERNEL32.dll_GetLastError]
call rax
mov r8d, eax
lea rdx, str.Error_getting_handle_to_comctl
mov ecx, 2
call fcn.00ab8c17
mov eax, 0
jmp 0xab9899
mov rax, qword [rbp - 8]
lea rdx, str.LoadIconMetric
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov qword [0x01425460], rax
mov rax, qword [0x01425460]
test rax, rax
jne 0xab960c
mov rax, qword [sym.imp.KERNEL32.dll_GetLastError]
call rax
mov r8d, eax
lea rdx, str.Error_getting_proc_address_of_LoadIconMetric
mov ecx, 2
call fcn.00ab8c17
lea rax, [0x00ab8f00]
mov qword [0x01425460], rax
mov dword [0x0142549c], 1
lea rcx, str.TaskbarCreated
mov rax, qword [sym.imp.USER32.dll_RegisterWindowMessageW]
call rax
mov dword [0x01425498], eax
mov eax, dword [0x01425498]
test eax, eax
jne 0xab964d
mov r8d, 0
lea rdx, str.Error_registering_TaskbarCreated_msg
mov ecx, 2
call fcn.00ab8c17
mov ecx, 0
mov rax, qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
call rax
mov qword [0x01425478], rax
mov rax, qword [0x01425478]
test rax, rax
jne 0xab9695
mov rax, qword [sym.imp.KERNEL32.dll_GetLastError]
call rax
mov r8d, eax
lea rdx, str.Error_retrieving_module_handle_for_tray_icon
mov ecx, 1
call fcn.00ab8c17
mov eax, 0
jmp 0xab9899
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov r9d, 0
lea r8, [0x00ab93bd]
mov edx, 0
mov ecx, 0
mov rax, qword [sym.imp.KERNEL32.dll_CreateThread]
call rax
mov qword [rbp - 0x10], rax
cmp qword [rbp - 0x10], 0
jne 0xab96db
mov eax, 0
jmp 0xab9899
mov rax, qword [rbp - 0x10]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_CloseHandle]
call rax
mov rax, qword [0x01425460]
mov rcx, qword [0x01425478]
lea r9, [0x01425468]
mov r8d, 0
lea rdx, str.TRAYICON_OK
call rax
mov dword [rbp - 0x14], eax
cmp dword [rbp - 0x14], 0
jns 0xab979d
mov rax, qword [sym.imp.KERNEL32.dll_GetLastError]
call rax
mov r8d, eax
lea rdx, str.Could_not_load_embedded_icon_for_OK_status__falling_back_to_OEM_icon
mov ecx, 2
call fcn.00ab8c17
mov dword [rsp + 0x28], 0x8040
mov dword [rsp + 0x20], 0
mov r9d, 0
mov r8d, 1
mov edx, 0x7f04
mov ecx, 0
mov rax, qword [sym.imp.USER32.dll_LoadImageW]
call rax
mov qword [rbp - 0x20], rax
cmp qword [rbp - 0x20], 0
jne 0xab9792
mov rax, qword [sym.imp.KERNEL32.dll_GetLastError]
call rax
mov r8d, eax
lea rdx, str.Error_loading_OEM_OK_icon_as_well
mov ecx, 1
call fcn.00ab8c17
jmp 0xab979d
mov rax, qword [rbp - 0x20]
mov qword [0x01425468], rax
mov rax, qword [0x01425460]
mov rcx, qword [0x01425478]
lea r9, [0x01425470]
mov r8d, 1
lea rdx, str.TRAYICON_OK
call rax
mov dword [rbp - 0x14], eax
cmp dword [rbp - 0x14], 0
jns 0xab9805
mov rax, qword [sym.imp.KERNEL32.dll_GetLastError]
call rax
mov r8d, eax
lea rdx, str.Could_not_load_embedded_icon_for_large_icon_status__falling_back_to_small_icon
mov ecx, 2
call fcn.00ab8c17
mov rax, qword [0x01425468]
mov qword [0x01425470], rax
jmp 0xab9805
mov ecx, 0xf
mov rax, qword [sym.imp.KERNEL32.dll_Sleep]
call rax
mov rax, qword [0x01425480]
test rax, rax
je 0xab97f7
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov r9d, 0
lea r8, [0x00ab953d]
mov edx, 0
mov ecx, 0
mov rax, qword [sym.imp.KERNEL32.dll_CreateThread]
call rax
mov qword [rbp - 0x28], rax
cmp qword [rbp - 0x28], 0
jne 0xab9864
mov r8d, 0
lea rdx, str.Failed_to_start_waitToStartNotifications
mov ecx, 1
call fcn.00ab8c17
mov rax, qword [rbp - 0x28]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_CloseHandle]
call rax
mov rax, qword [rbp - 8]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_FreeLibrary]
call rax
lea rcx, [0x00ab9b4f]
mov rax, qword [sym.imp.SSEdevice.dll_DeviceLib_SetSystemResumeSuspendCallback]
call rax
mov eax, 1
add rsp, 0x60
pop rbp
ret