Function at 0x14005ce50
Capabilities:
Set environment variable

Disassembly:
mov qword [rsp + 0x18], rbx
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
xor ebp, ebp
mov edi, edx
mov r13, rcx
cmp rcx, rbp
mov dword [rsp + 0x70], ebp
jne 0x14005ce9c
call fcn.14004e340
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rbp
mov dword [rax], reloc.Cabinet.dll_FDICopy
call fcn.140050a8c
jmp 0x14005cf7a
mov r12, qword [rcx]
cmp r12, rbp
je 0x14005cf6f
mov edx, 0x3d
mov rcx, r12
call fcn.14005dc20
cmp rax, rbp
mov r15, rax
je 0x14005cf6f
cmp r12, rax
je 0x14005cf6f
cmp byte [rax + 1], bpl
mov rbx, qword [0x14008db00]
mov r14d, ebp
sete r14b
cmp rbx, qword [0x14008db08]
jne 0x14005cf50
cmp rbx, rbp
mov rsi, rbx
mov eax, ebp
jne 0x14005cefb
mov rbx, rbp
jmp 0x14005cf49
add rbx, 8
add eax, 1
cmp qword [rbx], rbp
jne 0x14005cef4
add eax, 1
mov edx, 8
movsxd rcx, eax
call fcn.1400527dc
cmp rax, rbp
mov rdi, rax
mov rbx, rax
jne 0x14005cf3a
mov ecx, 9
call fcn.14004f2cc
jmp 0x14005cf3a
mov rcx, rax
call fcn.14005dab8
mov qword [rdi], rax
add rdi, 8
add rsi, 8
mov rax, qword [rsi]
cmp rax, rbp
jne 0x14005cf27
mov qword [rdi], rbp
mov edi, dword [rsp + 0x78]
mov qword [0x14008db00], rbx
cmp rbx, rbp
jne 0x14005cfe0
cmp edi, ebp
je 0x14005cf95
cmp qword [0x14008db10], rbp
je 0x14005cf95
call fcn.14005c0e8
cmp eax, ebp
je 0x14005cfd9
call fcn.14004e340
mov dword [rax], reloc.Cabinet.dll_FDICopy
or eax, 0xffffffff
mov rbx, qword [rsp + 0x80]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
cmp r14d, ebp
je 0x14005cf9e
xor eax, eax
jmp 0x14005cf7d
mov ecx, 8
call fcn.14004c8b0
cmp rax, rbp
mov qword [0x14008db00], rax
je 0x14005cf7a
mov qword [rax], rbp
cmp qword [0x14008db10], rbp
jne 0x14005cfd9
mov ecx, 8
call fcn.14004c8b0
cmp rax, rbp
mov qword [0x14008db10], rax
je 0x14005cf7a
mov qword [rax], rbp
mov rbx, qword [0x14008db00]
test rbx, rbx
mov rbp, rbx
je 0x14005cf7a
mov rcx, qword [rbx]
mov eax, r15d
mov rdi, rbx
sub eax, r12d
test rcx, rcx
movsxd rsi, eax
je 0x14005d038
mov rdx, rcx
mov r8, rsi
mov rcx, r12
call fcn.14005c0e0
test eax, eax
jne 0x14005d025
mov rax, qword [rdi]
cmp byte [rsi + rax], 0x3d
je 0x14005d0e7
cmp byte [rsi + rax], 0
je 0x14005d0e7
add rdi, 8
mov rcx, qword [rdi]
test rcx, rcx
jne 0x14005cffc
mov rbx, qword [0x14008db00]
sub rdi, rbx
sar rdi, 3
neg edi
xor esi, esi
cmp edi, esi
jl 0x14005d107
cmp qword [rbp], rsi
je 0x14005d107
movsxd rsi, edi
mov rcx, qword [rbp + rsi*8]
cmp rcx, qword [0x14008db08]
jb 0x14005d06f
cmp rcx, qword [0x14008f708]
jbe 0x14005d07b
call fcn.14004ca6c
mov rbx, qword [0x14008db00]
test r14d, r14d
je 0x14005d0fa
cmp qword [rbp + rsi*8], 0
je 0x14005d0af
lea rcx, [rbp + rsi*8 + 8]
mov rax, qword [rcx]
add edi, 1
add rcx, 8
mov qword [rbp + rsi*8], rax
add rsi, 1
cmp qword [rbp + rsi*8], 0
jne 0x14005d08d
mov rbx, qword [0x14008db00]
movsxd rdx, edi
movabs rax, 0x1fffffffffffffff
cmp rdx, rax
jae 0x14005d162
mov r8d, 8
mov rcx, rbx
call fcn.14004eca8
xor esi, esi
cmp rax, rsi
je 0x14005d164
mov qword [0x14008db00], rax
jmp 0x14005d164
mov rbx, qword [0x14008db00]
sub rdi, rbx
sar rdi, 3
jmp 0x14005d041
mov qword [rbp + rsi*8], r12
xor esi, esi
mov qword [r13], rsi
jmp 0x14005d164
cmp r14d, esi
jne 0x14005d21f
cmp edi, esi
jge 0x14005d116
neg edi
lea eax, [rdi + 2]
cmp eax, edi
jl 0x14005cf7a
movsxd r8, eax
movabs rax, 0x1fffffffffffffff
cmp r8, rax
jae 0x14005cf7a
mov edx, 8
mov rcx, rbx
call fcn.14004eca8
cmp rax, rsi
je 0x14005cf7a
movsxd rcx, edi
mov qword [rax + rcx*8], r12
mov qword [rax + rcx*8 + 8], rsi
mov qword [r13], rsi
jmp 0x14005d0de
xor esi, esi
cmp dword [rsp + 0x78], esi
je 0x14005d209
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r12
repne scasb al, byte [rdi]
lea ebp, [rax + 1]
not rcx
mov rdx, rbp
sub rcx, rbp
add rcx, 2
call fcn.1400527dc
cmp rax, rsi
mov rbx, rax
je 0x14005d209
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r12
repne scasb al, byte [rdi]
mov r8, r12
not rcx
sub rcx, rbp
lea rdx, [rcx + 2]
mov rcx, rbx
call fcn.14004e484
cmp eax, esi
je 0x14005d1ce
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rsi
call fcn.1400509e8
mov rdx, rbx
mov rcx, rbx
sub rdx, r12
add rdx, r15
mov byte [rdx], sil
add rdx, rbp
cmp r14d, esi
cmovne rdx, rsi
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
cmp eax, esi
jne 0x14005d201
or dword [rsp + 0x70], 0xffffffff
call fcn.14004e340
mov dword [rax], 0x2a
mov rcx, rbx
call fcn.14004ca6c
cmp r14d, esi
je 0x14005d216
mov rcx, r12
call fcn.14004ca6c
mov eax, dword [rsp + 0x70]
jmp 0x14005cf7d
mov rcx, r12
call fcn.14004ca6c
mov qword [r13], rsi
jmp 0x14005cf9a