Function at 0x14000a1e0
Capabilities:
Get system information on windows

Disassembly:
mov r11, rsp
push rbx
push rbp
push r12
push r13
push r15
sub rsp, 0x80
mov rax, qword [0x14008d558]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov qword [r11 + 8], rsi
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [r11 + 0x10], rdi
mov esi, 0x3c
call fcn.14000b210
xor r15d, r15d
lea ebx, [rsi - 0x3b]
cmp dword [0x14008d0b0], 3
lea rbp, str.Entering_Function...
lea r12, str.C:jenkinsworkspacedptfSrcESIFProductsESIF_UFSourceswinesif_assist.c
lea r13, str.wmain
jl 0x14000a25c
test dword [0x14008d114], 0x400000
je 0x14000a25c
lea edx, [rsi - 0x39]
mov ecx, 0x400000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a272
mov edx, 3
mov ecx, 0x400000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000a29e
mov qword [rsp + 0x38], rbp
mov r9d, 3
mov dword [rsp + 0x30], 0x111
mov r8d, 0x400000
mov qword [rsp + 0x28], r12
mov edx, eax
mov ecx, edi
mov qword [rsp + 0x20], r13
call fcn.14000b530
lea rcx, [0x140075a58]
call qword [sym.imp.KERNEL32.dll_SetDllDirectoryW]
lea rbp, str.Exiting_Function...
test eax, eax
jne 0x14000a326
cmp dword [0x14008d0b0], ebx
jl 0x14000a2da
test dword [0x14008d0e4], 0x10000
je 0x14000a2da
mov edx, ebx
mov ecx, 0x10000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a2f1
mov edx, ebx
mov ecx, 0x10000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000adf2
lea rcx, str.Unable_to_SetDllDirectory_n
mov r9d, ebx
mov qword [rsp + 0x38], rcx
mov r8d, 0x10000
mov dword [rsp + 0x30], 0x115
mov edx, eax
mov qword [rsp + 0x28], r12
mov ecx, edi
mov qword [rsp + 0x20], r13
call fcn.14000b530
jmp 0x14000adf2
call fcn.140007aa0
test eax, eax
jne 0x14000adf2
cmp dword [0x14008d0b0], 3
mov ebp, r15d
mov qword [rsp + 0xc0], r14
lea r14, str.fgnd_det_init
jl 0x14000a36b
test dword [0x14008d114], 0x400000
je 0x14000a36b
lea edx, [rax + 3]
mov ecx, 0x400000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a381
mov edx, 3
mov ecx, 0x400000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000a3b4
lea rcx, str.Entering_Function...
mov r9d, 3
mov qword [rsp + 0x38], rcx
mov r8d, 0x400000
mov dword [rsp + 0x30], 0x72e
mov edx, eax
mov qword [rsp + 0x28], r12
mov ecx, edi
mov qword [rsp + 0x20], r14
call fcn.14000b530
mov ecx, 0x410
call fcn.140023fac
mov rdi, rax
test rax, rax
je 0x14000a3d6
xor edx, edx
mov r8d, 0x410
mov rcx, rax
call fcn.1400158a0
mov ecx, 0x410
mov qword [0x14008e608], rdi
call fcn.140023fac
mov rdi, rax
test rax, rax
je 0x14000a3ff
xor edx, edx
mov r8d, 0x410
mov rcx, rax
call fcn.1400158a0
cmp qword [0x14008e608], rbp
mov qword [0x14008e610], rdi
je 0x14000a414
test rdi, rdi
jne 0x14000a419
mov ebp, 0x708
cmp dword [0x14008d0b0], 3
jl 0x14000a441
test dword [0x14008d114], 0x400000
je 0x14000a441
mov edx, 3
mov ecx, 0x400000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a457
mov edx, 3
mov ecx, 0x400000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000a48e
mov dword [rsp + 0x40], ebp
lea rcx, str.Exiting_function:_Exit_code__0x_08X...
mov qword [rsp + 0x38], rcx
mov r9d, 3
mov dword [rsp + 0x30], 0x735
mov r8d, 0x400000
mov qword [rsp + 0x28], r12
mov edx, eax
mov ecx, edi
mov qword [rsp + 0x20], r14
call fcn.14000b530
test ebp, ebp
jne 0x14000ade3
cmp dword [0x14008d0b0], 3
lea rbp, str.foreground_ratio_det_init
jl 0x14000a4c5
test dword [0x14008d114], 0x400000
je 0x14000a4c5
mov edx, 3
mov ecx, 0x400000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a4db
mov edx, 3
mov ecx, 0x400000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000a50e
lea rcx, str.Entering_Function...
mov r9d, 3
mov qword [rsp + 0x38], rcx
mov r8d, 0x400000
mov dword [rsp + 0x30], 0xa34
mov edx, eax
mov qword [rsp + 0x28], r12
mov ecx, edi
mov qword [rsp + 0x20], rbp
call fcn.14000b530
lea rcx, [0x14008e6b8]
mov qword [0x14008f84c], r15
mov dword [0x14008f854], 0x2710
mov word [0x14008f858], r15w
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
xor edx, edx
lea rcx, [0x14008e7f4]
mov r8d, 0x1040
call fcn.1400158a0
mov r9, 0xffffffffffffffff
lea r8, [0x1400759db]
mov edx, 0x104
lea rcx, [0x14008e6f0]
call fcn.140025d24
mov r9, 0xffffffffffffffff
lea r8, [0x1400759db]
mov edx, 0x104
lea rcx, [0x14008fac8]
call fcn.140025d24
mov ecx, 0x104
call fcn.140001150
test rax, rax
mov qword [0x14008e6e8], rax
mov r14d, 0x708
mov rbp, rax
cmovne r14d, r15d
cmp dword [0x14008d0b0], 3
jl 0x14000a5cf
test dword [0x14008d114], 0x400000
je 0x14000a5cf
mov edx, 3
mov ecx, 0x400000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a5e5
mov edx, 3
mov ecx, 0x400000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000a624
mov dword [rsp + 0x40], r14d
lea rcx, str.Exiting_function:_Exit_code__0x_08X...
mov qword [rsp + 0x38], rcx
mov r9d, 3
lea rcx, str.foreground_ratio_det_init
mov dword [rsp + 0x30], 0xa48
mov qword [rsp + 0x28], r12
mov r8d, 0x400000
mov qword [rsp + 0x20], rcx
mov edx, eax
mov ecx, edi
call fcn.14000b530
test rbp, rbp
je 0x14000ade3
lea rcx, [0x14008e5e8]
call qword [sym.imp.KERNEL32.dll_InitializeSRWLock]
mov qword [0x14008e5f0], r15
mov dword [0x14008e5f8], r15d
call fcn.140013cc0
test eax, eax
jne 0x14000ade3
xor r9d, r9d
xor r8d, r8d
mov edx, ebx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [0x14008e5b0], rax
test rax, rax
jne 0x14000a6e1
cmp dword [0x14008d0b0], ebx
jl 0x14000a695
test dword [0x14008d0e4], 0x10000
je 0x14000a695
mov edx, ebx
mov ecx, 0x10000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a6ac
mov edx, ebx
mov ecx, 0x10000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000ade3
lea rcx, str.Unable_to_create_event_n
mov r9d, ebx
mov qword [rsp + 0x38], rcx
mov r8d, 0x10000
mov dword [rsp + 0x30], 0x132
mov edx, eax
mov qword [rsp + 0x28], r12
mov ecx, edi
mov qword [rsp + 0x20], r13
call fcn.14000b530
jmp 0x14000ade3
cmp dword [0x14008d0b0], 4
jl 0x14000a709
test dword [0x14008d12c], 0x10000
je 0x14000a709
mov edx, 4
mov ecx, 0x10000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a71f
mov edx, 4
mov ecx, 0x10000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000a752
lea rcx, str.Creating_IPC_channel_n
mov r9d, 4
mov qword [rsp + 0x38], rcx
mov r8d, 0x10000
mov dword [rsp + 0x30], 0x136
mov edx, eax
mov qword [rsp + 0x28], r12
mov ecx, edi
mov qword [rsp + 0x20], r13
call fcn.14000b530
mov dword [rsp + 0x30], 0x40030
lea rax, [0x1400030b0]
mov qword [rsp + 0x28], r15
lea rdx, str..pipe18837DD8_C4DF_4E48_8CB6_3DD8E59C2DD5
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8d, ebx
lea rcx, [0x14008e310]
call fcn.1400106d0
test eax, eax
jne 0x14000a800
cmp dword [0x14008d0b0], 2
jl 0x14000a7ae
test dword [0x14008d0fc], 0x10000
je 0x14000a7ae
lea edx, [rax + 2]
mov ecx, 0x10000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a7c8
mov edx, 2
mov ecx, 0x10000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000ade3
lea rcx, str.Unable_to_create_IPC_channel_n
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], 0x140
mov qword [rsp + 0x28], r12
mov r9d, 2
mov r8d, 0x10000
mov qword [rsp + 0x20], r13
mov edx, eax
mov ecx, edi
call fcn.14000b530
jmp 0x14000ade3
cmp dword [0x14008d0b0], 4
jl 0x14000a828
test dword [0x14008d12c], 0x10000
je 0x14000a828
mov edx, 4
mov ecx, 0x10000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a83e
mov edx, 4
mov ecx, 0x10000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000a871
lea rcx, str.IPC_channel_created_n
mov r9d, 4
mov qword [rsp + 0x38], rcx
mov r8d, 0x10000
mov dword [rsp + 0x30], 0x144
mov edx, eax
mov qword [rsp + 0x28], r12
mov ecx, edi
mov qword [rsp + 0x20], r13
call fcn.14000b530
lea rcx, [0x14008e310]
call fcn.140010c50
test eax, eax
jne 0x14000a984
lea rbp, str.Waiting_for_channel_ready_n
nop dword [rax]
mov eax, esi
dec esi
test eax, eax
jle 0x14000a925
cmp dword [0x14008d0b0], 4
jl 0x14000a8c4
test dword [0x14008d12c], 0x10000
je 0x14000a8c4
mov edx, 4
mov ecx, 0x10000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a8da
mov edx, 4
mov ecx, 0x10000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000a906
mov qword [rsp + 0x38], rbp
mov r9d, 4
mov dword [rsp + 0x30], 0x14a
mov r8d, 0x10000
mov qword [rsp + 0x28], r12
mov edx, eax
mov ecx, edi
mov qword [rsp + 0x20], r13
call fcn.14000b530
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [0x14008e310]
call fcn.140010c50
test eax, eax
je 0x14000a890
test esi, esi
jg 0x14000a984
cmp dword [0x14008d0b0], 2
jl 0x14000a951
test dword [0x14008d0fc], 0x10000
je 0x14000a951
mov edx, 2
mov ecx, 0x10000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a96b
mov edx, 2
mov ecx, 0x10000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000ade3
lea rcx, str.Unable_to_connect_IPC_channel_n
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], 0x14e
jmp 0x14000a7dc
cmp dword [0x14008d0b0], 4
jl 0x14000a9ac
test dword [0x14008d12c], 0x10000
je 0x14000a9ac
mov edx, 4
mov ecx, 0x10000
mov edi, ebx
call fcn.14000b080
jmp 0x14000a9c2
mov edx, 4
mov ecx, 0x10000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000a9f5
lea rcx, str.Creating_Windows_message_loop_n
mov r9d, 4
mov qword [rsp + 0x38], rcx
mov r8d, 0x10000
mov dword [rsp + 0x30], 0x152
mov edx, eax
mov qword [rsp + 0x28], r12
mov ecx, edi
mov qword [rsp + 0x20], r13
call fcn.14000b530
lea r8, str.HelperWndClass
lea rdx, [0x140009ff0]
lea rcx, [0x14008e5b8]
call fcn.1400132c0
test eax, eax
jne 0x14000aa6c
cmp dword [0x14008d0b0], 2
jl 0x14000aa39
test dword [0x14008d0fc], 0x10000
je 0x14000aa39
lea edx, [rax + 2]
mov ecx, 0x10000
mov edi, ebx
call fcn.14000b080
jmp 0x14000aa53
mov edx, 2
mov ecx, 0x10000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000ade3
lea rcx, str.Unable_to_create_message_loop_n
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], 0x15b
jmp 0x14000a7dc
cmp dword [0x14008d0b0], 4
jl 0x14000aa94
test dword [0x14008d12c], 0x10000
je 0x14000aa94
mov edx, 4
mov ecx, 0x10000
mov edi, ebx
call fcn.14000b080
jmp 0x14000aaaa
mov edx, 4
mov ecx, 0x10000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000aadd
lea rcx, str.Windows_message_loop_created_n
mov r9d, 4
mov qword [rsp + 0x38], rcx
mov r8d, 0x10000
mov dword [rsp + 0x30], 0x15f
mov edx, eax
mov qword [rsp + 0x28], r12
mov ecx, edi
mov qword [rsp + 0x20], r13
call fcn.14000b530
call fcn.140009ea0
call fcn.140009d80
call fcn.140006840
cmp dword [0x14008d0b0], 3
lea rsi, str.fgnd_det_start
jl 0x14000ab1b
test dword [0x14008d114], 0x400000
je 0x14000ab1b
mov edx, 3
mov ecx, 0x400000
mov edi, ebx
call fcn.14000b080
jmp 0x14000ab31
mov edx, 3
mov ecx, 0x400000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000ab66
lea r14, str.Entering_Function...
mov r9d, 3
mov qword [rsp + 0x38], r14
mov r8d, 0x400000
mov dword [rsp + 0x30], 0x74d
mov edx, eax
mov qword [rsp + 0x28], r12
mov ecx, edi
mov qword [rsp + 0x20], rsi
call fcn.14000b530
jmp 0x14000ab6d
lea r14, str.Entering_Function...
mov rax, qword [0x14008fbd8]
call qword [0x14006d610]
mov rcx, rax
movzx edx, bl
call fcn.140009740
cmp dword [0x14008d0b0], 3
jl 0x14000abad
test dword [0x14008d114], 0x400000
je 0x14000abad
mov edx, 3
mov ecx, 0x400000
mov edi, ebx
call fcn.14000b080
jmp 0x14000abc3
mov edx, 3
mov ecx, 0x400000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000abf6
lea rcx, str.Exiting_Function...
mov r9d, 3
mov qword [rsp + 0x38], rcx
mov r8d, 0x400000
mov dword [rsp + 0x30], 0x751
mov edx, eax
mov qword [rsp + 0x28], r12
mov ecx, edi
mov qword [rsp + 0x20], rsi
call fcn.14000b530
cmp dword [0x14008d0b0], 3
lea rbp, str.foreground_ratio_det_start
jl 0x14000ac25
test dword [0x14008d114], 0x400000
je 0x14000ac25
mov edx, 3
mov ecx, 0x400000
mov edi, ebx
call fcn.14000b080
jmp 0x14000ac3b
mov edx, 3
mov ecx, 0x400000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000ac67
mov qword [rsp + 0x38], r14
mov r9d, 3
mov dword [rsp + 0x30], 0xa06
mov r8d, 0x400000
mov qword [rsp + 0x28], r12
mov edx, eax
mov ecx, edi
mov qword [rsp + 0x20], rbp
call fcn.14000b530
lea rcx, [0x14008e688]
call qword [sym.imp.KERNEL32.dll_InitializeSRWLock]
xor r9d, r9d
mov qword [0x14008e690], r15
xor edx, edx
mov dword [0x14008e698], r15d
xor ecx, ecx
mov r8d, 0x7fffffff
call qword [sym.imp.KERNEL32.dll_CreateSemaphoreW]
mov ecx, 0x10
mov qword [0x14008e6a0], r15
mov qword [0x14008e6a8], rax
mov esi, r15d
mov byte [0x14008e69c], r15b
call fcn.140023fac
mov rdi, rax
test rax, rax
je 0x14000ad0d
lea rax, [0x140007300]
mov qword [rsp + 0x28], r15
mov qword [rdi], rax
lea r8, [0x140009fc0]
lea rax, [0x14008e680]
mov dword [rsp + 0x20], r15d
mov r9, rdi
mov qword [rdi + 8], rax
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [0x14008e680], rax
test rax, rax
jne 0x14000ad17
mov rcx, rdi
call fcn.140023f98
mov esi, 0x3eb
jmp 0x14000ad12
mov esi, 0x708
call fcn.140007100
cmp dword [0x14008d0b0], 3
jl 0x14000ad3f
test dword [0x14008d114], 0x400000
je 0x14000ad3f
mov edx, 3
mov ecx, 0x400000
mov edi, ebx
call fcn.14000b080
jmp 0x14000ad55
mov edx, 3
mov ecx, 0x400000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000ad8c
mov dword [rsp + 0x40], esi
lea rcx, str.Exiting_function:_Exit_code__0x_08X...
mov qword [rsp + 0x38], rcx
mov r9d, 3
mov dword [rsp + 0x30], 0xa0e
mov r8d, 0x400000
mov qword [rsp + 0x28], r12
mov edx, eax
mov ecx, edi
mov qword [rsp + 0x20], rbp
call fcn.14000b530
lea rax, [0x140009600]
mov qword [rsp + 0x58], r15
lea r8, [0x14008fc40]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x50]
mov ecx, 2
call sub.api_ms_win_power_base_l1_1_0.dll_PowerRegisterSuspendResumeNotification
mov rax, qword [0x14008e580]
lea rdx, [rsp + 0x60]
xor r8d, r8d
mov qword [rsp + 0x68], rax
mov rax, qword [0x14008e5b0]
mov r9d, 0xffffffff
mov qword [rsp + 0x60], rax
lea ecx, [r8 + 2]
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov r14, qword [rsp + 0xc0]
lea rbp, str.Exiting_Function...
cmp dword [0x14008d0b0], 4
mov rsi, qword [rsp + 0xb0]
jl 0x14000ae22
test dword [0x14008d12c], 0x10000
je 0x14000ae22
mov edx, 4
mov ecx, 0x10000
mov edi, ebx
call fcn.14000b080
jmp 0x14000ae38
mov edx, 4
mov ecx, 0x10000
call fcn.14000b080
mov edi, r15d
test eax, eax
je 0x14000ae6b
lea rcx, str.Exiting..._n
mov r9d, 4
mov qword [rsp + 0x38], rcx
mov r8d, 0x10000
mov dword [rsp + 0x30], 0x176
mov edx, eax
mov qword [rsp + 0x28], r12
mov ecx, edi
mov qword [rsp + 0x20], r13
call fcn.14000b530
call fcn.140002cb0
cmp dword [0x14008d0b0], 3
mov rdi, qword [rsp + 0xb8]
jl 0x14000ae9e
test dword [0x14008d114], 0x400000
je 0x14000ae9e
mov edx, 3
mov ecx, 0x400000
call fcn.14000b080
jmp 0x14000aeb4
mov edx, 3
mov ecx, 0x400000
call fcn.14000b080
mov ebx, r15d
test eax, eax
je 0x14000aee0
mov qword [rsp + 0x38], rbp
mov r9d, 3
mov dword [rsp + 0x30], 0x179
mov r8d, 0x400000
mov qword [rsp + 0x28], r12
mov edx, eax
mov ecx, ebx
mov qword [rsp + 0x20], r13
call fcn.14000b530
call fcn.14000b240
xor eax, eax
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140014190
add rsp, 0x80
pop r15
pop r13
pop r12
pop rbp
pop rbx
ret