Function at 0x140012c90
Capabilities:
Connect pipe
Read pipe
Terminate process
Write pipe

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
sub rsp, 0x730
mov qword [rsp + 0xa0], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov r12, rcx
cmp dword [0x1400df34c], 4
ja 0x140012cd2
lea rcx, str.Ati_Polling_Application_Client_does_not_support_9x__ME_and_NT4._EXITing
call fcn.140014620
xor eax, eax
jmp 0x1400138b4
call fcn.140032de0
test eax, eax
je 0x140012ce7
call fcn.14000c470
xor eax, eax
jmp 0x1400138b4
cmp dword [0x1400df34c], 6
jbe 0x140012d06
call fcn.14002bd20
cmp eax, 4
jne 0x140012d06
mov ecx, 0x888
call qword [sym.imp.KERNEL32.dll_ExitProcess]
cmp dword [0x1400df4cc], 0
jne 0x140012d1d
call fcn.140010e80
test eax, eax
jne 0x140012d39
jmp 0x1400138b4
call fcn.14000cd30
test eax, eax
jne 0x140012d39
lea rcx, str.AtiLogonEvent__Ati_Hot_Key_Poller_Service_is_not_running_n
call fcn.140014620
xor eax, eax
jmp 0x1400138b4
mov dword [rsp + 0x28], 1
lea r13, [0x1400df4f0]
mov qword [rsp + 0x20], r13
mov r9d, 1
xor r8d, r8d
lea rdx, str.PollSt
xor ecx, ecx
call fcn.14002b8f0
test eax, eax
jne 0x140012d7b
lea rcx, str.Failed_to_set_log_file
call fcn.140014620
xor eax, eax
jmp 0x1400138b4
cmp dword [0x1400dd138], 0
je 0x140012d96
mov edx, dword [0x1400df34c]
lea rcx, str.WinMainClient_starts_with_OS_version__d
call fcn.14000cbb0
lea r9, [0x140011ff0]
lea r8, str.ATI_VIDEO_BIOS_WINDOW_CLASS
lea rdx, str.ATI_video_bios_poller_client
mov rcx, r12
call fcn.140010990
test eax, eax
je 0x1400138b4
xor esi, esi
mov dword [0x1400dd140], esi
or edi, 0xffffffff
mov ebx, dword [0x1400df34c]
cmp ebx, 8
jb 0x140012f63
lea rcx, [0x1400e0890]
call fcn.140040800
test eax, eax
jne 0x140012e07
cmp dword [0x1400dd138], esi
je 0x140012e00
lea rdx, str..pipeExtEventPipe_Service
lea rcx, str.WinMainClient_failed_CallAtiNamedPipe._EXTEVENT_REQTYPE_SESSION_SETUP__s.
call fcn.14000cbb0
xor eax, eax
jmp 0x1400138b4
mov ebx, dword [0x1400e1a8c]
mov edx, ebx
lea rcx, [0x1400e0890]
call fcn.14003a1c0
cmp dword [rax + 0x15c], esi
je 0x140012f09
mov edx, ebx
lea rcx, [0x1400e0890]
call fcn.14003a1c0
cmp dword [rax + 0x160], esi
jne 0x140012f09
call fcn.14000cbc0
mov rcx, rax
call fcn.140031b10
test eax, eax
jne 0x140012e5e
call fcn.14000c5b0
xor eax, eax
jmp 0x1400138b4
lea rcx, [0x1400e0890]
call fcn.14003dac0
mov dword [0x1400df368], eax
bt eax, 0x12
jb 0x140012e93
cmp dword [0x1400dd138], esi
je 0x140013888
lea rcx, str.Client:_SOFTWARE_BUG_ExtEvent_MultiSession_Handle_not_supported._EXIT
call fcn.14000cbb0
jmp 0x140013888
mov dword [0x1400df328], edi
mov dword [0x1400df32c], edi
mov dword [0x1400df330], edi
mov dword [0x1400df334], edi
mov dword [0x1400df338], esi
xor edx, edx
lea rcx, [0x1400e0890]
call fcn.14003c210
test eax, eax
jne 0x140012ed7
cmp dword [0x1400dd138], esi
je 0x140012ed7
lea rcx, str.WinMainClient_failed_to_initialize_DPPE
call fcn.14000cbb0
lea rcx, [0x1400e0890]
call fcn.14003c1a0
test eax, eax
jne 0x140012efd
cmp dword [0x1400dd138], esi
je 0x140012f43
lea rcx, str.WinMainClient_failed_to_initialize_PowerXpress
call fcn.14000cbb0
jmp 0x140012f43
mov dword [0x1400df344], 1
jmp 0x140012f43
or dword [0x1400df368], 0x40120
lea rcx, [0x1400e0890]
call fcn.14003c1a0
test eax, eax
jne 0x140012f39
cmp dword [0x1400dd138], esi
je 0x140012f43
lea rcx, str.WinMainClient_failed_to_initialize_PowerXpress
call fcn.14000cbb0
jmp 0x140012f43
mov dword [0x1400df344], 1
lea rcx, [0x1400e0890]
call fcn.14003a7d0
mov edi, eax
cmp eax, dword [0x1400e1a88]
jae 0x140013888
mov ebx, dword [0x1400df34c]
mov eax, 0xa
mov ecx, 4
cmp ebx, 8
cmovae eax, ecx
test eax, eax
je 0x14001313f
xor edx, edx
mov r8d, 0x620
lea rcx, [rsp + 0x110]
call fcn.14007cd30
mov r11d, dword [0x1400df4cc]
mov dword [rsp + 0x11c], r11d
mov dword [rsp + 0x118], 9
cmp ebx, 7
ja 0x140012fb9
mov dword [rsp + 0x120], r11d
jmp 0x14001300d
mov eax, dword [0x1400df368]
mov dword [rsp + 0x128], eax
mov edx, edi
lea rcx, [0x1400e0890]
call fcn.14003a1c0
mov ecx, dword [rax + 0x44]
mov dword [rsp + 0x120], ecx
mov dword [rsp + 0x124], edi
mov edx, edi
lea rcx, [0x1400e0890]
call fcn.14003e420
test rax, rax
je 0x140013888
xor edx, edx
mov rcx, rax
call fcn.1400471a0
mov dword [rsp + 0x12c], eax
xor edx, edx
lea r8d, [rdx + 0x2c]
lea rcx, [rsp + 0x70]
call fcn.14007cd30
mov dword [rsp + 0x110], 0x8001
mov dword [rsp + 0x114], 0x620
xor edx, edx
lea r8d, [rdx + 0x2c]
lea rcx, [rsp + 0x40]
call fcn.14007cd30
mov dword [rsp + 0x30], esi
lea rax, [rsp + 0x760]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x2c
lea r9, [rsp + 0x40]
mov r8d, 0x620
lea rdx, [rsp + 0x110]
lea rcx, str..pipeExtEventPipe_Service
call qword [sym.imp.KERNEL32.dll_CallNamedPipeA]
test eax, eax
je 0x1400130c3
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xea
je 0x1400130c3
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x40]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov rax, qword [rcx + 0x10]
mov qword [rdx + 0x10], rax
mov rax, qword [rcx + 0x18]
mov qword [rdx + 0x18], rax
mov rax, qword [rcx + 0x20]
mov qword [rdx + 0x20], rax
mov eax, dword [rcx + 0x28]
mov dword [rdx + 0x28], eax
mov ebx, dword [0x1400df34c]
cmp ebx, 8
jb 0x140013148
cmp dword [rsp + 0x7c], 1
jne 0x1400130fb
cmp dword [0x1400dd138], esi
je 0x1400130ef
lea rcx, str.Client:_Service_is_not_complete_state
call fcn.14000cbb0
mov ebx, dword [0x1400df34c]
mov dword [0x1400df4d0], 1
jmp 0x140013115
cmp dword [0x1400dd138], esi
je 0x140013115
lea rcx, str.Client:_Service_is_in_complete_state
call fcn.14000cbb0
mov ebx, dword [0x1400df34c]
mov eax, dword [rsp + 0x80]
mov dword [0x1400e18e4], eax
mov eax, dword [rsp + 0x84]
mov dword [0x1400e18e8], eax
cmp dword [rsp + 0x88], esi
je 0x14001313f
or dword [0x1400df4d4], 0x10
cmp ebx, 8
jae 0x1400131c9
mov eax, dword [rsp + 0x7c]
mov dword [0x1400df368], eax
cmp dword [rsp + 0x84], esi
je 0x140013162
or dword [0x1400df4d4], 0x10
lea rcx, [0x1400e0890]
call fcn.140040800
test eax, eax
jne 0x140013194
cmp dword [0x1400dd138], esi
je 0x14001318d
lea rdx, str..pipeExtEventPipe_Service
lea rcx, str.WinMainClient_failed_CallAtiNamedPipe._EXTEVENT_REQTYPE_SESSION_SETUP__s.
call fcn.14000cbb0
xor eax, eax
jmp 0x1400138b4
lea rcx, [0x1400e0890]
call fcn.14003dac0
mov dword [0x1400df368], eax
bt eax, 0x12
jb 0x1400131cf
cmp dword [0x1400dd138], esi
je 0x140013888
lea rcx, str.Client:_SOFTWARE_BUG_ExtEvent_MultiSession_Handle_not_supported._EXIT
call fcn.14000cbb0
jmp 0x140013888
mov eax, dword [0x1400df368]
cmp dword [0x1400dd138], esi
je 0x1400131e5
mov edx, eax
lea rcx, str.WinMainClient_g_ulSupportedFeatures_is_0x_x
call fcn.14000cbb0
mov edx, dword [0x1400e1a8c]
lea rcx, [0x1400e0890]
call fcn.14003a1c0
cmp dword [rax + 0x160], esi
jne 0x140013204
call fcn.14000ceb0
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], r13
mov r9d, 1
xor r8d, r8d
lea rdx, str.Pollog
xor ecx, ecx
call fcn.14002b8f0
cmp dword [0x1400dd138], esi
je 0x140013242
mov edx, dword [0x1400df3a4]
lea rcx, str.WinMainClient_g_bAutoDisplayEnabled_is__d
call fcn.14000cbb0
mov dword [0x1400df3cc], 1
mov rcx, r12
call fcn.14000da20
test eax, eax
je 0x140013888
mov dword [0x1400dd13c], 3
mov ecx, 0x378
call fcn.14007de08
mov qword [rsp + 0x760], rax
test rax, rax
je 0x14001328a
mov rcx, rax
call fcn.140038db0
mov rcx, rax
jmp 0x14001328d
mov rcx, rsi
mov qword [0x1400df4d8], rcx
test rcx, rcx
je 0x140013873
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test eax, eax
jne 0x1400132c4
cmp dword [0x1400dd138], eax
je 0x140013888
lea rcx, str.ATI_poll_Client_sessionPipe_creation_failed.
call fcn.14000cbb0
jmp 0x140013888
lea rcx, [0x1400e03a0]
call fcn.14005bbe0
test al, al
jne 0x1400132f2
cmp dword [0x1400dd138], 0
je 0x140013888
lea rcx, str.ATI_poll_Client_oem_event_callback_manager_initilization_failed.
call fcn.14000cbb0
jmp 0x140013888
cmp dword [0x1400e2264], 0
jne 0x140013329
nop
nop
cmp dword [0x1400dd138], 0
je 0x140013315
lea rcx, str.WinMainClient_pipe_not_ready_yet.
call fcn.14000cbb0
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [0x1400e2264], 0
je 0x140013300
xor edx, edx
mov r8d, 0x620
lea rcx, [rsp + 0x110]
call fcn.14007cd30
mov dword [rsp + 0x118], 0x1e
mov eax, dword [0x1400df4cc]
mov dword [rsp + 0x120], eax
xor edx, edx
lea r8d, [rdx + 0x2c]
lea rcx, [rsp + 0x70]
call fcn.14007cd30
mov dword [rsp + 0x110], 0x8001
mov dword [rsp + 0x114], 0x620
xor edx, edx
lea r8d, [rdx + 0x2c]
lea rcx, [rsp + 0x40]
call fcn.14007cd30
mov dword [rsp + 0x30], esi
lea rax, [rsp + 0x760]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x2c
lea r9, [rsp + 0x40]
mov r8d, 0x620
lea rdx, [rsp + 0x110]
lea rcx, str..pipeExtEventPipe_Service
call qword [sym.imp.KERNEL32.dll_CallNamedPipeA]
test eax, eax
je 0x14001340c
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xea
je 0x14001340c
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x40]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov rax, qword [rcx + 0x10]
mov qword [rdx + 0x10], rax
mov rax, qword [rcx + 0x18]
mov qword [rdx + 0x18], rax
mov rax, qword [rcx + 0x20]
mov qword [rdx + 0x20], rax
mov eax, dword [rcx + 0x28]
mov dword [rdx + 0x28], eax
call fcn.140012760
test eax, eax
je 0x140013888
mov rcx, qword [0x1400df398]
test rcx, rcx
je 0x14001344a
lea rdx, [rsp + 0x7c]
call fcn.140003600
xor r9d, r9d
mov edx, 0x14d1
mov r8d, 0x5dc
mov rcx, qword [0x1400df388]
call qword [sym.imp.USER32.dll_SetTimer]
xor edx, edx
mov r8d, 0x620
lea rcx, [rsp + 0x110]
call fcn.14007cd30
mov dword [rsp + 0x118], 0x30
mov eax, dword [0x1400df4cc]
mov dword [rsp + 0x120], eax
mov dword [rsp + 0x110], 0x8001
mov dword [rsp + 0x114], 0x620
xor edx, edx
lea r8d, [rdx + 0x2c]
lea rcx, [rsp + 0xa8]
call fcn.14007cd30
mov dword [rsp + 0x30], esi
lea rax, [rsp + 0x760]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x2c
lea r9, [rsp + 0xa8]
mov r8d, 0x620
lea rdx, [rsp + 0x110]
lea rcx, str..pipeExtEventPipe_Service
call qword [sym.imp.KERNEL32.dll_CallNamedPipeA]
test eax, eax
je 0x1400134e6
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp qword [0x1400df398], 0
je 0x14001367a
mov ebx, esi
nop
nop
nop
xor edx, edx
mov r8d, 0x620
lea rcx, [rsp + 0x110]
call fcn.14007cd30
mov dword [rsp + 0x118], 0x32
mov eax, dword [0x1400df4cc]
mov dword [rsp + 0x120], eax
mov dword [rsp + 0x110], 0x8001
mov dword [rsp + 0x114], 0x620
xor edx, edx
lea r8d, [rdx + 0x2c]
lea rcx, [rsp + 0xa8]
call fcn.14007cd30
mov dword [rsp + 0x30], esi
lea rax, [rsp + 0x760]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x2c
lea r9, [rsp + 0xa8]
mov r8d, 0x620
lea rdx, [rsp + 0x110]
lea rcx, str..pipeExtEventPipe_Service
call qword [sym.imp.KERNEL32.dll_CallNamedPipeA]
test eax, eax
je 0x1400135dc
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xea
je 0x1400135dc
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xa8]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov rax, qword [rcx + 0x10]
mov qword [rdx + 0x10], rax
mov rax, qword [rcx + 0x18]
mov qword [rdx + 0x18], rax
mov rax, qword [rcx + 0x20]
mov qword [rdx + 0x20], rax
mov eax, dword [rcx + 0x28]
mov dword [rdx + 0x28], eax
cmp dword [rsp + 0x98], 1
je 0x14001367a
mov rcx, qword [0x1400df398]
cmp qword [rcx + 0x1f8], 0
je 0x14001366e
xor eax, eax
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], eax
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x4c], eax
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x54], eax
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x8c]
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x84]
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x7c]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x54], rax
xor r8d, r8d
lea rdx, [rsp + 0x40]
mov rcx, qword [rcx + 0x1f8]
call fcn.1400097b0
add ebx, 1
cmp ebx, 4
jb 0x140013500
mov eax, dword [0x1400df34c]
cmp eax, 6
jbe 0x1400136e8
mov dword [rsp + 0x760], esi
mov eax, dword [0x1400e18dc]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x760]
xor r8d, r8d
xor edx, edx
lea rcx, [0x14000cc80]
call fcn.14002d550
test rax, rax
jne 0x1400136d9
cmp dword [0x1400dd138], eax
je 0x140013888
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.WinMainClient_failed_to_CreateThread_RegisterWTSNotificationThread_err_d.
call fcn.14000cbb0
jmp 0x140013888
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1400df34c]
cmp eax, 8
jb 0x140013796
call fcn.14000bc10
call fcn.1400638c0
lea r11, [rsp + 0x40]
lea rbx, [0x140000000]
mov rax, qword [rbx + 0xdd160]
mov qword [r11], rax
mov rax, qword [rbx + 0xdd168]
mov qword [r11 + 8], rax
lea r8, [0x1400df620]
lea rdx, [rsp + 0x40]
mov rcx, qword [0x1400df388]
call fcn.140068160
test eax, eax
jne 0x14001374c
cmp dword [0x1400dd138], eax
je 0x14001374c
lea rcx, str.Ati_RegisterDeviceInterface_failed_n
call fcn.14000cbb0
lea rcx, [rsp + 0x40]
mov rax, qword [rbx + 0xdd170]
mov qword [rcx], rax
mov rax, qword [rbx + 0xdd178]
mov qword [rcx + 8], rax
lea r8, [0x1400df628]
lea rdx, [rsp + 0x40]
mov rcx, qword [0x1400df388]
call fcn.140068160
test eax, eax
jne 0x140013796
cmp dword [0x1400dd138], eax
je 0x140013796
lea rcx, str.Ati_RegisterDeviceInterface_failed_n
call fcn.14000cbb0
call fcn.140033f30
call fcn.140063d10
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0xd8]
call qword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
je 0x1400137f6
nop
nop
lea rcx, [rsp + 0xd8]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rsp + 0xd8]
call qword [sym.imp.USER32.dll_DispatchMessageA]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0xd8]
call qword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
jne 0x1400137c0
cmp dword [0x1400df34c], 8
jb 0x14001384c
call fcn.14000bc40
mov rcx, qword [0x1400df620]
call fcn.140068200
test eax, eax
jne 0x140013828
cmp dword [0x1400dd138], eax
je 0x140013828
lea rcx, str.Ati_UnRegisterDeviceInterface_failed_n
call fcn.14000cbb0
lea rcx, [0x1400df628]
call fcn.140068200
test eax, eax
jne 0x14001384c
cmp dword [0x1400dd138], eax
je 0x14001384c
lea rcx, str.Ati_RegisterDeviceInterface_failed_n
call fcn.14000cbb0
call fcn.140063d60
mov rcx, qword [0x1400df388]
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x140013888
mov rcx, qword [0x1400df388]
call qword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x140013888
cmp dword [0x1400dd138], 0
je 0x140013888
lea rcx, str.ATI_poll_Client_g_pSessionPipe_memory_alloc_failed.
call fcn.14000cbb0
mov dword [0x1400dd13c], 2
mov dword [0x1400df3bc], esi
call fcn.14000f290
cmp dword [0x1400dd138], 0
je 0x1400138b2
lea rcx, str.ATI_poll_Client_exits.
call fcn.14000cbb0
xor eax, eax
lea r11, [rsp + 0x730]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop r13
pop r12
pop rdi
ret