Function at 0x1400dc634
Capabilities:
Query environment variable
Read file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push r13
push r14
push r15
mov eax, 0x32e0
call fcn.140119910
sub rsp, rax
mov rax, qword [0x140182c48]
xor rax, rsp
mov qword [rsp + 0x32d0], rax
mov r12b, cl
xor edi, edi
test dl, dl
je 0x1400dc781
cmp word [0x14019e54e], di
je 0x1400dc68e
cmp qword [0x1401ec660], rdi
je 0x1400dc68e
mov word [0x14019e54e], di
mov r14d, 4
cmp byte [0x14018a804], dil
jne 0x1400dc7ee
cmp word [0x1401a9992], di
jne 0x1400dc7ee
mov r12b, dil
mov ebx, 0x800
mov r8d, ebx
lea rdx, [0x1401a9992]
mov ecx, dword [0x1401a4928]
call fcn.1400e2a8c
mov dword [rsp + 0x20], ebx
lea r13, [0x14013ff10]
mov r9, r13
lea r8, [rsp + 0x12d0]
lea rdx, str.DefFolder
lea rcx, [0x140140430]
call fcn.1400bcf40
cmp word [rsp + 0x12d0], di
jne 0x1400dc720
cmp byte [0x1401be45e], dil
je 0x1400dc75e
mov edx, ebx
lea rcx, [rsp + 0x12d0]
call fcn.1400525e8
cmp word [rsp + 0x12d0], di
je 0x1400dc75e
mov rdx, rbx
lea rcx, [rsp + 0x12d0]
call fcn.140094d10
mov r8, rbx
lea rdx, [0x1401a9992]
lea rcx, [rsp + 0x12d0]
call fcn.1400ac200
mov r8, rbx
lea rdx, [rsp + 0x12d0]
lea rcx, [0x1401a9992]
call fcn.1400ac228
cmp word [0x14019c548], di
setne r8b
mov r9d, dword [0x1401a4928]
mov rdx, rbx
lea rcx, [0x1401a9992]
call fcn.1400e6900
jmp 0x1400dc7fa
mov cl, 1
call fcn.1400e305c
mov dword [0x1401a25a0], 3
mov qword [0x14018b870], rdi
cmp byte [0x14018a804], dil
jne 0x1400dc7e8
xor r8d, r8d
lea rdx, [0x1401aa998]
lea rcx, [0x1401bd3f0]
call fcn.140058200
cmp byte [0x1401be45e], dil
je 0x1400dc68e
mov eax, dword [0x1401a259c]
mov r14d, 4
cmp qword [0x1401aa9c0], 1
cmova eax, r14d
mov dword [0x1401a259c], eax
jmp 0x1400dc694
mov r14d, 4
lea r13, [0x14013ff10]
mov ebx, 0x800
mov eax, dword [0x1401a259c]
mov ecx, 2
test eax, eax
cmove eax, ecx
mov dword [0x1401a259c], eax
mov qword [rsp + 0x178], rdi
mov qword [rsp + 0x188], rdi
mov qword [rsp + 0x190], rdi
mov qword [rsp + 0x188], rdi
mov qword [rsp + 0x190], 7
mov word [rsp + 0x178], di
mov qword [rsp + 0x198], rdi
cmp byte [0x14018a804], dil
je 0x1400dca00
mov r15d, dword [0x1401ba634]
cmp r15d, 1
jbe 0x1400dc8f3
cmp dword [0x1401a2564], 3
je 0x1400dc8a3
mov ecx, 0x65
call fcn.1400a617c
mov rbx, rax
mov ecx, 0x1fd
call fcn.1400a617c
mov r9d, 0x30
mov r8, rbx
mov rdx, rax
mov rcx, qword [0x14018a7d0]
call fcn.1400e9514
nop
mov rdx, qword [rsp + 0x190]
cmp rdx, 8
jb 0x1400dce9b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x178]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400dce96
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400dcee5
jmp 0x1400dce96
mov r8, rbx
lea rdx, [0x1401a9992]
lea rcx, [0x1401ba630]
call fcn.140009848
mov r8, rbx
lea rdx, [0x14019f560]
lea rcx, [0x1401ba630]
call fcn.140009ef0
cmp word [0x14019f560], di
je 0x1400dc937
mov rdx, rbx
lea rcx, [0x14019f560]
call fcn.140094d10
mov byte [0x1401a25e9], dil
lea rdx, [rsp + 0x50]
lea rcx, [0x1401ba630]
call fcn.140009f10
mov eax, dword [rsp + 0x1c8]
mov dword [0x1401a4928], eax
mov qword [rsp + 0x1290], rdi
mov qword [rsp + 0x1298], rdi
mov qword [rsp + 0x12a0], rdi
xor r8d, r8d
lea rdx, [rsp + 0x280]
lea rcx, [0x1401a9992]
call fcn.140086ab8
test al, al
je 0x1400dc99a
cmp qword [rsp + 0x1280], 0x18
je 0x1400dc9bb
cmp dword [rsp + 0x1c8], edi
jne 0x1400dc9b4
cmp byte [rsp + 0xd0], dil
mov byte [0x1401a25d0], 1
jne 0x1400dc9bb
mov byte [0x1401a25d0], dil
test r15d, r15d
jne 0x1400dc9c9
cmp dword [rsp + 0x250], edi
je 0x1400dc9d7
movzx eax, byte [rsp + 0x1c2]
mov dword [0x1401a258c], eax
cmp qword [rsp + 0x1b8], rdi
je 0x1400dc9f9
mov r8, rbx
lea rdx, [0x140140330]
lea rcx, [0x14019c548]
call fcn.1400ac228
jmp 0x1400dca00
mov word [0x14019c548], di
mov rcx, qword [0x14018a7d0]
call qword [sym.imp.USER32.dll_IsWindowVisible]
neg eax
sbb rcx, rcx
and rcx, qword [0x14018a7d0]
xor r8d, r8d
mov dl, r12b
call fcn.1400dfd18
test al, al
je 0x1400dce37
mov al, byte [0x1401ec67f]
neg al
sbb ecx, ecx
and ecx, dword [0x1401ec680]
mov dword [0x1401a2578], ecx
mov rcx, qword [0x1401ec660]
test rcx, rcx
je 0x1400dca55
call fcn.1400e7298
jmp 0x1400dca79
cmp byte [0x14018a804], dil
je 0x1400dca79
cmp qword [rsp + 0x1b8], rdi
je 0x1400dca79
cmp word [0x14019c548], 0x2a
jne 0x1400dca79
mov word [0x14019c548], di
cmp qword [0x1401aa9c0], rdi
jne 0x1400dcab6
mov ecx, 0x65
call fcn.1400a617c
mov rbx, rax
mov ecx, 0x14b
call fcn.1400a617c
mov r9d, 0x30
mov r8, rbx
mov rdx, rax
mov rcx, qword [0x14018a7d0]
call fcn.1400e9514
jmp 0x1400dce37
cmp word [0x14019e54e], di
je 0x1400dcb69
cmp dword [0x14019f550], edi
jne 0x1400dcb69
lea rdx, [0x140143d98]
lea rcx, [0x14019e54e]
call fcn.1400864b0
mov r12, rax
test rax, rax
je 0x1400dcb69
mov r9, rax
mov edx, 1
mov r8d, 0x400
lea rcx, [rsp + 0x12d0]
call fcn.14012a34c
mov r15, rax
mov rcx, r12
call fcn.1401262e8
mov eax, 0x3ff
cmp r15, rax
cmovb rax, r15
cmp rax, 0x400
jae 0x1400dceeb
mov byte [rsp + rax + 0x12d0], dil
mov dword [rsp + 0x40], 0x30c
test r15, r15
je 0x1400dcc33
lea r8, [rsp + 0x40]
mov edx, r15d
lea rcx, [rsp + 0x12d0]
call qword [sym.imp.ADVAPI32.dll_IsTextUnicode]
test eax, eax
je 0x1400dcc33
mov dword [0x14019f550], 3
lea rcx, [rsp + 0x12d0]
call fcn.1400ac25c
nop
lea rcx, [0x1401aa998]
call fcn.1400ac490
mov r15d, 0x25
lea rcx, [0x1401aa998]
call fcn.1400ac300
mov r14, rax
test rax, rax
je 0x1400dccea
mov r9, rbx
lea r8, [rsp + 0x22d0]
mov rdx, rax
lea rcx, [0x1401bd3f0]
call fcn.140058868
cmp word [r14], 0x40
jne 0x1400dcc69
lea rcx, [rsp + 0x22d0]
call fcn.1400855a0
test al, al
jne 0x1400dcc69
lea rdx, [r14 + 2]
mov r9, rbx
lea r8, [rsp + 0x22d0]
lea rcx, [0x1401bd3f0]
call fcn.140058868
mov byte [rsp + 0x38], 1
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 1
mov eax, dword [0x14019f554]
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x12d0]
lea rcx, [rsp + 0x22d0]
call fcn.140086568
test al, al
je 0x1400dcc69
jmp 0x1400dcb89
lea rcx, [rsp + 0x12d0]
call fcn.1400aba30
cmp eax, 2
jne 0x1400dcc51
mov dword [0x14019f550], r14d
jmp 0x1400dcb69
cmp eax, 1
jne 0x1400dcb69
mov dword [0x14019f550], 2
jmp 0x1400dcb69
mov edx, r15d
mov rcx, r14
call fcn.14011abf8
test rax, rax
je 0x1400dccd0
mov edx, r15d
lea rcx, [rax + 2]
call fcn.14011abf8
test rax, rax
je 0x1400dccd0
lea rcx, [rsp + 0x22d0]
call fcn.1400855a0
test al, al
jne 0x1400dccd0
mov r8d, ebx
lea rdx, [rsp + 0x280]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
dec eax
cmp eax, 0x7ff
ja 0x1400dccd0
mov r8, rbx
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x22d0]
call fcn.1400ac228
lea rdx, [rsp + 0x22d0]
lea rcx, [rsp + 0x12d0]
call fcn.1400ac28c
jmp 0x1400dcc2e
lea rdx, [rsp + 0x12d0]
lea rcx, [0x1401aa998]
call fcn.1400dc5d0
nop
mov rcx, qword [rsp + 0x12d0]
test rcx, rcx
je 0x1400dcd12
call fcn.140125418
nop
jmp 0x1400dcd22
mov r9, rbx
lea r8, [0x1401a9992]
lea rdx, [0x1401a9992]
lea rcx, [0x1401bd3f0]
call fcn.140058868
mov al, byte [0x1401aad48]
mov byte [0x1401bcfe0], al
lea rcx, [0x1401bcfb0]
call fcn.1400c5ad8
cmp byte [0x1401a8964], dil
je 0x1400dcd67
call fcn.1400dd7b8
jmp 0x1400dcd79
mov dl, byte [0x1401a793b]
lea rcx, [0x1401ba630]
call fcn.1400082d4
cmp qword [0x1401ec660], rdi
je 0x1400dcd8e
lea rcx, [0x14019e54e]
call fcn.1400852ac
cmp dword [0x14018a808], 1
je 0x1400dce37
cmp byte [0x14018a804], dil
je 0x1400dcdbf
cmp byte [0x1401a795e], dil
jne 0x1400dce37
lea rcx, [0x1401bd3f0]
call fcn.14005c25c
jmp 0x1400dce37
cmp byte [0x1401a25ce], dil
je 0x1400dcdd4
lea rcx, [0x14019b508]
call fcn.1400cbf28
mov r8, rbx
lea rdx, [rsp + 0x22d0]
lea rcx, [0x1401bd3f0]
call fcn.14005817c
lea rax, [rsp + 0x22d0]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], di
jne 0x1400dcdf7
lea rdx, [0x1401a9992]
lea rcx, [rsp + 0x22d0]
call fcn.1400af398
test eax, eax
jne 0x1400dce28
lea rcx, [0x1401a9992]
call fcn.14009694c
mov r13, rax
mov rdx, r13
lea rcx, [0x1401bd3f0]
call fcn.14005b6c0
mov rcx, qword [0x1401ec660]
call fcn.140119548
mov byte [0x1401bcfe0], dil
lea rcx, [0x1401bcfb0]
call fcn.1400c5ad8
nop
mov rdx, qword [rsp + 0x190]
cmp rdx, 8
jb 0x1400dce9b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x178]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400dce96
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400dcef1
call fcn.140119548
mov qword [rsp + 0x188], rdi
mov qword [rsp + 0x190], 7
mov word [rsp + 0x178], di
mov rcx, qword [rsp + 0x32d0]
xor rcx, rsp
call fcn.140119970
lea r11, [rsp + 0x32e0]
mov rbx, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
ret
call fcn.140120a58
nop
call fcn.140119664
nop
call fcn.140120a58
int3