Function at 0x10033b7d
Capabilities:
Create a process with modified i/o handles and window
Create process on windows
Get comspec environment variable
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18c
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
xor eax, eax
push edi
push eax
push eax
push str.COMSPEC
mov dword [ebp - 4], eax
call esi
mov edi, eax
test edi, edi
je 0x10033e4b
call fcn.101c23a0
mov ebx, esp
push edi
push ebx
push str.COMSPEC
call esi
test eax, eax
je 0x10033e5d
lea esi, [eax + ebx]
jmp 0x10033bca
cmp byte [esi], 0x5c
je 0x10033bce
dec esi
cmp esi, ebx
jae 0x10033bc4
call dword [sym.imp.KERNEL32.dll_GetVersion]
cmp eax, 0x80000000
jae 0x10033c3a
lea eax, [esi + 1]
push str.command.com
push eax
call fcn.101c1123
pop ecx
pop ecx
test eax, eax
je 0x10033c3a
push dword [ebp + 8]
call fcn.101baf90
mov dword [esp], 0x1028ea94
lea esi, [eax + 1]
call fcn.101baf90
add esi, edi
add esi, eax
pop ecx
mov eax, esi
call fcn.101c23a0
mov edi, esp
push esi
push 0
push edi
call fcn.101b9cb0
push dword [ebp + 8]
push 0x1028ea94
push ebx
push str._s_s_s
push esi
push edi
call sym.extension.dll_PyOS_snprintf
add esp, 0x24
jmp 0x10033dd6
mov esi, 0x104
lea eax, [ebp - 0x15c]
push esi
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
xor eax, eax
xor edi, edi
cmp byte [ebp - 0x15c], al
je 0x10033c85
xor ecx, ecx
lea edx, [ebp - 0x15c]
inc ecx
sub ecx, edx
cmp byte [ebp + edi - 0x15c], 0x5c
jne 0x10033c7a
lea eax, [ecx + edi]
lea eax, [ebp + eax - 0x15c]
inc edi
cmp byte [ebp + edi - 0x15c], 0
jne 0x10033c66
mov byte [ebp + eax - 0x15c], 0
lea eax, [ebp - 0x15c]
push eax
call fcn.101baf90
mov ecx, esi
sub ecx, eax
lea eax, [ebp - 0x15c]
push ecx
push str.w9xpopen.exe
push eax
call fcn.101c1200
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x15c]
push eax
call fcn.101c1ed1
add esp, 0x18
test eax, eax
je 0x10033d63
push esi
call sym.extension.dll_Py_GetExecPrefix
push eax
lea eax, [ebp - 0x15c]
push eax
call fcn.101c13c0
lea eax, [ebp - 0x15c]
mov byte [ebp - 0x59], 0
push eax
call fcn.101baf90
lea ecx, [ebp - 0x15c]
add esp, 0x10
cmp byte [eax + ecx - 1], 0x5c
je 0x10033d0f
mov eax, ecx
push 0x1028eac8
push eax
call fcn.101ba1f0
pop ecx
pop ecx
lea eax, [ebp - 0x15c]
push eax
call fcn.101baf90
sub esi, eax
lea eax, [ebp - 0x15c]
push esi
mov esi, str.w9xpopen.exe
push esi
push eax
call fcn.101c1200
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x15c]
push eax
call fcn.101c1ed1
add esp, 0x18
test eax, eax
je 0x10033d68
push esi
push str.Can_not_locate__s_which_is_needed_for_popen_to_work_with_your_shell_or_platform.
push dword [sym.extension.dll_PyExc_RuntimeError]
call sym.extension.dll_PyErr_Format
add esp, 0xc
jmp 0x10033e5d
mov esi, str.w9xpopen.exe
push esi
call fcn.101baf90
mov esi, eax
mov dword [esp], 0x1028ea94
call fcn.101baf90
push dword [ebp + 8]
add esi, eax
call fcn.101baf90
add esi, eax
lea eax, [ebp - 0x15c]
push eax
call fcn.101baf90
add eax, esi
add esp, 0xc
lea esi, [edi + 2]
add esi, eax
mov eax, esi
call fcn.101c23a0
mov edi, esp
push esi
push 0
push edi
call fcn.101b9cb0
push dword [ebp + 8]
lea eax, [ebp - 0x15c]
push 0x1028ea94
push ebx
push eax
push str.__s___s_s_s
push esi
push edi
call sym.extension.dll_PyOS_snprintf
add esp, 0x28
mov dword [ebp - 4], 0x10
push 0x44
pop esi
push esi
xor ebx, ebx
lea eax, [ebp - 0x58]
push ebx
push eax
call fcn.101b9cb0
mov eax, dword [ebp + 0xc]
add esp, 0xc
mov dword [ebp - 0x20], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x18], eax
xor eax, eax
mov word [ebp - 0x28], ax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x58]
mov dword [ebp - 0x58], esi
push eax
push ebx
push ebx
push dword [ebp - 4]
mov dword [ebp - 0x2c], 0x101
push 1
push ebx
push ebx
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
je 0x10033e3e
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp + 0x18]
xor eax, eax
mov ecx, dword [ebp - 0x14]
inc eax
mov dword [edx], ecx
jmp 0x10033e5f
push edi
push str.CreateProcess
call fcn.10030cec
jmp 0x10033e5b
push str.Cannot_locate_a_COMSPEC_environment_variable_to_use_as_the_shell
push dword [sym.extension.dll_PyExc_RuntimeError]
call sym.extension.dll_PyErr_SetString
pop ecx
pop ecx
xor eax, eax
lea esp, [ebp - 0x198]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret