Function at 0x140012750
Capabilities:
Check if file exists
Query or enumerate registry value

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x480
mov qword [rsp + 0xe8], 0xfffffffffffffffe
mov rax, qword [0x1400da318]
xor rax, rsp
mov qword [rsp + 0x470], rax
mov qword [rsp + 0xd8], r8
mov rbx, rdx
mov r12, rcx
mov qword [rsp + 0x50], rcx
mov r14, qword [rdx + 0xb0]
xor edi, edi
mov esi, edi
mov qword [rsp + 0xc8], rdi
lea rax, [rsp + 0x34]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x1400a4b88]
mov rcx, r14
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
mov r15d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x140035866
mov eax, dword [rsp + 0x34]
test eax, eax
je 0x14003587c
shr eax, 1
lea ecx, [rax + 1]
mov eax, 2
mul rcx
mov r13, 0xffffffffffffffff
cmovo rax, r13
mov rcx, rax
mov rax, qword [0x14009d340]
call qword [case.0x140024095.0]
mov rdi, rax
test rax, rax
je 0x140035887
lea rax, [rsp + 0x34]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x1400a4b88]
mov rcx, r14
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
mov r15d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x140035892
mov eax, dword [rsp + 0x34]
shr rax, 1
xor r14d, r14d
mov word [rdi + rax*2], r14w
mov rsi, rdi
mov qword [rsp + 0xc8], rdi
xor edi, edi
mov dword [rsp + 0x30], edi
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
mov dword [rsp + 0xac], 4
mov rcx, qword [rbx + 0xb0]
test rcx, rcx
je 0x1400358cc
lea rax, [rsp + 0xac]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xb0]
xor r8d, r8d
lea rdx, str.Include
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
test eax, eax
jne 0x140035da6
cmp dword [rsp + 0xb0], 4
jne 0x140035da6
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
mov dword [rsp + 0xb4], 4
mov rcx, qword [rbx + 0xb0]
test rcx, rcx
je 0x1400358d6
lea rax, [rsp + 0xb4]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x9c]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xb8]
xor r8d, r8d
lea rdx, str.Suppress
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
test eax, eax
jne 0x140035d7f
cmp dword [rsp + 0xb8], 4
jne 0x140035d7f
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
mov dword [rsp + 0xbc], 4
mov rcx, qword [rbx + 0xb0]
test rcx, rcx
je 0x1400358e0
lea rax, [rsp + 0xbc]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x98]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xc0]
xor r8d, r8d
lea rdx, str.Default
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
test eax, eax
jne 0x140035d7f
cmp dword [rsp + 0xc0], 4
jne 0x140035d7f
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
mov dword [rsp + 0x80], 4
mov rcx, qword [rbx + 0xb0]
test rcx, rcx
je 0x1400358ea
lea rax, [rsp + 0x80]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x88]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x84]
xor r8d, r8d
lea rdx, str.Policy
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
test eax, eax
jne 0x1400358f1
cmp dword [rsp + 0x84], 4
jne 0x1400358f1
mov edi, dword [rsp + 0x88]
mov dword [rsp + 0x58], edi
xor edi, edi
mov dword [rsp + 0x5c], edi
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
nop dword [rax + rax]
mov dword [rsp + 0x8c], 4
mov rcx, qword [rbx + 0xb0]
test rcx, rcx
je 0x140035919
lea rax, [rsp + 0x8c]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x94]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x90]
xor r8d, r8d
lea rdx, str.NoContent
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryValueExW]
nop dword [rax + rax]
test eax, eax
jne 0x140035920
cmp dword [rsp + 0x90], 4
jne 0x140035920
mov eax, dword [rsp + 0x94]
mov dword [rsp + 0x5c], eax
mov rax, qword [0x1400db5d0]
lea rcx, [0x1400db5d0]
mov rax, qword [rax + 0x18]
call qword [case.0x140024095.0]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x40], rbx
test rsi, rsi
je 0x1400359a2
cmp rsi, 0x10000
jb 0x140035955
mov rdi, r13
inc rdi
cmp word [rsi + rdi*2], 0
jne 0x140012b24
test edi, edi
je 0x1400359a2
mov r12d, dword [rbx - 0x10]
mov r14, rsi
sub r14, rbx
sar r14, 1
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, edi
or eax, ecx
jge 0x140012b65
mov edx, edi
lea rcx, [rsp + 0x40]
call fcn.1400137c0
mov rbx, qword [rsp + 0x40]
movsxd rax, edi
lea r15, [rax + rax]
mov r9, r15
mov rdx, r15
mov rcx, rbx
cmp r14, r12
jbe 0x140035982
mov r8, rsi
call qword [sym.imp.msvcrt.dll_memcpy_s]
nop dword [rax + rax]
test edi, edi
js 0x140035998
cmp edi, dword [rbx - 0xc]
jg 0x140035998
mov dword [rbx - 0x10], edi
xor r14d, r14d
mov word [r15 + rbx], r14w
mov r12, qword [rsp + 0x50]
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x9c]
mov dword [rsp + 0xa8], eax
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0xa4], eax
lea r15, [r12 + 8]
lea rdi, [rbx - 0x18]
mov r14, qword [r15]
sub r14, 0x18
cmp rdi, r14
je 0x140012c46
cmp dword [r14 + 0x10], 0
jl 0x140035a61
mov rcx, qword [rdi]
cmp rcx, qword [r14]
jne 0x140035a61
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x140024095.0]
mov rcx, rax
cmp dword [rdi + 0x10], 0
jl 0x1400359f2
cmp rax, qword [rdi]
jne 0x1400359f2
lock inc dword [rdi + 0x10]
mov eax, r13d
lock xadd dword [r14 + 0x10], eax
sub eax, 1
jle 0x140035a48
lea rax, [rdi + 0x18]
mov qword [r15], rax
mov rbx, qword [rsp + 0x40]
xor r12d, r12d
mov dword [rsp + 0xf8], r12d
lea rax, [rsp + 0x120]
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], 0xc1
mov word [rsp + 0x120], r12w
lea rax, [0x14009a770]
mov qword [rsp + 0x108], rax
lea rax, [0x14009a730]
mov qword [rsp + 0xf0], rax
mov rcx, qword [0x1400dae50]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140024095.0]
nop
mov rax, qword [rsp + 0x108]
mov r9d, 0xffffffff
xor r8d, r8d
mov rdx, rbx
lea rcx, [rsp + 0x108]
mov rax, qword [rax + 0x20]
call qword [case.0x140024095.0]
mov r14d, r12d
mov dword [rsp + 0x60], r12d
mov edi, dword [rsp + 0x11c]
mov dword [rsp + 0x64], edi
lea r15, [rsp + 0x108]
mov qword [rsp + 0x68], r15
test edi, edi
je 0x140012d38
mov ecx, r14d
mov rax, qword [r15 + 8]
movzx ecx, word [rax + rcx*2]
call qword [sym.imp.msvcrt.dll_iswspace]
nop dword [rax + rax]
test eax, eax
jne 0x140035a76
test edi, edi
je 0x140012d38
lea ecx, [rdi - 1]
add ecx, r14d
mov rax, qword [r15 + 8]
movzx ecx, word [rax + rcx*2]
call qword [sym.imp.msvcrt.dll_iswspace]
nop dword [rax + rax]
test eax, eax
jne 0x140035a98
cmp edi, dword [rsp + 0x11c]
jne 0x140035ac9
mov qword [rsp + 0x2aa], 0
mov qword [rsp + 0x2b2], 0
mov dword [rsp + 0x2ba], 0
mov dword [rsp + 0x2c0], 0
mov eax, 0x7f
mov word [rsp + 0x2be], ax
lea rcx, [rsp + 0xf0]
call fcn.1400138f0
test byte [rsp + 0x2be], 2
je 0x140035b1b
lea rcx, [rsp + 0xf0]
call fcn.1400138f0
movzx edi, word [rsp + 0x2ac]
movzx r8d, word [rsp + 0x2aa]
lea rdx, [r8 + rdi]
cmp rdx, r8
jb 0x14001319f
mov eax, dword [rsp + 0x11c]
cmp rdx, rax
ja 0x140035bc1
mov dword [rsp + 0x70], r8d
mov dword [rsp + 0x74], edi
lea rax, [rsp + 0x108]
mov qword [rsp + 0x78], rax
mov r12, qword [rsp + 0x78]
mov r15, qword [r12 + 8]
mov eax, dword [rsp + 0x70]
add rax, rax
mov qword [rsp + 0xd0], rax
add r15, rax
mov r14d, edi
cmp edi, 1
mov eax, 1
cmova r14d, eax
mov dword [rsp + 0x28], r14d
lea rcx, [0x1400a4b90]
mov qword [rsp + 0x20], rcx
mov r9d, edi
mov r8, r15
mov edx, eax
mov ecx, 0x800
call qword [sym.imp.api_ms_win_core_string_l1_1_0.dll_CompareStringW]
nop dword [rax + rax]
mov r8d, eax
cmp eax, 2
jne 0x140013186
movsxd rax, edi
cmp rax, 1
jae 0x140012e5e
test edi, edi
jne 0x1400130fb
lea rdx, str.LocalHost
mov rdi, r13
nop dword [rax + rax]
inc rdi
cmp word [rdx + rdi*2], 0
jne 0x140012e70
mov r15, qword [rsp + 0x50]
mov rax, qword [r15 + 0x10]
test edi, edi
je 0x140035c20
mov r12d, dword [rax - 0x10]
mov r14, rdx
sub r14, rax
sar r14, 1
mov ecx, 1
sub ecx, dword [rax - 8]
mov eax, dword [rax - 0xc]
sub eax, edi
or eax, ecx
jge 0x140012ebb
mov edx, edi
lea rcx, [r15 + 0x10]
call fcn.1400137c0
lea rdx, str.LocalHost
mov rcx, qword [r15 + 0x10]
movsxd rax, edi
lea r15, [rax + rax]
mov r9, r15
cmp r14, r12
jbe 0x140035c6e
mov r8, rdx
mov rdx, r15
call qword [sym.imp.msvcrt.dll_memcpy_s]
nop dword [rax + rax]
test edi, edi
js 0x140035d62
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx + 0x10]
cmp edi, dword [rax - 0xc]
jg 0x140035d62
mov dword [rax - 0x10], edi
mov rax, qword [rcx + 0x10]
xor r14d, r14d
mov word [r15 + rax], r14w
lea rax, [0x14009a730]
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0xf8], 0xc0000001
mov rcx, qword [0x1400dae50]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140024095.0]
lea rax, [0x14009a7e0]
mov qword [rsp + 0xf0], rax
lea rax, [0x14009a770]
mov qword [rsp + 0x108], rax
mov rcx, qword [rsp + 0x110]
test rcx, rcx
je 0x140012f77
lea rax, [rsp + 0x120]
cmp rcx, rax
jne 0x140035c87
lea rax, [0x14009a7a8]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x50]
mov ecx, dword [rsp + 0xa4]
mov dword [rax + 0x18], ecx
mov ecx, dword [rsp + 0xa8]
mov dword [rax + 0x1c], ecx
mov r15d, 1
mov dword [rax + 0x20], r15d
mov ecx, dword [rsp + 0x38]
mov dword [rax + 0x24], ecx
mov qword [rax + 0x28], r15
mov ecx, dword [rsp + 0x58]
mov dword [rax + 0x30], ecx
mov ecx, dword [rsp + 0x5c]
mov dword [rax + 0x34], ecx
lea rdx, [rbx - 0x18]
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
sub eax, r15d
jle 0x140035c99
mov rax, qword [0x1400db5d0]
lea rcx, [0x1400db5d0]
mov rax, qword [rax + 0x18]
call qword [case.0x140024095.0]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x48], rbx
test rsi, rsi
je 0x140035cfc
cmp rsi, 0x10000
jb 0x140035caf
mov rdi, r13
inc rdi
cmp word [rsi + rdi*2], 0
jne 0x140013011
test edi, edi
je 0x140035cfc
mov r12d, dword [rbx - 0x10]
mov r14, rsi
sub r14, rbx
sar r14, 1
sub r15d, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, edi
or eax, r15d
jge 0x14001304f
mov edx, edi
lea rcx, [rsp + 0x48]
call fcn.1400137c0
mov rbx, qword [rsp + 0x48]
movsxd rax, edi
lea r15, [rax + rax]
mov r9, r15
mov rdx, r15
mov rcx, rbx
cmp r14, r12
jbe 0x140035cdc
mov r8, rsi
call qword [sym.imp.msvcrt.dll_memcpy_s]
nop dword [rax + rax]
test edi, edi
js 0x140035cf2
cmp edi, dword [rbx - 0xc]
jg 0x140035cf2
mov dword [rbx - 0x10], edi
xor eax, eax
mov word [r15 + rbx], ax
lea rdx, [rsp + 0x48]
mov rcx, qword [rsp + 0xd8]
call fcn.140013230
nop
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], r13d
sub r13d, 1
jle 0x140035d4c
mov r15d, dword [rsp + 0x30]
test rsi, rsi
je 0x1400130d4
mov rcx, rsi
mov rax, qword [0x14009d348]
call qword [case.0x140024095.0]
nop
mov eax, r15d
mov rcx, qword [rsp + 0x470]
xor rcx, rsp
call fcn.140029fb0
add rsp, 0x480
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
lea ecx, [rdi + 1]
mov eax, 2
mul rcx
cmovo rax, r13
mov rcx, rax
mov rax, qword [0x14009d340]
call qword [case.0x140024095.0]
mov r14, rax
test rax, rax
je 0x140035c0d
mov eax, edi
lea rdi, [rax + rax]
mov rdx, qword [rsp + 0xd0]
add rdx, qword [r12 + 8]
mov r8, rdi
mov rcx, r14
call sub.msvcrt.dll_memcpy
xor eax, eax
mov word [rdi + r14], ax
mov rax, r13
nop
inc rax
cmp word [r14 + rax*2], 0
jne 0x140013150
mov r8d, eax
mov rdx, r14
mov rcx, qword [rsp + 0x50]
add rcx, 0x10
call fcn.14000fe3c
nop
mov rcx, r14
mov rax, qword [0x14009d348]
call qword [case.0x140024095.0]
nop
jmp 0x140012f0d
sub r8d, 1
je 0x140012e56
cmp r8d, 2
je 0x140012e56
jmp 0x140035be0
call fcn.14004b100
nop
int3
mov r13, 0xffffffffffffffff
jle 0x1400358be
movzx r15d, ax
or r15d, 0x80070000
jmp 0x1400358b9
mov r15d, 0x8000ffff
jmp 0x1400130d4
mov r15d, 0x8007000e
jmp 0x1400130d4
mov rcx, rdi
mov rax, qword [0x14009d348]
call qword [case.0x140024095.0]
nop
test r15d, r15d
jg 0x1400358ac
xor edi, edi
jmp 0x1400358be
movzx r15d, r15w
or r15d, 0x80070000
xor edi, edi
mov dword [rsp + 0x30], r15d
test r15d, r15d
js 0x1400130d4
jmp 0x14001287b
mov ecx, 6
jmp 0x140035da8
mov ecx, 6
jmp 0x140035d81
mov ecx, 6
jmp 0x140035d81
mov ecx, 6
jmp 0x1400358f3
mov ecx, eax
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]
cmp eax, 2
jne 0x140035945
mov dword [rsp + 0x58], edi
jmp 0x140012a64
mov ecx, 6
jmp 0x140035922
mov ecx, eax
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]
test eax, 0xfffffffd
je 0x140012aea
test eax, eax
jg 0x140035dcb
mov r15d, eax
jmp 0x1400130be
movzx edi, si
mov ecx, edi
call fcn.14004f15c
test rax, rax
je 0x140012bae
mov r8d, edi
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.1400512a8
mov rbx, qword [rsp + 0x40]
jmp 0x140012bae
lea r8, [rbx + r14*2]
call qword [sym.imp.msvcrt.dll_memmove_s]
nop dword [rax + rax]
nop
jmp 0x140012b8d
mov ecx, 0x80070057
call fcn.14004489c
lea rcx, [rbx - 0x18]
mov rdi, qword [rcx]
cmp dword [rcx + 8], 0
je 0x140012bae
mov eax, dword [rcx + 0x10]
shr eax, 0x1f
test al, al
je 0x1400359cf
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140018c68
nop
jmp 0x140012bae
call fcn.140010ed0
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 0x18]
call qword [case.0x140024095.0]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x40], rbx
jmp 0x140012bae
lea r12, [rdi + 8]
mov rax, qword [rax]
mov r8d, 2
mov edx, dword [r12]
mov rax, qword [rax]
call qword [case.0x140024095.0]
mov rdi, rax
test rax, rax
jne 0x140035a19
call fcn.140053d9c
mov eax, dword [r12]
mov dword [rdi + 8], eax
mov eax, dword [r12]
inc eax
movsxd rdx, eax
add rdx, rdx
lea rcx, [rdi + 0x18]
mov r9, rdx
mov r8, rbx
call qword [sym.imp.msvcrt.dll_memcpy_s]
nop dword [rax + rax]
nop
jmp 0x140012c28
mov rcx, qword [r14]
mov rax, qword [rcx]
mov rdx, r14
mov rax, qword [rax + 8]
call qword [case.0x140024095.0]
nop
jmp 0x140012c3a
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
mov rcx, r15
call fcn.14000fe3c
nop
jmp 0x140012c46
mov edx, 1
lea rcx, [rsp + 0x60]
call fcn.140057a40
mov r15, qword [rsp + 0x68]
mov edi, dword [rsp + 0x64]
mov r14d, dword [rsp + 0x60]
jmp 0x140012cef
lea eax, [rdi - 1]
cmp eax, edi
jbe 0x140035abe
mov rcx, qword [rsp + 0x4b8]
mov r9d, 0xce
lea r8, [0x1400a7510]
mov edx, 0x3ca
call fcn.14004c2d4
mov edi, eax
mov dword [rsp + 0x64], eax
jmp 0x140012d12
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x2d0]
call fcn.14000bcd8
nop
mov rax, qword [rsp + 0x108]
mov r9d, 0xffffffff
xor r8d, r8d
mov rdx, qword [rsp + 0x2d8]
lea rcx, [rsp + 0x108]
mov rax, qword [rax + 0x20]
call qword [case.0x140024095.0]
nop
lea rcx, [rsp + 0x2d0]
call fcn.1400143f8
nop
jmp 0x140012d45
movzx ecx, word [rsp + 0x2aa]
movzx eax, word [rsp + 0x2ac]
add ecx, eax
movzx eax, word [rsp + 0x2b2]
cmp eax, ecx
jbe 0x140012d9b
lea rcx, [rsp + 0xf0]
call fcn.140013af0
cmp word [rsp + 0x2a8], 1
jne 0x140035b91
lea rcx, [rsp + 0xf0]
call fcn.1400138f0
test byte [rsp + 0x2be], 2
jne 0x140035b91
cmp dword [rsp + 0x2c4], 0x50
jne 0x140035b91
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xf0]
call fcn.1400187d8
mov edi, dword [rsp + 0x74]
jmp 0x140012dec
movzx r8d, word [rsp + 0x2aa]
movzx r9d, word [rsp + 0x2b2]
sub r9d, r8d
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x108]
call fcn.140015cf4
mov edi, dword [rsp + 0x74]
jmp 0x140012dec
mov rcx, qword [rsp + 0x4b8]
mov r9d, 0xce
lea r8, [0x1400a7510]
mov edx, 0x44c
call fcn.14004c2d4
cmp edi, r14d
cmovl r14d, edi
movsxd r8, r14d
lea rdx, [0x1400a4b90]
mov rcx, r15
call qword [sym.imp.msvcrt.dll__wcsnicmp]
nop dword [rax + rax]
test eax, eax
jne 0x140012e56
jmp 0x140012e4d
lea rcx, [rsp + 0xf0]
call fcn.1400189a4
nop
jmp 0x140012f86
lea rcx, [rax - 0x18]
mov rdi, qword [rcx]
cmp dword [rcx + 8], 0
je 0x140012f0d
mov eax, dword [rcx + 0x10]
shr eax, 0x1f
test al, al
je 0x140035c4c
xor edx, edx
lea rcx, [r15 + 0x10]
call fcn.140018c68
nop
jmp 0x140012f0d
call fcn.140010ed0
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 0x18]
call qword [case.0x140024095.0]
add rax, 0x18
mov qword [r15 + 0x10], rax
jmp 0x140012f0d
lea r8, [rcx + r14*2]
mov rdx, r15
call qword [sym.imp.msvcrt.dll_memmove_s]
nop dword [rax + rax]
nop
jmp 0x140012ee4
call qword [sym.imp.msvcrt.dll_free]
nop dword [rax + rax]
nop
jmp 0x140012f77
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140024095.0]
nop
jmp 0x140012fd7
movzx edi, si
mov ecx, edi
call fcn.14004f15c
test rax, rax
je 0x140013092
mov r8d, edi
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.1400512a8
mov rbx, qword [rsp + 0x48]
jmp 0x140013092
lea r8, [rbx + r14*2]
call qword [sym.imp.msvcrt.dll_memmove_s]
nop dword [rax + rax]
nop
jmp 0x140013077
mov ecx, 0x80070057
call fcn.14004489c
lea rcx, [rbx - 0x18]
mov rdi, qword [rcx]
cmp dword [rcx + 8], 0
je 0x140013092
mov eax, dword [rcx + 0x10]
shr eax, 0x1f
test al, al
je 0x140035d29
xor edx, edx
lea rcx, [rsp + 0x48]
call fcn.140018c68
nop
jmp 0x140013092
call fcn.140010ed0
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 0x18]
call qword [case.0x140024095.0]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x48], rbx
jmp 0x140013092
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140024095.0]
nop
jmp 0x1400130b9
mov ecx, 0x80070057
call fcn.14004489c
nop
mov rsi, qword [rsp + 0xc8]
mov r15d, dword [rsp + 0x38]
jmp 0x1400130be
mov ecx, eax
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 r15d, eax
test eax, eax
jle 0x1400130be
jmp 0x140035dcb
mov ecx, eax
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 r15d, eax
test eax, eax
jle 0x1400130be
movzx r15d, ax
or r15d, 0x80070000
jmp 0x1400130be