Function at 0x14000c460
Capabilities:
Check if file exists
Delete registry value
Get thread local storage value
Get token membership
Query or enumerate registry value
Terminate process

Disassembly:
push rbp
push rbx
push rdi
push r12
push r13
lea rbp, [rsp - 0x70]
sub rsp, 0x170
mov rax, qword [0x1400be7a8]
xor rax, rsp
mov qword [rbp + 0x40], rax
xor edi, edi
mov qword [rbp - 0x70], r9
mov qword [rsp + 0x68], r8
mov r12, rcx
mov qword [rbp + 0x18], rdx
mov r13, rcx
mov qword [rsp + 0x78], rcx
mov dword [rsp + 0x60], 0x7b
lea rbx, [rdi - 1]
mov qword [rbp - 0x68], rdi
mov qword [rbp - 0x80], rdi
test rcx, rcx
je 0x14000c4d8
mov rax, rbx
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], di
jne 0x14000c4c0
inc rax
cmp rax, 0x21b
ja 0x14001d2aa
cmp dword [0x1400c02d0], edi
mov qword [rsp + 0x168], rsi
mov qword [rsp + 0x160], r14
mov r14d, 2
je 0x14001d2c2
mov qword [rsp + 0x158], r15
test r12, r12
je 0x14000c52b
lea rdx, str._NoCache
mov rcx, r12
call qword [sym.imp.msvcrt.dll_wcsstr]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
jne 0x14001d3b0
xor edi, edi
mov rcx, qword [0x1400c02b8]
mov edx, 8
lea r8d, [rdx + 0x60]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov qword [rbp - 8], rax
mov r15, rax
test rax, rax
je 0x14001d3d3
mov dword [rax], 0x6060
mov qword [rax + 0x38], rbx
mov qword [rax + 0x40], rdi
mov qword [rax + 0x50], 0
mov dword [rax + 0x58], edi
mov qword [rax + 0x60], rdi
test r13, r13
je 0x14000c5d3
mov rax, rbx
nop dword [rax]
cmp word [r13 + rax*2 + 2], 0
lea rax, [rax + 1]
jne 0x14000c580
mov rcx, qword [0x1400c02b8]
lea r14d, [rax*2 + 2]
mov r8d, r14d
mov edx, 8
mov esi, r14d
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
je 0x14001d43f
mov r8d, esi
mov rdx, r13
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov qword [r15 + 0x48], rdi
xor edi, edi
mov rdx, qword [rsp + 0x68]
lea r14, [0x1400be2f8]
test rdx, rdx
jne 0x14000cb21
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov ecx, dword [0x1400c0290]
mov esi, eax
cmp ecx, 0xffffffff
je 0x14001d4b1
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_TlsGetValue]
nop dword [rax + rax]
lea rdx, [rbp - 0x58]
mov rcx, rax
call qword [sym.imp.RPCRT4.dll_I_RpcBindingInqTransportType]
nop dword [rax + rax]
mov edi, eax
test eax, eax
jne 0x14000cba3
cmp dword [rbp - 0x58], 4
jne 0x14001d4cf
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentThread]
nop dword [rax + rax]
mov edi, 1
lea r9, [rbp - 0x10]
mov rcx, rax
mov r8d, edi
lea edx, [rdi + 7]
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_OpenThreadToken]
nop dword [rax + rax]
test eax, eax
je 0x14000cd57
xor ecx, ecx
mov dword [rbp + 0x38], 0
lea rax, [rbp - 0x50]
mov qword [rbp - 0x50], rcx
mov qword [rsp + 0x50], rax
lea r8d, [rdi + 1]
mov dword [rsp + 0x48], ecx
xor r9d, r9d
mov dword [rsp + 0x40], ecx
movzx edx, dil
mov dword [rsp + 0x38], ecx
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x38]
mov word [rbp + 0x3c], 0x500
call qword [sym.imp.api_ms_win_security_base_l1_1_0.dll_AllocateAndInitializeSid]
nop dword [rax + rax]
test eax, eax
je 0x14001d4e1
mov rdx, qword [rbp - 0x50]
lea r8, [rbp - 0x54]
mov rcx, qword [rbp - 0x10]
call qword [sym.imp.api_ms_win_security_base_l1_1_0.dll_CheckTokenMembership]
nop dword [rax + rax]
test eax, eax
je 0x14001d4d6
cmp dword [rbp - 0x54], 0
jne 0x14000c6eb
xor eax, eax
mov edi, eax
mov rcx, qword [rbp - 0x50]
call qword [sym.imp.api_ms_win_security_base_l1_1_0.dll_FreeSid]
nop dword [rax + rax]
mov rcx, qword [rbp - 0x10]
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
nop dword [rax + rax]
mov ecx, esi
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
test edi, edi
js 0x14001d4ed
jne 0x14000ca17
mov rcx, r13
call fcn.14000cd80
xor esi, esi
mov qword [rbp - 0x78], rsi
mov qword [rbp - 0x80], rsi
test r13, r13
je 0x14000cbc1
lea rdx, [rsp + 0x70]
mov qword [rbp], rbx
lea rcx, [rbp]
mov byte [rbp + 8], sil
mov dword [rsp + 0x70], esi
call fcn.14000cf70
test eax, eax
je 0x14000c76a
cmp dword [rsp + 0x70], esi
jne 0x14001d525
lea rdx, [rbp - 0x60]
mov qword [rbp - 0x60], rsi
mov ecx, 0x2001f
mov r14, rsi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenCurrentUser]
nop dword [rax + rax]
mov edi, eax
test eax, eax
jne 0x14001d52e
mov rsi, qword [rbp - 0x60]
test rsi, rsi
je 0x14001d590
cmp word [r13], 0x5c
jne 0x14000c901
cmp word [r13 + 2], 0x5c
jne 0x14000c901
inc rbx
cmp word [r13 + rbx*2], r14w
jne 0x14000c7b5
cmp rbx, 0x21b
jae 0x14000c901
mov rcx, qword [0x1400c02b8]
mov edx, 8
mov r8d, 0x462
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapAlloc]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
je 0x14001d5ca
lea r8, [0x1400a2048]
mov edx, 0x231
sub r8, rax
mov rcx, rax
nop dword [rax]
lea rax, [rdx + 0x7ffffdcd]
test rax, rax
je 0x14000c841
movzx eax, word [r8 + rcx]
test ax, ax
je 0x14000c838
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x14000c810
jmp 0x14001d622
test rdx, rdx
je 0x14001d622
xor r10d, r10d
lea r8, [rdi + 0x2a]
mov word [rcx], r10w
cmp r8, r13
je 0x14000c895
mov r9, r13
mov edx, 0x21c
sub r9, r8
mov rax, r8
nop
lea rcx, [rdx + 0x7ffffde2]
test rcx, rcx
je 0x14000c891
movzx ecx, word [rax + r9]
test cx, cx
je 0x14000c888
mov word [rax], cx
add rax, 2
sub rdx, 1
jne 0x14000c860
jmp 0x14001d62b
test rdx, rdx
je 0x14001d62b
mov word [rax], r10w
movzx eax, word [r8]
test ax, ax
je 0x14000c8bb
mov ecx, 0x2c
cmp ax, 0x5c
je 0x14000cb18
movzx eax, word [r8 + 2]
add r8, 2
test ax, ax
jne 0x14000c8a3
lea rax, [rbp - 0x78]
mov r9d, 0x2001f
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov rdx, rdi
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenKeyExW]
nop dword [rax + rax]
mov rcx, qword [0x1400c02b8]
mov r8, rdi
xor edx, edx
mov ebx, eax
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
test ebx, ebx
je 0x14001d634
lea rax, [rbp + 0x10]
xor r9d, r9d
mov qword [rsp + 0x40], rax
lea rdx, [0x1400a2018]
lea rax, [rbp - 0x78]
xor r8d, r8d
mov qword [rsp + 0x38], rax
mov rcx, rsi
xor eax, eax
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x2001f
mov dword [rsp + 0x20], eax
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCreateKeyExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jne 0x14000c94b
mov r14, r13
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
test ebx, ebx
jne 0x14001d640
mov rcx, qword [rbp - 0x78]
lea rax, [rsp + 0x70]
xor esi, esi
xor r9d, r9d
mov qword [rsp + 0x58], rsi
xor r8d, r8d
mov qword [rsp + 0x50], rsi
xor edx, edx
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryInfoKeyW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jne 0x14000c9bc
mov ecx, dword [rsp + 0x70]
cmp ecx, 0x48
jae 0x14001d667
mov rdi, rsi
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
test ebx, ebx
jne 0x14001d73a
mov rbx, qword [rbp]
cmp rbx, 0xffffffffffffffff
je 0x14000ca0e
test rbx, rbx
je 0x14000c9ff
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_SetThreadToken]
nop dword [rax + rax]
test eax, eax
je 0x14001d78d
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
nop dword [rax + rax]
test rdi, rdi
jne 0x14001d79f
mov rdx, qword [rsp + 0x68]
mov ebx, dword [rbp + 0xc0]
xorps xmm0, xmm0
mov rcx, qword [rbp - 0x70]
xor eax, eax
mov qword [rbp - 0x18], rax
movups xmmword [rbp - 0x48], xmm0
movups xmmword [rbp - 0x38], xmm0
movups xmmword [rbp - 0x28], xmm0
cmp ebx, 4
je 0x14000cb4b
cmp ebx, 3
je 0x14001d7d1
cmp dword [rbp + 0xc8], 0
mov esi, 3
je 0x14000cbf9
mov rdi, qword [0x1400c02d8]
lea eax, [rbx - 3]
cmp eax, 1
jbe 0x14000cb31
mov eax, ebx
mov r9, rcx
movabs r10, 0xf5c10edf10538170
mov dword [rsp + 0x20], eax
mov r8, rdx
mov rax, qword [rdi + 0x1e8]
lea rdx, [rbp - 0x68]
mov rcx, r13
call qword [case.0x140007f48.0]
mov r14d, eax
cmp eax, 1
jne 0x14000cbd7
mov qword [r15 + 8], rdi
mov ebx, 1
mov rax, qword [rbp - 0x68]
mov qword [r15 + 0x10], rax
mov rax, qword [rbp + 0x18]
mov qword [rax], r15
mov r8, qword [rbp - 0x80]
xor edx, edx
mov rcx, qword [0x1400c02b8]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
cmp r13, r12
jne 0x14001da15
mov eax, ebx
mov r15, qword [rsp + 0x158]
mov rsi, qword [rsp + 0x168]
mov r14, qword [rsp + 0x160]
mov rcx, qword [rbp + 0x40]
xor rcx, rsp
call fcn.140014250
add rsp, 0x170
pop r13
pop r12
pop rdi
pop rbx
pop rbp
ret
mov word [r8], cx
jmp 0x14000c8ad
cmp qword [rdx + 8], 0
je 0x14000c5e8
jmp 0x14000ca1c
cmp ebx, esi
je 0x14000cb40
mov eax, esi
cmp ebx, 4
jne 0x14000ca74
lea r9, [rbp - 0x48]
mov eax, esi
jmp 0x14000ca77
mov eax, dword [rcx + 0x30]
mov dword [r15 + 0x54], eax
mov eax, dword [rcx + 0x34]
mov dword [r15 + 0x58], eax
mov eax, dword [rcx]
mov dword [rbp - 0x44], eax
mov rax, qword [rcx + 8]
mov qword [rbp - 0x38], rax
mov rax, qword [rcx + 0x10]
mov qword [rbp - 0x30], rax
mov eax, dword [rcx + 0x18]
mov dword [rbp - 0x28], eax
mov eax, dword [rcx + 0x1c]
mov dword [rbp - 0x24], eax
mov eax, dword [rcx + 0x20]
mov dword [rbp - 0x20], eax
movzx eax, word [rcx + 0x24]
mov word [rbp - 0x1c], ax
mov rax, qword [rcx + 0x28]
mov qword [rbp - 0x18], rax
mov dword [rbp - 0x40], 0x28
mov dword [rbp - 0x48], 0x38
jmp 0x14000ca4d
cmp eax, 0x6bd
jne 0x14001d4b9
mov ecx, esi
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
jmp 0x14000c727
mov ecx, 6
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
jmp 0x14000ca17
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov ecx, eax
lea rdx, [rsp + 0x60]
call fcn.14000d268
cmp r14d, 2
je 0x14000ccee
lea rcx, [0x1400bff68]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_EnterCriticalSection]
nop dword [rax + rax]
mov rcx, r13
call fcn.14000b270
lea rcx, [0x1400bff68]
mov rdi, rax
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
nop dword [rax + rax]
test rdi, rdi
jne 0x14001d80a
mov rcx, r13
call fcn.14000b438
mov rdi, rax
xor eax, eax
mov r12d, eax
test rdi, rdi
jne 0x14001d926
mov rax, qword [0x1400c02d8]
mov rdi, qword [rax]
test rdi, rdi
je 0x14000cce9
cmp rdi, r12
je 0x14000ccdd
lea eax, [rbx - 3]
cmp eax, 1
ja 0x14001d989
cmp ebx, 3
je 0x14000cc81
mov r14d, esi
cmp ebx, 4
jne 0x14001d98c
lea r15, [rbp - 0x48]
mov r14d, esi
mov rcx, qword [rdi + 8]
lea rdx, str.win32spl.dll
call qword [sym.imp.msvcrt.dll__wcsicmp]
nop dword [rax + rax]
mov rdx, qword [rsp + 0x78]
lea r8, [rbp - 0x68]
mov r9, qword [rsp + 0x68]
test eax, eax
mov dword [rsp + 0x30], r14d
lea rax, [rsp + 0x60]
cmovne rdx, r13
mov qword [rsp + 0x28], r15
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.14000d174
sub eax, 1
je 0x14001d995
cmp eax, 1
je 0x14000cce9
mov rdi, qword [rdi]
test rdi, rdi
jne 0x14000cc5f
mov r12, qword [rsp + 0x78]
mov rcx, qword [rbp - 8]
call fcn.14000b318
cmp dword [rsp + 0x60], 0x7b
jne 0x14000cd06
mov dword [rsp + 0x60], 0x709
mov ecx, dword [rsp + 0x60]
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
xor eax, eax
mov ebx, eax
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
cmp eax, 0x709
jne 0x14001d9a3
mov rax, qword [0x1400be2f8]
lea rcx, [0x1400be2f8]
cmp rax, rcx
je 0x14000cac0
test byte [rax + 0x44], 0x80
je 0x14000cac0
jmp 0x14001d9e0
call fcn.14000b09c
mov edi, eax
cmp eax, 0x800703f0
je 0x14000cbae
jmp 0x14000c70b
mov ecx, 0x709
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
xor eax, eax
jmp 0x14000cafc
call sym.spoolsv.exe_PrvRevertToPrinterSelf
lea r8, str.RouterPreInitEvent
xor edx, edx
mov ecx, r14d
mov rsi, rax
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_OpenEventW]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
jne 0x14001d358
mov rax, qword [0x1400be2f8]
lea rcx, [0x1400be2f8]
cmp rax, rcx
je 0x14001d32c
test byte [rax + 0x44], 0x20
je 0x14001d32c
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x1400be2f8]
lea edx, [rdi + 0x15]
mov r9d, eax
lea r8, [0x1400a4120]
mov rcx, qword [rcx + 0x38]
call fcn.14002c238
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
xor r8d, r8d
lea rcx, [0x1400a2c98]
mov edx, eax
call fcn.140058918
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_ExitProcess]
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_SetEvent]
nop dword [rax + rax]
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
nop dword [rax + rax]
test rsi, rsi
je 0x14001d39f
mov rcx, rsi
call sym.spoolsv.exe_PrvImpersonatePrinterClient
test eax, eax
jne 0x14001d39f
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov edx, eax
mov ecx, 0x69
call fcn.140058518
mov edx, 0xffffffff
call fcn.14005dd50
xor edi, edi
jmp 0x14000c4fa
mov rcx, r12
call sym.spoolsv.exe_PrvDllAllocSplStr
mov r13, rax
test rax, rax
je 0x14001d438
sub rdi, r12
sar rdi, 1
xor eax, eax
mov word [r13 + rdi*2], ax
jmp 0x14000c529
mov ecx, 8
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
mov rcx, qword [0x1400be2f8]
lea rax, [0x1400be2f8]
cmp rcx, rax
je 0x14001d416
test byte [rcx + 0x44], 0x20
je 0x14001d416
mov rcx, qword [rcx + 0x38]
lea r8, [0x1400a4140]
mov edx, 0xa
lea r9d, [rdx + 0x5e]
call fcn.14002c27c
cmp r13, r12
je 0x14001d438
test r13, r13
je 0x14001d438
mov rcx, qword [0x1400c02b8]
mov r8, r13
xor edx, edx
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
xor eax, eax
jmp 0x14000cae4
mov ecx, 8
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
mov rcx, qword [0x1400be2f8]
lea rax, [0x1400be2f8]
cmp rcx, rax
je 0x14001d481
test byte [rcx + 0x44], 0x20
je 0x14001d481
mov rcx, qword [rcx + 0x38]
lea r8, [0x1400a4140]
mov edx, 0xa
mov r9d, r14d
call fcn.14002c27c
mov qword [r15 + 0x48], rdi
cmp r13, r12
je 0x14001d4a2
mov rcx, qword [0x1400c02b8]
mov r8, r13
xor edx, edx
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov rcx, r15
call fcn.14000b318
xor eax, eax
jmp 0x14000cae4
mov rax, rdi
jmp 0x14000c611
test eax, eax
jle 0x14000c70b
movzx edi, ax
or edi, 0x80070000
jmp 0x14000c70b
mov ecx, esi
jmp 0x14000cbc6
call fcn.14000b09c
nop
jmp 0x14000c6e9
call fcn.14000b09c
mov edi, eax
jmp 0x14000c6fb
mov rcx, qword [0x1400be2f8]
cmp rcx, r14
je 0x14000ca17
test byte [rcx + 0x44], 0x20
je 0x14000ca17
mov rcx, qword [rcx + 0x38]
lea r8, [0x1400a41e0]
mov edx, 0x12
mov r9d, edi
call fcn.14002c27c
nop
jmp 0x14000ca17
mov byte [rbp + 8], 1
jmp 0x14000c76a
mov ecx, edi
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
cmp edi, 5
je 0x14001d572
mov rcx, qword [0x1400be2f8]
lea rax, [0x1400be2f8]
cmp rcx, rax
je 0x14001d572
test byte [rcx + 0x44], 0x20
je 0x14001d572
mov rcx, qword [rcx + 0x38]
lea r8, [0x1400a41e0]
mov edx, 0xf
mov r9d, edi
call fcn.14002c238
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x14001d587
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
mov qword [rbp - 0x60], rsi
jmp 0x14000c794
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
cmp eax, 5
jne 0x14001d5b7
mov ecx, 0x20019
call sym.spoolsv.exe_PrvSplGetClientUserHandle
mov rsi, rax
test rax, rax
jne 0x14000c79d
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
jmp 0x14000c95a
mov ecx, 8
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
mov rcx, qword [0x1400be2f8]
lea rax, [0x1400be2f8]
cmp rcx, rax
je 0x14001d60f
test byte [rcx + 0x44], 0x20
je 0x14001d60f
mov rcx, qword [rcx + 0x38]
lea r8, [0x1400a4140]
mov edx, 0xa
mov r9d, 0x462
call fcn.14002c27c
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
jmp 0x14000c8f9
sub rcx, 2
jmp 0x14000c841
sub rax, 2
jmp 0x14000c891
lea r14, str.DevMode
jmp 0x14000c94b
mov ecx, ebx
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov rdi, qword [rbp - 0x80]
xor esi, esi
mov ebx, eax
jmp 0x14000c9cf
call sym.spoolsv.exe_PrvDllAllocSplMem
mov qword [rbp - 0x80], rax
mov rdi, rax
test rax, rax
jne 0x14001d68b
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
jmp 0x14000c9bf
mov rcx, qword [rbp - 0x78]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rdi
mov rdx, r14
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
jne 0x14001d710
mov r8d, dword [rsp + 0x70]
mov r9d, 0x8007000d
cmp r8, 0x4c
jb 0x14001d6e5
movzx ecx, word [rdi + 0x46]
movzx eax, word [rdi + 0x44]
add rcx, rax
cmp r8, rcx
jb 0x14001d6e5
mov rcx, rdi
call fcn.1400031a0
mov r9d, eax
mov ecx, r9d
call fcn.140008008
mov ebx, eax
test eax, eax
je 0x14001d72f
mov rcx, qword [rbp - 0x78]
mov rdx, r14
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegDeleteValueW]
nop dword [rax + rax]
test eax, eax
mov eax, 2
cmove ebx, eax
mov rcx, qword [0x1400c02b8]
mov r8, rdi
xor edx, edx
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
mov rdi, rsi
mov qword [rbp - 0x80], rsi
cmp ebx, 2
cmove ebx, esi
jmp 0x14000c9bf
mov ecx, ebx
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
cmp ebx, 5
je 0x14001d77e
mov rcx, qword [0x1400be2f8]
lea rax, [0x1400be2f8]
cmp rcx, rax
je 0x14001d77e
test byte [rcx + 0x44], 0x20
je 0x14001d77e
mov rcx, qword [rcx + 0x38]
lea r8, [0x1400a4240]
mov edx, 0xf
mov r9d, ebx
call fcn.14002c238
lea rcx, [rbp]
call fcn.14000b608
nop
jmp 0x14000ca17
mov ecx, 1
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_ExitProcess]
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x14001d7b8
mov rax, qword [rcx]
mov qword [rbp + 0x20], rax
mov eax, dword [rcx + 0x10]
mov dword [rbp + 0x30], eax
jmp 0x14001d7bf
mov qword [rbp + 0x20], rsi
mov dword [rbp + 0x30], esi
lea rdx, [rbp + 0x20]
mov qword [rbp + 0x28], rdi
mov qword [rsp + 0x68], rdx
jmp 0x14000ca1c
mov eax, dword [rcx + 4]
mov dword [rbp - 0x44], eax
mov rax, qword [rcx + 0x10]
mov qword [rbp - 0x38], rax
mov rax, qword [rcx + 0x18]
mov qword [rbp - 0x30], rax
mov eax, dword [rcx + 0x20]
mov dword [rbp - 0x28], eax
mov eax, dword [rcx + 0x24]
mov dword [rbp - 0x24], eax
mov eax, dword [rcx + 0x28]
mov dword [rbp - 0x20], eax
movzx eax, word [rcx + 0x2c]
mov word [rbp - 0x1c], ax
mov rax, qword [rcx + 0x30]
jmp 0x14000cb8c
lea eax, [rbx - 3]
cmp eax, 1
jbe 0x14001d816
mov eax, ebx
jmp 0x14001d822
cmp ebx, 3
je 0x14001d828
mov eax, esi
cmp ebx, 4
je 0x14001d828
mov r9, qword [rbp - 0x70]
jmp 0x14001d82e
lea r9, [rbp - 0x48]
mov eax, esi
movabs r10, 0xf5c10edf10538170
mov r8, qword [rsp + 0x68]
lea rdx, [rbp - 0x68]
mov dword [rsp + 0x20], eax
mov rcx, r13
mov rax, qword [rdi + 0x1e8]
call qword [case.0x140007f48.0]
mov r14d, eax
test eax, eax
jne 0x14001d887
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
cmp eax, 0x32
je 0x14001d88c
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov ecx, eax
lea rdx, [rsp + 0x60]
call fcn.14000d268
jmp 0x14001d8db
cmp eax, 0x32
jne 0x14001d8af
movabs r10, 0x8ef42e383654d170
mov r8, qword [rsp + 0x68]
lea rdx, [rbp - 0x68]
mov rax, qword [rdi + 0x20]
mov rcx, r13
call qword [case.0x140007f48.0]
mov r14d, eax
cmp r14d, 1
je 0x14000caa8
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov ecx, eax
lea rdx, [rsp + 0x60]
call fcn.14000d268
cmp r14d, 2
je 0x14000ccee
mov rcx, r13
mov r12, rdi
call fcn.14000b438
mov rdi, rax
cmp rax, r12
je 0x14000cc43
lea rcx, [0x1400bff68]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_EnterCriticalSection]
nop dword [rax + rax]
mov rcx, r13
call fcn.140075160
lea rcx, [0x1400bff68]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
nop dword [rax + rax]
nop
jmp 0x14000cc43
cmp rdi, r12
je 0x14000cce9
lea eax, [rbx - 3]
cmp eax, 1
jbe 0x14001d93b
mov esi, ebx
jmp 0x14001d945
cmp ebx, 3
je 0x14001d94b
cmp ebx, 4
je 0x14001d94b
mov rax, qword [rbp - 0x70]
jmp 0x14001d94f
lea rax, [rbp - 0x48]
mov r9, qword [rsp + 0x68]
lea r8, [rbp - 0x68]
mov dword [rsp + 0x30], esi
mov rdx, r13
mov qword [rsp + 0x28], rax
mov rcx, rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
call fcn.14000d174
mov r12, qword [rsp + 0x78]
cmp eax, 1
je 0x14000caa8
jmp 0x14000ccee
mov r14d, ebx
mov r15, qword [rbp - 0x70]
jmp 0x14000cc88
mov r12, qword [rsp + 0x78]
mov r15, qword [rbp - 8]
jmp 0x14000caa8
cmp eax, 5
je 0x14000cd31
mov rax, qword [0x1400be2f8]
lea rcx, [0x1400be2f8]
cmp rax, rcx
je 0x14000cac0
test byte [rax + 0x44], 0x20
je 0x14000cac0
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov edx, 0xf
jmp 0x14001d9f1
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov edx, 0xe
mov rcx, qword [0x1400be2f8]
lea r8, [0x1400a4150]
mov r9, r12
mov dword [rsp + 0x20], eax
mov rcx, qword [rcx + 0x38]
call fcn.140052474
nop
jmp 0x14000cac0
test r13, r13
je 0x14000cae2
mov rcx, qword [0x1400c02b8]
mov r8, r13
xor edx, edx
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_HeapFree]
nop dword [rax + rax]
nop
jmp 0x14000cae2