Function at 0x101fcc80
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push ebx
push esi
mov esi, ecx
push edi
push str.PYTHONDEBUG
mov edi, dword [esi + 8]
lea eax, [esi + 0x7c]
push eax
push edi
call sym.python310.dll__Py_get_env_flag
add esp, 0xc
lea eax, [esi + 0x84]
push str.PYTHONVERBOSE
push eax
push edi
call sym.python310.dll__Py_get_env_flag
add esp, 0xc
lea eax, [esi + 0x78]
push str.PYTHONOPTIMIZE
push eax
push edi
call sym.python310.dll__Py_get_env_flag
add esp, 0xc
lea eax, [esi + 0x70]
push str.PYTHONINSPECT
push eax
push edi
call sym.python310.dll__Py_get_env_flag
add esp, 0xc
mov dword [ebp - 8], 0
lea eax, [ebp - 8]
push str.PYTHONDONTWRITEBYTECODE
push eax
push edi
call sym.python310.dll__Py_get_env_flag
add esp, 0xc
cmp dword [ebp - 8], 0
je 0x101fcd02
mov dword [esi + 0x80], 0
push str.PYTHONNOUSERSITE
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push edi
call sym.python310.dll__Py_get_env_flag
add esp, 0xc
cmp dword [ebp - 8], 0
je 0x101fcd2b
mov dword [esi + 0x8c], 0
push str.PYTHONUNBUFFERED
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push edi
call sym.python310.dll__Py_get_env_flag
add esp, 0xc
cmp dword [ebp - 8], 0
je 0x101fcd54
mov dword [esi + 0x94], 0
push str.PYTHONLEGACYWINDOWSSTDIO
lea eax, [esi + 0xa0]
push eax
push edi
call sym.python310.dll__Py_get_env_flag
mov ebx, dword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
add esp, 0xc
cmp dword [esi + 8], 0
je 0x101fcdaf
push str.PYTHONDUMPREFS
call ebx
add esp, 4
test eax, eax
je 0x101fcd8f
cmp byte [eax], 0
je 0x101fcd8f
mov dword [esi + 0x2c], 1
cmp dword [esi + 8], 0
je 0x101fcdaf
push str.PYTHONMALLOCSTATS
call ebx
add esp, 4
test eax, eax
je 0x101fcdaf
cmp byte [eax], 0
je 0x101fcdaf
mov dword [esi + 0x30], 1
cmp dword [esi + 0xb0], 0
lea edi, [esi + 0xb0]
mov eax, dword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__wgetenv]
jne 0x101fce14
cmp dword [esi + 8], 0
jne 0x101fcdd1
mov dword [edi], 0
jmp 0x101fce14
push str.PYTHONPATH
call eax
add esp, 4
test eax, eax
je 0x101fce09
cmp word [eax], 0
je 0x101fce09
push eax
push edi
lea eax, [ebp - 0x1c]
push esi
push eax
call sym.python310.dll_PyConfig_SetString
add esp, 0x10
cmp dword [eax], 0
je 0x101fce0f
movups xmm0, xmmword [eax]
mov eax, dword [ebp + 8]
movups xmmword [eax], xmm0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi], 0
mov eax, dword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__wgetenv]
cmp dword [esi + 0xb8], 0
lea edi, [esi + 0xb8]
jne 0x101fce67
cmp dword [esi + 8], 0
je 0x101fce61
push str.PYTHONPLATLIBDIR
call eax
add esp, 4
test eax, eax
je 0x101fce61
cmp word [eax], 0
je 0x101fce61
push eax
push edi
lea eax, [ebp - 0x1c]
push esi
push eax
call sym.python310.dll_PyConfig_SetString
add esp, 0x10
cmp dword [eax], 0
je 0x101fce67
movups xmm0, xmmword [eax]
mov eax, dword [ebp + 8]
movups xmmword [eax], xmm0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi], 0
cmp dword [esi + 0x14], 0
jge 0x101fcf3e
cmp dword [esi + 8], 0
je 0x101fcf34
push str.PYTHONHASHSEED
call ebx
mov edi, eax
add esp, 4
test edi, edi
je 0x101fcf34
cmp byte [edi], 0
je 0x101fcf34
mov edx, str.random
mov ecx, edi
nop
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x101fcec0
test al, al
je 0x101fcebc
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x101fcec0
add ecx, 2
add edx, 2
test al, al
jne 0x101fcea0
xor eax, eax
jmp 0x101fcec5
sbb eax, eax
or eax, 1
test eax, eax
je 0x101fcf34
mov ebx, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [ebp - 8], edi
call ebx
push 0xa
mov dword [eax], 0
lea eax, [ebp - 8]
push eax
push edi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtoul]
mov ecx, dword [ebp - 8]
add esp, 0xc
mov edi, eax
cmp byte [ecx], 0
jne 0x101fcf07
call ebx
cmp dword [eax], 0x22
jne 0x101fcf00
cmp edi, 0xffffffff
je 0x101fcf07
mov eax, 1
jmp 0x101fcf38
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1c], 1
mov dword [ebp - 0x18], str.config_init_hash_seed
mov dword [ebp - 0x14], str.PYTHONHASHSEED_must_be__random__or_an_integer_in_range__0__4294967295_
mov dword [ebp - 0x10], 0
movups xmm0, xmmword [ebp - 0x1c]
movups xmmword [eax], xmm0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor edi, edi
xor eax, eax
mov dword [esi + 0x14], eax
mov dword [esi + 0x18], edi
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov esp, ebp
pop ebp
ret