Function at 0x14003ab67
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x248
cmp byte [rdx + 0x23], 0
mov rsi, r8
mov r13, rdx
jne 0x14003ab98
mov r13, qword [rdx + 0x10]
xor edx, edx
lea rcx, [rsp + 0x40]
mov r8d, 0x1fc
call fcn.1400b970f
mov rbp, qword [rsp + 0x290]
lea r12, [0x14018e2b0]
mov r14, qword [rsp + 0x290]
lea r9, [0x140000000]
xor ebx, ebx
mov edi, ebx
mov dword [rsp + 0x2a8], ebx
lea r10d, [rbx + 0xd]
lea r11d, [rbx + 7]
mov r15d, 0xffffffff
test edi, edi
je 0x14003acda
xor r9d, r9d
mov byte [rsp + 0x20], 1
mov r8, rbp
xor edx, edx
mov rcx, r13
call fcn.14009b349
cmp eax, 1
jne 0x14003b057
cmp byte [r13 + 0x23], 0
jne 0x14003ac1b
mov rbx, qword [r13 + 0x10]
jmp 0x14003ac1e
mov rbx, r13
test byte [rbx + 0x21], 8
je 0x14003ac30
mov rcx, rbx
call fcn.14000134c
movzx eax, byte [rbx + 0x23]
cmp al, 1
jne 0x14003ac57
test byte [rbx + 0x21], 4
je 0x14003ac4e
mov rdx, rbx
call fcn.14003cf59
mov r14, qword [rbx + 8]
jmp 0x14003acc4
cmp al, 2
jne 0x14003acc1
mov r14, qword [0x14018ef98]
test r14, r14
jne 0x14003acc4
lea ecx, [r14 + 0xd]
call qword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test eax, eax
jne 0x14003aca3
lea ecx, [rax + 0xf]
call qword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test eax, eax
lea r14, [0x14010d0d8]
lea rax, [0x1400f0f40]
cmovne r14, rax
jmp 0x14003acc4
xor edx, edx
call fcn.1400050db
cmp rax, r15
lea r14, [0x14010d0d8]
cmovne r14, qword [0x14018ef90]
jmp 0x14003acc4
mov r14, r12
xor ebx, ebx
lea r9, [0x140000000]
lea r10d, [rbx + 0xd]
lea r11d, [rbx + 7]
jmp 0x14003acdd
mov rbp, rbx
mov rdx, rsi
movsxd r15, edi
nop dword [rax]
movzx eax, word [rdx]
test ax, ax
je 0x14003ad3e
nop dword [rax + rax]
cmp ax, word [0x1401873cc]
je 0x14003ad64
cmp ax, word [0x1401873d0]
je 0x14003ad64
test r15, r15
je 0x14003ad2a
mov word [r14], ax
add r14, 2
jmp 0x14003ad2d
inc rbp
movzx eax, word [rdx + 2]
add rdx, 2
test ax, ax
jne 0x14003acfa
mov edi, dword [rsp + 0x2a8]
inc edi
mov dword [rsp + 0x2a8], edi
cmp edi, 2
jge 0x14003b05e
mov rsi, qword [rsp + 0x2a0]
jmp 0x14003abdb
movzx eax, word [rdx]
test ax, ax
je 0x14003ad3e
cmp ax, word [0x1401873cc]
jne 0x14003ae54
test r15, r15
je 0x14003ae48
movzx r8d, word [rdx + 2]
lea eax, [r8 - 0x61]
cmp eax, 0x15
ja case.0x14003ada5.99
cdqe
mov ecx, dword [r9 + rax*4 + 0x3b1d6]
add rcx, r9
jmp rcx
mov word [r14], r11w
add r14, 2
add rdx, 2
jmp 0x14003b03d
mov eax, 8
mov word [r14], ax
add r14, 2
add rdx, 2
jmp 0x14003b03d
mov eax, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov word [r14], ax
add r14, 2
add rdx, 2
jmp 0x14003b03d
mov eax, 0xa
mov word [r14], ax
add r14, 2
add rdx, 2
jmp 0x14003b03d
mov word [r14], r10w
add r14, 2
add rdx, 2
jmp 0x14003b03d
mov eax, 9
mov word [r14], ax
add r14, 2
add rdx, 2
jmp 0x14003b03d
mov eax, reloc.OLEAUT32.dll_VariantChangeType
mov word [r14], ax
add r14, 2
add rdx, 2
jmp 0x14003b03d
mov word [r14], r8w
add r14, 2
add rdx, 2
jmp 0x14003b03d
inc rbp
add rdx, 2
jmp 0x14003b03d
movzx eax, word [rdx + 2]
lea rsi, [rdx + 2]
test ax, ax
je 0x14003b03d
cmp ax, word [0x1401873d0]
je 0x14003ae88
movzx eax, word [rsi + 2]
add rsi, 2
test ax, ax
jne 0x14003ae65
jmp 0x14003b03d
cmp word [rsi], 0
je 0x14003b03d
mov rdi, rsi
sub rdi, rdx
sar rdi, 1
dec rdi
lea rax, [rdi - 1]
cmp rax, 0xfc
ja 0x14003b03a
mov r8, rdi
lea rcx, [rsp + 0x40]
add rdx, 2
call fcn.1400c4f15
mov word [rsp + rdi*2 + 0x40], bx
cmp word [rsp + 0x40], 0
je 0x14003b057
lea rax, [rsp + 0x290]
mov r8, rdi
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x30]
lea rdx, [rsp + 0x40]
mov dword [rsp + 0x20], 3
lea rcx, [0x14018e350]
call fcn.14002a42c
mov rbx, rax
test rax, rax
jne 0x14003af36
cmp byte [rsp + 0x290], al
lea rdx, [rsp + 0x40]
mov r9d, dword [rsp + 0x30]
lea rcx, [0x14018e350]
setne al
mov r8, rdi
inc eax
mov dword [rsp + 0x20], eax
call fcn.14002a77a
mov rbx, rax
test rbx, rbx
je 0x14003b057
cmp byte [rbx + 0x23], 0
jne 0x14003af4d
mov rbx, qword [rbx + 0x10]
cmp rbx, r13
je 0x14003b03a
test r15, r15
je 0x14003af73
mov rdx, r14
mov rcx, rbx
call fcn.14009b859
lea r14, [r14 + rax*2]
jmp 0x14003b03a
movzx ecx, byte [rbx + 0x23]
test ecx, ecx
je 0x14003b02c
sub ecx, 1
je 0x14003afc5
sub ecx, 1
je 0x14003afa8
cmp ecx, 1
je 0x14003b019
mov rdx, qword [rbx + 0x28]
xor ecx, ecx
call qword [rbx + reloc.OLEAUT32.dll_SafeArrayGetElement]
jmp 0x14003b037
xor edx, edx
call fcn.1400050db
mov ecx, 0xffffffff
cmp rax, rcx
mov ecx, 0
cmove rax, rcx
jmp 0x14003b037
mov rcx, rbx
call fcn.14000134c
cmp dword [0x14018ac4c], 0
jne 0x14003b020
cmp qword [rbx + 0x10], 0
jne 0x14003b020
mov rcx, qword [rbx + 0x28]
lea rdx, [rsp + 0x298]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
je 0x14003b012
xor ecx, ecx
mov qword [0x140190930], rcx
dec eax
jmp 0x14003b037
mov qword [0x140190930], rbx
xor eax, eax
jmp 0x14003b037
mov rax, qword [rbx + 0x10]
shr rax, 1
jmp 0x14003b037
mov rcx, qword [rbx + 0x10]
xor edx, edx
call fcn.14009b859
add rbp, rax
mov rdx, rsi
add rdx, 2
lea r9, [0x140000000]
xor ebx, ebx
lea r10d, [rbx + 0xd]
lea r11d, [rbx + 7]
jmp 0x14003ace6
xor eax, eax
jmp 0x14003b1bf
mov word [r14], bx
cmp byte [r13 + 0x23], 0
jne 0x14003b076
mov rbx, qword [r13 + 0x10]
jmp 0x14003b079
mov rbx, r13
test byte [rbx + 0x21], 8
je 0x14003b08b
mov rcx, rbx
call fcn.14000134c
movzx eax, byte [rbx + 0x23]
cmp al, 1
jne 0x14003b0b2
test byte [rbx + 0x21], 4
je 0x14003b0a9
mov rdx, rbx
call fcn.14003cf59
mov r12, qword [rbx + 8]
jmp 0x14003b11d
cmp al, 2
jne 0x14003b11d
mov r12, qword [0x14018ef98]
test r12, r12
jne 0x14003b11d
lea ecx, [r12 + 0xd]
call qword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test eax, eax
jne 0x14003b0ff
lea ecx, [rax + 0xf]
call qword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test eax, eax
lea r12, [0x14010d0d8]
lea rax, [0x1400f0f40]
cmovne r12, rax
jmp 0x14003b11d
xor edx, edx
call fcn.1400050db
mov ecx, 0xffffffff
lea r12, [0x14010d0d8]
cmp rax, rcx
cmovne r12, qword [0x14018ef90]
or rbx, 0xffffffffffffffff
cmp word [r12 + rbx*2 + 2], 0
lea rbx, [rbx + 1]
jne 0x14003b121
cmp byte [r13 + 0x23], 0
jne 0x14003b146
mov rdi, qword [r13 + 0x10]
jmp 0x14003b149
mov rdi, r13
cmp byte [rdi + 0x23], 1
jne 0x14003b16e
test byte [rdi + 0x21], 8
je 0x14003b165
mov rcx, rdi
call fcn.14000134c
add rdi, 0x10
jmp 0x14003b175
lea rdi, [0x14018fbd8]
lea rax, [rbx + rbx]
mov qword [rdi], rax
cmp byte [r13 + 0x23], 0
jne 0x14003b18b
mov r13, qword [r13 + 0x10]
cmp byte [r13 + 0x23], 2
jne 0x14003b1b5
cmp qword [0x14018ef98], 0
je 0x14003b1b5
lea rcx, [0x14018ef80]
call fcn.14000552d
jmp 0x14003b1bf
and byte [r13 + 0x21], 0x86
mov eax, 1
add rsp, 0x248
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret