Function at 0x1402ac540
Capabilities:
Set environment variable

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1a8
xor eax, eax
mov r9d, 0x5c
lea rbx, [rsp + 0x90]
mov r8, rcx
mov ecx, 0x20
mov rdi, rbx
lea r10, [rsp + 0x191]
rep stosq qword [rdi], rax
movzx eax, byte [r8]
mov rcx, rbx
mov byte [rdi], 0
test al, al
jne 0x1402ac5a9
jmp 0x1402ac5c2
cmp rcx, r10
je 0x1402ac84d
add r8, 1
add rcx, 1
cmp al, 0x2e
cmove eax, r9d
mov byte [rcx - 1], al
movzx eax, byte [r8]
test al, al
jne 0x1402ac5a0
mov byte [rcx], 0
mov rcx, rbx
test dl, dl
je 0x1402ac6b0
call sub.msvcrt.dll_strlen
cmp rax, 0x100
je 0x1402ac84d
mov r8d, 0x5c
lea rdx, [rax + 1]
mov word [rsp + rax + 0x90], r8w
add rax, 0xc
cmp rax, 0x100
ja 0x1402ac84d
movabs rsi, 0x5f5f74696e695f5f
lea rax, [rbx + rdx]
mov qword [rax], rsi
mov dword [rax + 8], 0x79702e
mov rcx, rbx
mov rsi, qword [sym.imp.python312.dll_PyUnicode_FromString]
call rsi
mov rdi, qword [0x14034a8a0]
mov rbx, rax
test rdi, rdi
je 0x1402ac6e8
mov rax, qword [0x14031f170]
cmp qword [rax + 0x48], rdi
je 0x1402ac6d8
mov rdx, qword [0x14034aae8]
test rdx, rdx
je 0x1402ac7e0
mov rcx, rdi
mov rsi, qword [sym.imp.python312.dll_PyNumber_InPlaceAdd]
call rsi
mov rdi, rax
mov rdx, rbx
mov rcx, rdi
call rsi
mov rdx, qword [rbx]
test edx, edx
js 0x1402ac697
sub rdx, 1
mov qword [rbx], rdx
jne 0x1402ac697
mov rdx, qword [rbx + 8]
mov qword [rsp + 0x20], rax
mov rcx, rbx
call qword [rdx + 0x30]
mov rax, qword [rsp + 0x20]
add rsp, 0x1a8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
call sub.msvcrt.dll_strlen
lea rdx, [rax + 3]
cmp rdx, 0x100
ja 0x1402ac84d
mov dword [rbx + rax], 0x79702e
jmp 0x1402ac61c
mov rsi, qword [sym.imp.python312.dll_PyNumber_InPlaceAdd]
jmp 0x1402ac66b
lea r14, str.NUITKA_ONEFILE_BINARY
mov rcx, r14
call fcn.140274ee0
test rax, rax
je 0x1402ac7f8
mov rcx, rax
mov rdx, 0xffffffffffffffff
lea r12, [r14 + 0x28]
call qword [sym.imp.python312.dll_PyUnicode_FromWideChar]
xor ecx, ecx
lea rbp, [rsp + 0x3a]
lea rdi, [rsp + 0x3c]
mov word [rsp + 0x40], cx
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov r13, rax
mov eax, 0x4e
nop dword [rax]
mov r15, r12
mov r8d, 2
mov rdx, rbp
mov rcx, rdi
sub r15, r14
mov byte [rsp + 0x3a], al
mov byte [rsp + 0x3b], 0
call sub.msvcrt.dll_mbstowcs
cmp rax, 1
jne 0x1402ac84d
cmp word [r13], 0
movzx edx, word [rsp + 0x3c]
mov rax, r13
je 0x1402ac78e
nop word [rax + rax]
add rax, 2
sub r15, 1
cmp word [rax], 0
jne 0x1402ac780
test r15, r15
je 0x1402ac84d
mov word [rax], dx
add r14, 1
xor edx, edx
add r13, 2
mov word [rax + 2], dx
movzx eax, byte [r14]
test al, al
jne 0x1402ac740
mov rcx, qword [rsp + 0x28]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
call qword [sym.imp.python312.dll_PyThreadState_Get]
mov rdx, qword [rsp + 0x20]
mov rcx, rax
call fcn.1402aae20
mov rdi, rax
mov qword [0x14034a8a0], rdi
jmp 0x1402ac63b
lea rcx, [0x14031b342]
call rsi
mov qword [0x14034aae8], rax
mov rdx, rax
jmp 0x1402ac65c
mov rdi, qword [0x14034a8b0]
test rdi, rdi
jne 0x1402ac7d3
cmp byte [0x14034aae2], 0
je 0x1402ac83b
mov rdx, 0xffffffffffffffff
lea rcx, [0x14034a8e0]
call qword [sym.imp.python312.dll_PyUnicode_FromWideChar]
mov qword [0x14034a8b0], rax
mov rdi, rax
test rax, rax
je 0x1402ac847
mov eax, dword [rax]
add eax, 1
je 0x1402ac7d3
mov dword [rdi], eax
jmp 0x1402ac7d3
mov ecx, 1
call fcn.140275850
jmp 0x1402ac80d
call qword [sym.imp.python312.dll_PyErr_Print]
call sub.msvcrt.dll_abort
nop
nop word cs:[rax + rax]
nop