Function at 0x140004cf0
Capabilities:
Get installed programs
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x28990
call fcn.14006a6b0
sub rsp, rax
mov qword [rsp + 0x468], 0xfffffffffffffffe
mov qword [rsp + 0x289c8], rbx
mov qword [rsp + 0x289d8], rsi
mov rax, qword [0x1400dc010]
xor rax, rsp
mov qword [rsp + 0x28980], rax
mov byte [rsp + 0x64], r9b
mov r13, r8
mov byte [rsp + 0x61], dl
mov r12, rcx
mov qword [rsp + 0x450], rcx
mov qword [rsp + 0x458], r8
mov rsi, qword [rsp + 0x289e0]
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x460], rsi
mov rax, qword [rsp + 0x28a00]
mov qword [rsp + 0x130], rax
lea rdx, [0x140098d49]
call fcn.14000b940
test al, al
je 0x140004df0
mov rdx, qword [r12]
sub rdx, 0x18
mov rbx, 0xffffffffffffffff
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004db1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [r13]
sub rdx, 0x18
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140004dcf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsi]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], ebx
sub ebx, 1
jg 0x140004de9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
xor al, al
jmp 0x140006876
lea rdx, [0x140098d49]
lea rcx, [rsp + 0x70]
call fcn.14000c8e0
nop
lea rdx, [0x140098d49]
lea rcx, [rsp + 0x68]
call fcn.14000c8e0
nop
lea rdx, [0x140098d49]
lea rcx, [rsp + 0x78]
call fcn.14000c8e0
nop
lea rdx, [0x140098d49]
lea rcx, [rsp + 0x88]
call fcn.14000c8e0
nop
mov rdi, qword [r12]
mov qword [rsp + 0x1c0], rdi
xor r14d, r14d
mov ebx, r14d
mov qword [rsp + 0x148], rbx
movzx ecx, word [rdi]
test cx, cx
je 0x140004e92
mov word [rsp + 0xf8], cx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_iswspace]
test eax, eax
je 0x140004e79
test rbx, rbx
jne 0x140004e84
mov rbx, rdi
jmp 0x140004e7c
mov rbx, r14
mov qword [rsp + 0x148], rbx
add rdi, 2
mov qword [rsp + 0x1c0], rdi
jmp 0x140004e55
test rbx, rbx
je 0x140004f01
mov rax, qword [r12]
mov qword [rsp + 0x470], rax
sub rbx, rax
sar rbx, 1
mov dword [rsp + 0x158], ebx
test ebx, ebx
js 0x1400068a3
mov edi, 1
mov ecx, edi
sub ecx, dword [rax - 8]
mov dword [rsp + 0x15c], ecx
mov eax, dword [rax - 0xc]
sub eax, ebx
mov dword [rsp + 0x160], eax
or eax, ecx
jge 0x140004ee3
mov edx, ebx
mov rcx, r12
call fcn.14000d2f0
mov rax, qword [r12]
cmp ebx, dword [rax - 0xc]
jg 0x1400068ad
mov dword [rax - 0x10], ebx
movsxd rcx, ebx
mov rax, qword [r12]
mov word [rax + rcx*2], r14w
jmp 0x140004f06
mov edi, 1
mov qword [rsp + 0x478], r12
mov rbx, qword [r12]
mov qword [rsp + 0x150], rbx
nop word [rax + rax]
movzx ecx, word [rbx]
mov word [rsp + 0xf0], cx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_iswspace]
test eax, eax
je 0x140004f43
add rbx, 2
mov qword [rsp + 0x150], rbx
jmp 0x140004f20
mov r9, qword [r12]
mov qword [rsp + 0x480], r9
cmp rbx, r9
je 0x14000503b
mov qword [rsp + 0x488], r9
sub rbx, r9
sar rbx, 1
mov dword [rsp + 0x164], ebx
mov edx, dword [r9 - 0x10]
mov dword [rsp + 0x168], edx
test edx, edx
js 0x1400068b7
sub edi, dword [r9 - 8]
mov dword [rsp + 0x16c], edi
mov eax, dword [r9 - 0xc]
sub eax, edx
mov dword [rsp + 0x170], eax
or eax, edi
jge 0x140004fa8
mov rcx, r12
call fcn.14000d2f0
mov r9, qword [r12]
movsxd rax, ebx
lea rdx, [r9 + rax*2]
mov qword [rsp + 0x150], rdx
mov ecx, dword [r9 - 0x10]
mov dword [rsp + 0x174], ecx
mov edi, ecx
sub edi, ebx
mov dword [rsp + 0x178], edi
mov dword [rsp + 0x17c], ecx
lea eax, [rdi + 1]
movsxd r8, eax
add r8, r8
mov qword [rsp + 0x490], r8
je 0x140005017
test rdx, rdx
jne 0x140004ffd
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], 0x16
jmp 0x1400068cd
lea eax, [rcx + 1]
movsxd rcx, eax
add rcx, rcx
cmp rcx, r8
jb 0x1400068c1
mov rcx, r9
call sub.VCRUNTIME140.dll_memmove
test edi, edi
js 0x1400068dd
mov rax, qword [r12]
cmp edi, dword [rax - 0xc]
jg 0x1400068dd
mov dword [rax - 0x10], edi
movsxd rcx, edi
mov rax, qword [r12]
mov word [rax + rcx*2], r14w
lea rcx, [rsp + 0x88]
cmp byte [rsp + 0x289f0], r14b
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionUninstall
je 0x14000505b
lea rdx, str.SOFTWAREWOW6432NodeMicrosoftWindowsCurrentVersionUninstall
call fcn.14000c670
lea rax, [rsp + 0xe0]
mov r9d, 0x20119
xor r8d, r8d
mov rdx, qword [rsp + 0x88]
mov qword [rsp + 0x20], rax
cmp byte [rsp + 0x289f8], r14b
je 0x1400051f4
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x14000535c
mov rcx, qword [rsp + 0x88]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x1c8], rcx
mov rbx, 0xffffffffffffffff
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400050da
mov rdx, qword [rsp + 0x1c8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x1d0], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005109
mov rdx, qword [rsp + 0x1d0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x1d8], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005138
mov rdx, qword [rsp + 0x1d8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x1e0], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005167
mov rdx, qword [rsp + 0x1e0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r12]
sub rcx, 0x18
mov qword [rsp + 0x1e8], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005195
mov rdx, qword [rsp + 0x1e8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r13]
sub rcx, 0x18
mov qword [rsp + 0x1f0], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400051c3
mov rdx, qword [rsp + 0x1f0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rax, qword [rsi]
sub rax, 0x18
mov qword [rsp + 0x1f8], rax
lock xadd dword [rax + 0x10], ebx
sub ebx, 1
jg 0x1400051ed
mov rdx, qword [rsp + 0x1f8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
xor al, al
jmp 0x140006876
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x14000535c
mov rcx, qword [rsp + 0x88]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x200], rcx
mov rbx, 0xffffffffffffffff
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005242
mov rdx, qword [rsp + 0x200]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x208], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005271
mov rdx, qword [rsp + 0x208]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x210], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400052a0
mov rdx, qword [rsp + 0x210]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x218], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400052cf
mov rdx, qword [rsp + 0x218]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r12]
sub rcx, 0x18
mov qword [rsp + 0x220], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400052fd
mov rdx, qword [rsp + 0x220]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r13]
sub rcx, 0x18
mov qword [rsp + 0x228], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x14000532b
mov rdx, qword [rsp + 0x228]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rax, qword [rsi]
sub rax, 0x18
mov qword [rsp + 0x230], rax
lock xadd dword [rax + 0x10], ebx
sub ebx, 1
jg 0x140005355
mov rdx, qword [rsp + 0x230]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
xor al, al
jmp 0x140006876
mov dword [rsp + 0xc8], r14d
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0x770]
call sub.VCRUNTIME140.dll_memset
mov dword [rsp + 0x108], 0x104
mov dword [rsp + 0xa8], r14d
mov dword [rsp + 0x10c], r14d
mov dword [rsp + 0x118], r14d
mov dword [rsp + 0x138], r14d
mov dword [rsp + 0x13c], r14d
mov dword [rsp + 0x140], r14d
mov dword [rsp + 0x100], r14d
lea rdx, str.DisplayName
lea rcx, [rsp + 0xd0]
call fcn.14000c8e0
nop
lea rdx, str.Publisher
lea rcx, [rsp + 0xc0]
call fcn.14000c8e0
nop
lea rdx, str.DisplayVersion
lea rcx, [rsp + 0xb8]
call fcn.14000c8e0
nop
lea rdx, str.UninstallString
lea rcx, [rsp + 0xd8]
call fcn.14000c8e0
nop
lea rdx, str.QuietUninstallString
lea rcx, [rsp + 0xe8]
call fcn.14000c8e0
nop
lea rax, [rsp + 0x238]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x100]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x140]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x13c]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x138]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x118]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x10c]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rsp + 0x108]
lea rdx, [rsp + 0x770]
mov rcx, qword [rsp + 0xe0]
call qword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
mov dword [rsp + 0x128], eax
test eax, eax
jne 0x1400065b9
mov eax, dword [rsp + 0xa8]
test eax, eax
je 0x1400065b9
mov r15d, r14d
mov dword [rsp + 0xa4], r14d
mov rbx, 0xffffffffffffffff
nop
cmp r15d, eax
jae 0x1400065c0
mov dword [rsp + 0xc8], 0xff
lea rax, [rsp + 0x238]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0xc8]
lea r8, [rsp + 0x570]
mov edx, r15d
mov rcx, qword [rsp + 0xe0]
call qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov dword [rsp + 0x128], eax
mov rcx, qword [rsp + 0xe0]
test eax, eax
jne 0x140006542
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rsp + 0x570]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x140005587
inc r15d
mov dword [rsp + 0xa4], r15d
mov eax, dword [rsp + 0xa8]
jmp 0x1400054e0
mov dword [rsp + 0x110], 0x7ffe
mov dword [rsp + 0x124], 0x7ffe
mov dword [rsp + 0x104], 0x7ffe
mov dword [rsp + 0x11c], 0x7ffe
mov dword [rsp + 0x120], 0x7ffe
mov dword [rsp + 0x80], r14d
lea rax, [rsp + 0x110]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x980]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x80]
xor r8d, r8d
mov rdx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xb0]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov esi, eax
mov dword [rsp + 0x114], eax
lea rax, [rsp + 0x980]
mov rcx, rbx
inc rcx
cmp word [rax + rcx*2], 0
jne 0x140005615
mov dword [rsp + 0x180], ecx
mov r8d, ecx
lea rdx, [rsp + 0x980]
lea rcx, [rsp + 0x70]
call fcn.14000d350
lea rcx, [rsp + 0x70]
call fcn.14000c0e0
mov qword [rsp + 0x498], rax
mov r9, qword [rax]
lea rdx, [r9 - 0x18]
mov qword [rsp + 0x4a0], rdx
mov rcx, qword [rsp + 0x70]
lea rdi, [rcx - 0x18]
mov qword [rsp + 0x240], rdi
cmp rdx, rdi
je 0x1400056f9
cmp dword [rdi + 0x10], 0
jl 0x1400056d3
mov rax, qword [rdi]
cmp qword [rdx], rax
jne 0x1400056d3
mov rcx, rdx
call fcn.14000d260
mov qword [rsp + 0x248], rax
mov eax, ebx
lock xadd dword [rdi + 0x10], eax
sub eax, 1
jg 0x1400056b1
mov rdx, qword [rsp + 0x240]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rsp + 0x248]
add rcx, 0x18
mov qword [rsp + 0x70], rcx
mov r15d, dword [rsp + 0xa4]
mov esi, dword [rsp + 0x114]
jmp 0x1400056f9
mov r8d, dword [r9 - 0x10]
mov dword [rsp + 0x184], r8d
mov qword [rsp + 0x4a8], r9
mov rdx, r9
lea rcx, [rsp + 0x70]
call fcn.14000d350
mov rcx, qword [rsp + 0x70]
test esi, esi
jne 0x1400064d0
mov rdx, qword [r12]
cmp byte [rsp + 0x61], sil
je 0x140005756
mov qword [rsp + 0x4b0], rdx
test rdx, rdx
je 0x1400068e8
sub rdx, rcx
movzx eax, word [rcx]
cmp ax, word [rcx + rdx]
jne 0x140005743
add rcx, 2
test ax, ax
jne 0x140005720
mov eax, r14d
mov dword [rsp + 0x188], eax
test eax, eax
sete al
jmp 0x1400057b9
sbb eax, eax
or eax, 1
mov dword [rsp + 0x188], eax
test eax, eax
sete al
jmp 0x1400057b9
mov qword [rsp + 0x4b8], rdx
test rdx, rdx
jne 0x14000576e
mov eax, ebx
mov dword [rsp + 0x9c], ebx
jmp 0x1400057b4
mov eax, dword [rcx - 0x10]
mov dword [rsp + 0x18c], eax
test eax, eax
jns 0x140005787
mov eax, ebx
mov dword [rsp + 0x9c], ebx
jmp 0x1400057b4
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov qword [rsp + 0x4c0], rax
test rax, rax
jne 0x1400057a5
mov eax, ebx
mov dword [rsp + 0x9c], ebx
jmp 0x1400057b4
sub rax, qword [rsp + 0x70]
sar rax, 1
mov dword [rsp + 0x9c], eax
shr eax, 0x1f
xor al, 1
mov byte [rsp + 0x62], al
test al, al
je 0x14000652a
lea rdx, str.false
mov rdi, qword [rsp + 0x130]
mov rcx, rdi
call fcn.14000b940
test al, al
je 0x140005841
lea rax, [rsp + 0x11c]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x8980]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x80]
xor r8d, r8d
mov rdx, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xb0]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
lea rcx, [rsp + 0x8980]
mov rax, rbx
inc rax
cmp word [rcx + rax*2], 0
jne 0x140005826
mov dword [rsp + 0x190], eax
lea rdx, [rsp + 0x8980]
jmp 0x1400058b9
lea rdx, str.true
mov rcx, rdi
call fcn.14000b940
test al, al
je 0x1400058c4
lea rax, [rsp + 0x120]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x10980]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x80]
xor r8d, r8d
mov rdx, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0xb0]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
lea rcx, [rsp + 0x10980]
mov rax, rbx
nop word [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x1400058a0
mov dword [rsp + 0x194], eax
lea rdx, [rsp + 0x10980]
mov r8d, eax
mov rcx, rdi
call fcn.14000d350
lea rdx, [0x140098d49]
mov rdi, qword [rsp + 0x90]
mov rcx, rdi
call fcn.14000b940
test al, al
je 0x140005b40
lea rdx, [0x140098d49]
mov rcx, r13
call fcn.14000b940
test al, al
je 0x140005b40
mov rcx, qword [rsp + 0xe8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x250], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x14000592c
mov rdx, qword [rsp + 0x250]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xd8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x258], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x14000595e
mov rdx, qword [rsp + 0x258]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xb8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x260], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005990
mov rdx, qword [rsp + 0x260]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xc0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x268], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400059c2
mov rdx, qword [rsp + 0x268]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xd0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x270], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400059f4
mov rdx, qword [rsp + 0x270]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x88]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x278], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005a26
mov rdx, qword [rsp + 0x278]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x280], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005a55
mov rdx, qword [rsp + 0x280]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x288], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005a84
mov rdx, qword [rsp + 0x288]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x290], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005ab3
mov rdx, qword [rsp + 0x290]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r12]
sub rcx, 0x18
mov qword [rsp + 0x298], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005ae1
mov rdx, qword [rsp + 0x298]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r13]
sub rcx, 0x18
mov qword [rsp + 0x2a0], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005b0f
mov rdx, qword [rsp + 0x2a0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rax, qword [rdi]
sub rax, 0x18
mov qword [rsp + 0x2a8], rax
lock xadd dword [rax + 0x10], ebx
sub ebx, 1
jg 0x140005b39
mov rdx, qword [rsp + 0x2a8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov al, 1
jmp 0x140006876
lea rax, [rsp + 0x124]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x18980]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x80]
xor r8d, r8d
mov rdx, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xb0]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov esi, eax
mov dword [rsp + 0x198], eax
test eax, eax
jne 0x14000647f
lea rcx, [rsp + 0x18980]
mov rax, rbx
nop word [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x140005ba0
mov dword [rsp + 0x19c], eax
mov r8d, eax
lea rdx, [rsp + 0x18980]
lea rcx, [rsp + 0x68]
call fcn.14000d350
lea rcx, [rsp + 0x68]
call fcn.14000c0e0
mov qword [rsp + 0x4c8], rax
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
mov qword [rsp + 0x4d0], rcx
mov rdi, qword [rsp + 0x68]
add rdi, 0xffffffffffffffe8
mov qword [rsp + 0x2b0], rdi
cmp rcx, rdi
je 0x140005c6e
cmp dword [rdi + 0x10], 0
jl 0x140005c50
mov rax, qword [rdi]
cmp qword [rcx], rax
jne 0x140005c50
call fcn.14000d260
mov qword [rsp + 0x2b8], rax
mov eax, ebx
lock xadd dword [rdi + 0x10], eax
sub eax, 1
jg 0x140005c35
mov rdx, qword [rsp + 0x2b0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rax, qword [rsp + 0x2b8]
add rax, 0x18
mov qword [rsp + 0x68], rax
mov r15d, dword [rsp + 0xa4]
jmp 0x140005c6e
mov r8d, dword [rdx - 0x10]
mov dword [rsp + 0x1a0], r8d
mov qword [rsp + 0x4d8], rdx
lea rcx, [rsp + 0x68]
call fcn.14000d350
lea rdx, [0x140098d49]
mov rsi, qword [rsp + 0x90]
mov rcx, rsi
call fcn.14000b940
test al, al
jne 0x140005d5c
mov rdx, qword [rsi]
cmp byte [rsp + 0x289e8], al
je 0x140005ce8
mov qword [rsp + 0x4e0], rdx
test rdx, rdx
je 0x1400068f2
mov rax, qword [rsp + 0x68]
sub rdx, rax
movzx ecx, word [rax]
cmp cx, word [rax + rdx]
jne 0x140005cd5
add rax, 2
test cx, cx
jne 0x140005cb2
mov eax, r14d
mov dword [rsp + 0x1a4], eax
test eax, eax
sete al
jmp 0x140005d50
sbb eax, eax
or eax, 1
mov dword [rsp + 0x1a4], eax
test eax, eax
sete al
jmp 0x140005d50
mov qword [rsp + 0x4e8], rdx
test rdx, rdx
jne 0x140005d00
mov eax, ebx
mov dword [rsp + 0xa0], ebx
jmp 0x140005d4b
mov rcx, qword [rsp + 0x68]
mov eax, dword [rcx - 0x10]
mov dword [rsp + 0x1a8], eax
test eax, eax
jns 0x140005d1e
mov eax, ebx
mov dword [rsp + 0xa0], ebx
jmp 0x140005d4b
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov qword [rsp + 0x4f0], rax
test rax, rax
jne 0x140005d3c
mov eax, ebx
mov dword [rsp + 0xa0], ebx
jmp 0x140005d4b
sub rax, qword [rsp + 0x68]
sar rax, 1
mov dword [rsp + 0xa0], eax
shr eax, 0x1f
xor al, 1
mov byte [rsp + 0x63], al
test al, al
je 0x140006532
lea rdx, [0x140098d49]
mov rcx, r13
call fcn.14000b940
test al, al
je 0x140005fb9
mov rcx, qword [rsp + 0xe8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2c0], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005da5
mov rdx, qword [rsp + 0x2c0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xd8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2c8], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005dd7
mov rdx, qword [rsp + 0x2c8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xb8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2d0], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005e09
mov rdx, qword [rsp + 0x2d0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xc0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2d8], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005e3b
mov rdx, qword [rsp + 0x2d8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xd0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2e0], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005e6d
mov rdx, qword [rsp + 0x2e0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x88]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2e8], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005e9f
mov rdx, qword [rsp + 0x2e8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2f0], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005ece
mov rdx, qword [rsp + 0x2f0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x2f8], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005efd
mov rdx, qword [rsp + 0x2f8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x300], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005f2c
mov rdx, qword [rsp + 0x300]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r12]
sub rcx, 0x18
mov qword [rsp + 0x308], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005f5a
mov rdx, qword [rsp + 0x308]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r13]
sub rcx, 0x18
mov qword [rsp + 0x310], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140005f88
mov rdx, qword [rsp + 0x310]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rax, qword [rsi]
sub rax, 0x18
mov qword [rsp + 0x318], rax
lock xadd dword [rax + 0x10], ebx
sub ebx, 1
jg 0x140005fb2
mov rdx, qword [rsp + 0x318]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov al, 1
jmp 0x140006876
lea rax, [rsp + 0x104]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x20980]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x80]
xor r8d, r8d
mov rdx, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0xb0]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov esi, eax
mov dword [rsp + 0x1ac], eax
test eax, eax
jne 0x1400063fc
lea rcx, [rsp + 0x20980]
mov rax, rbx
inc rax
cmp word [rcx + rax*2], 0
jne 0x140006010
mov dword [rsp + 0x1b0], eax
mov r8d, eax
lea rdx, [rsp + 0x20980]
lea rcx, [rsp + 0x78]
call fcn.14000d350
lea rcx, [rsp + 0x78]
call fcn.14000c0e0
mov qword [rsp + 0x4f8], rax
mov rdx, qword [rax]
lea r8, [rdx - 0x18]
mov qword [rsp + 0x500], r8
mov rcx, qword [rsp + 0x78]
lea rdi, [rcx - 0x18]
mov qword [rsp + 0x320], rdi
cmp r8, rdi
je 0x1400060de
cmp dword [rdi + 0x10], 0
jl 0x1400060bb
mov rax, qword [rdi]
cmp qword [r8], rax
jne 0x1400060bb
mov rcx, r8
call fcn.14000d260
mov qword [rsp + 0x328], rax
mov eax, ebx
lock xadd dword [rdi + 0x10], eax
sub eax, 1
jg 0x1400060a8
mov rdx, qword [rsp + 0x320]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rsp + 0x328]
add rcx, 0x18
mov qword [rsp + 0x78], rcx
jmp 0x1400060de
mov r8d, dword [rdx - 0x10]
mov dword [rsp + 0x1b4], r8d
mov qword [rsp + 0x508], rdx
lea rcx, [rsp + 0x78]
call fcn.14000d350
mov rcx, qword [rsp + 0x78]
cmp byte [rsp + 0x64], 0
je 0x140006140
mov rax, qword [r13]
mov qword [rsp + 0x510], rax
test rax, rax
je 0x1400068fc
sub rax, rcx
nop dword [rax]
movzx edx, word [rcx]
cmp dx, word [rcx + rax]
jne 0x140006127
add rcx, 2
test dx, dx
jne 0x140006100
mov dword [rsp + 0x1b8], r14d
test r14d, r14d
sete byte [rsp + 0x60]
jmp 0x1400061ab
sbb r14d, r14d
or r14d, 1
mov dword [rsp + 0x1b8], r14d
test r14d, r14d
sete byte [rsp + 0x60]
jmp 0x1400061ab
mov rdx, qword [r13]
mov qword [rsp + 0x518], rdx
test rdx, rdx
jne 0x14000615c
mov eax, ebx
mov dword [rsp + 0x98], ebx
jmp 0x1400061a2
mov eax, dword [rcx - 0x10]
mov dword [rsp + 0x1bc], eax
test eax, eax
jns 0x140006175
mov eax, ebx
mov dword [rsp + 0x98], ebx
jmp 0x1400061a2
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov qword [rsp + 0x520], rax
test rax, rax
jne 0x140006193
mov eax, ebx
mov dword [rsp + 0x98], ebx
jmp 0x1400061a2
sub rax, qword [rsp + 0x78]
sar rax, 1
mov dword [rsp + 0x98], eax
shr eax, 0x1f
xor al, 1
mov byte [rsp + 0x60], al
mov rcx, qword [rsp + 0xe8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x330], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400061dd
mov rdx, qword [rsp + 0x330]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xd8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x338], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x14000620f
mov rdx, qword [rsp + 0x338]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xb8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x340], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140006241
mov rdx, qword [rsp + 0x340]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xc0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x348], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140006273
mov rdx, qword [rsp + 0x348]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xd0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x350], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400062a5
mov rdx, qword [rsp + 0x350]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x88]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x358], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400062d7
mov rdx, qword [rsp + 0x358]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x360], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140006306
mov rdx, qword [rsp + 0x360]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x368], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140006335
mov rdx, qword [rsp + 0x368]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x370], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140006364
mov rdx, qword [rsp + 0x370]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r12]
sub rcx, 0x18
mov qword [rsp + 0x378], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140006392
mov rdx, qword [rsp + 0x378]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r13]
sub rcx, 0x18
mov qword [rsp + 0x380], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400063c0
mov rdx, qword [rsp + 0x380]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdi, qword [rsp + 0x90]
mov rax, qword [rdi]
sub rax, 0x18
mov qword [rsp + 0x388], rax
lock xadd dword [rax + 0x10], ebx
sub ebx, 1
jg 0x1400063f2
mov rdx, qword [rsp + 0x388]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
movzx eax, byte [rsp + 0x60]
jmp 0x140006876
lea rax, [rsp + 0x390]
mov qword [rsp + 0x528], rax
lea rax, [rsp + 0x398]
mov qword [rsp + 0x530], rax
lea rdx, [0x140098d49]
lea rcx, [rsp + 0x390]
call fcn.14000c8e0
mov rdi, rax
lea rdx, str.Error_in_Version_key
lea rcx, [rsp + 0x398]
call fcn.14000c8e0
nop
mov r8d, esi
mov rdx, rdi
mov rcx, rax
call fcn.14005c860
mov rcx, qword [rsp + 0xb0]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rsi, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xb0]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x1400065a2
lea rax, [rsp + 0x3a0]
mov qword [rsp + 0x538], rax
lea rax, [rsp + 0x3a8]
mov qword [rsp + 0x540], rax
lea rdx, [0x140098d49]
lea rcx, [rsp + 0x3a0]
call fcn.14000c8e0
mov rdi, rax
lea rdx, str.Error_in_Publisher_Name_key
lea rcx, [rsp + 0x3a8]
call fcn.14000c8e0
nop
mov r8d, esi
jmp 0x14000651f
lea rax, [rsp + 0x3b0]
mov qword [rsp + 0x548], rax
lea rax, [rsp + 0x3b8]
mov qword [rsp + 0x550], rax
lea rdx, [0x140098d49]
lea rcx, [rsp + 0x3b0]
call fcn.14000c8e0
mov rdi, rax
lea rdx, str.Error_in_Display_Name_key
lea rcx, [rsp + 0x3b8]
call fcn.14000c8e0
nop
xor r8d, r8d
mov rdx, rdi
mov rcx, rax
call fcn.14005c860
mov rsi, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xb0]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x1400065a2
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rax, [rsp + 0x3c0]
mov qword [rsp + 0x558], rax
lea rax, [rsp + 0x3c8]
mov qword [rsp + 0x560], rax
lea rdx, [0x140099090]
lea rcx, [rsp + 0x3c0]
call fcn.14000c8e0
mov rdi, rax
lea rdx, str.utils_checkIfApplicationInstalled_enable_to_open_Registry_file
lea rcx, [rsp + 0x3c8]
call fcn.14000c8e0
nop
mov r8d, ebx
mov rdx, rdi
mov rcx, rax
call fcn.14005c860
inc r15d
mov dword [rsp + 0xa4], r15d
mov eax, dword [rsp + 0xa8]
jmp 0x1400054e0
mov rbx, 0xffffffffffffffff
mov rcx, qword [rsp + 0xe8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3d0], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400065f2
mov rdx, qword [rsp + 0x3d0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xd8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3d8], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140006624
mov rdx, qword [rsp + 0x3d8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xb8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3e0], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140006656
mov rdx, qword [rsp + 0x3e0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xc0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3e8], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140006688
mov rdx, qword [rsp + 0x3e8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0xd0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3f0], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400066ba
mov rdx, qword [rsp + 0x3f0]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x88]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x3f8], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400066ec
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x78]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x400], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x14000671b
mov rdx, qword [rsp + 0x400]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x68]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x408], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x14000674a
mov rdx, qword [rsp + 0x408]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x70]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x410], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140006779
mov rdx, qword [rsp + 0x410]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r12]
sub rcx, 0x18
mov qword [rsp + 0x418], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400067a7
mov rdx, qword [rsp + 0x418]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [r13]
sub rcx, 0x18
mov qword [rsp + 0x420], rcx
mov eax, ebx
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400067d5
mov rdx, qword [rsp + 0x420]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rax, qword [rsi]
sub rax, 0x18
mov qword [rsp + 0x428], rax
lock xadd dword [rax + 0x10], ebx
sub ebx, 1
jg 0x1400067ff
mov rdx, qword [rsp + 0x428]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
xor al, al
jmp 0x140006876
mov rcx, qword [rsp + 0x28980]
xor rcx, rsp
call fcn.1400693e0
lea r11, [rsp + 0x28990]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov ecx, 0x80070057
call fcn.14000df80
mov ecx, 0x80070057
call fcn.14000df80
mov ecx, 0x80070057
call fcn.14000df80
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], 0x22
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo]
mov ecx, 0x80070057
call fcn.14000df80
mov ecx, 0x80070057
call fcn.14000df80
nop
mov ecx, 0x80004005
call fcn.14000df80
mov ecx, 0x80004005
call fcn.14000df80
mov ecx, 0x80004005
call fcn.14000df80
int3