Function at 0x140002bb0
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov edi, edx
mov rbx, rcx
lea rdx, str.Py_DontWriteBytecodeFlag
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b48], rax
test rax, rax
jne 0x140002bf9
lea rdx, str.Failed_to_get_address_for_Py_DontWriteBytecodeFlag_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_FileSystemDefaultEncoding
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b30], rax
test rax, rax
jne 0x140002c36
lea rdx, str.Failed_to_get_address_for_Py_FileSystemDefaultEncoding_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_FrozenFlag
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b18], rax
test rax, rax
jne 0x140002c73
lea rdx, str.Failed_to_get_address_for_Py_FrozenFlag_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_IgnoreEnvironmentFlag
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b40], rax
test rax, rax
jne 0x140002cb0
lea rdx, str.Failed_to_get_address_for_Py_IgnoreEnvironmentFlag_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_NoSiteFlag
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b20], rax
test rax, rax
jne 0x140002ced
lea rdx, str.Failed_to_get_address_for_Py_NoSiteFlag_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_NoUserSiteDirectory
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b50], rax
test rax, rax
jne 0x140002d2a
lea rdx, str.Failed_to_get_address_for_Py_NoUserSiteDirectory_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_OptimizeFlag
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b28], rax
test rax, rax
jne 0x140002d67
lea rdx, str.Failed_to_get_address_for_Py_OptimizeFlag_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_VerboseFlag
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b38], rax
test rax, rax
jne 0x140002da4
lea rdx, str.Failed_to_get_address_for_Py_VerboseFlag_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_BuildValue
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033be0], rax
test rax, rax
jne 0x140002de1
lea rdx, str.Failed_to_get_address_for_Py_BuildValue_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_DecRef
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b70], rax
test rax, rax
jne 0x140002e1e
lea rdx, str.Failed_to_get_address_for_Py_DecRef_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_Finalize
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b60], rax
test rax, rax
jne 0x140002e5b
lea rdx, str.Failed_to_get_address_for_Py_Finalize_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_IncRef
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b68], rax
test rax, rax
jne 0x140002e98
lea rdx, str.Failed_to_get_address_for_Py_IncRef_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_Initialize
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b58], rax
test rax, rax
jne 0x140002ed5
lea rdx, str.Failed_to_get_address_for_Py_Initialize_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
cmp edi, 0x1e
jl 0x140002f54
lea rdx, str.Py_SetPath
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b88], rax
test rax, rax
jne 0x140002f17
lea rdx, str.Failed_to_get_address_for_Py_SetPath_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_GetPath
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b90], rax
test rax, rax
jne 0x140002f54
lea rdx, str.Failed_to_get_address_for_Py_GetPath_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_SetProgramName
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b78], rax
test rax, rax
jne 0x140002f91
lea rdx, str.Failed_to_get_address_for_Py_SetProgramName_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.Py_SetPythonHome
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b80], rax
test rax, rax
jne 0x140002fce
lea rdx, str.Failed_to_get_address_for_Py_SetPythonHome_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyDict_GetItemString
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c08], rax
test rax, rax
jne 0x14000300b
lea rdx, str.Failed_to_get_address_for_PyDict_GetItemString_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyErr_Clear
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c10], rax
test rax, rax
jne 0x140003048
lea rdx, str.Failed_to_get_address_for_PyErr_Clear_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyErr_Occurred
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c18], rax
test rax, rax
jne 0x140003085
lea rdx, str.Failed_to_get_address_for_PyErr_Occurred_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyErr_Print
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c20], rax
test rax, rax
jne 0x1400030c2
lea rdx, str.Failed_to_get_address_for_PyErr_Print_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyImport_AddModule
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033bc0], rax
test rax, rax
jne 0x1400030ff
lea rdx, str.Failed_to_get_address_for_PyImport_AddModule_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyImport_ExecCodeModule
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033bb0], rax
test rax, rax
jne 0x14000313c
lea rdx, str.Failed_to_get_address_for_PyImport_ExecCodeModule_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyImport_ImportModule
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033bb8], rax
test rax, rax
jne 0x140003179
lea rdx, str.Failed_to_get_address_for_PyImport_ImportModule_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyList_Append
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033bd8], rax
test rax, rax
jne 0x1400031b6
lea rdx, str.Failed_to_get_address_for_PyList_Append_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyList_New
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033bd0], rax
test rax, rax
jne 0x1400031f3
lea rdx, str.Failed_to_get_address_for_PyList_New_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyLong_AsLong
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c30], rax
test rax, rax
jne 0x140003230
lea rdx, str.Failed_to_get_address_for_PyLong_AsLong_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyModule_GetDict
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c00], rax
test rax, rax
jne 0x14000326d
lea rdx, str.Failed_to_get_address_for_PyModule_GetDict_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyObject_CallFunction
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033bf8], rax
test rax, rax
jne 0x1400032aa
lea rdx, str.Failed_to_get_address_for_PyObject_CallFunction_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyObject_SetAttrString
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033bc8], rax
test rax, rax
jne 0x1400032e7
lea rdx, str.Failed_to_get_address_for_PyObject_SetAttrString_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyRun_SimpleString
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033ba8], rax
test rax, rax
jne 0x140003324
lea rdx, str.Failed_to_get_address_for_PyRun_SimpleString_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
cmp edi, 0x1e
jge 0x1400033a3
lea rdx, str.PyString_FromString
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033be8], rax
test rax, rax
jne 0x140003366
lea rdx, str.Failed_to_get_address_for_PyString_FromString_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyString_FromFormat
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c50], rax
test rax, rax
jne 0x1400033a3
lea rdx, str.Failed_to_get_address_for_PyString_FromFormat_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PySys_AddWarnOption
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c28], rax
test rax, rax
jne 0x1400033e0
lea rdx, str.Failed_to_get_address_for_PySys_AddWarnOption_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PySys_SetArgvEx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033ba0], rax
test rax, rax
jne 0x14000341d
lea rdx, str.Failed_to_get_address_for_PySys_SetArgvEx_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PySys_GetObject
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c48], rax
test rax, rax
jne 0x14000345a
lea rdx, str.Failed_to_get_address_for_PySys_GetObject_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PySys_SetObject
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c38], rax
test rax, rax
jne 0x140003497
lea rdx, str.Failed_to_get_address_for_PySys_SetObject_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PySys_SetPath
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033b98], rax
test rax, rax
jne 0x1400034d4
lea rdx, str.Failed_to_get_address_for_PySys_SetPath_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyEval_EvalCode
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c70], rax
test rax, rax
jne 0x140003511
lea rdx, str.Failed_to_get_address_for_PyEval_EvalCode_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyMarshal_ReadObjectFromString
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c78], rax
test rax, rax
jne 0x14000354e
lea rdx, str.Failed_to_get_address_for_PyMarshal_ReadObjectFromString_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
cmp edi, 0x1e
jl 0x14000368a
lea rdx, str.PyUnicode_FromString
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033bf0], rax
test rax, rax
jne 0x140003594
lea rdx, str.Failed_to_get_address_for_PyUnicode_FromString_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov rcx, rbx
cmp edi, 0x23
jl 0x1400035d6
lea rdx, str.Py_DecodeLocale
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c40], rax
test rax, rax
jne 0x140003610
lea rdx, str.Failed_to_get_address_for_Py_DecodeLocale_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str._Py_char2wchar
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c40], rax
test rax, rax
jne 0x140003610
lea rdx, str.Failed_to_get_address_for__Py_char2wchar_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyUnicode_FromFormat
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c58], rax
test rax, rax
jne 0x14000364d
lea rdx, str.Failed_to_get_address_for_PyUnicode_FromFormat_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rdx, str.PyUnicode_Decode
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c68], rax
test rax, rax
jne 0x14000368a
lea rdx, str.Failed_to_get_address_for_PyUnicode_Decode_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
cmp edi, 0x20
jl 0x1400036cc
lea rdx, str.PyUnicode_DecodeFSDefault
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140033c60], rax
test rax, rax
jne 0x1400036cc
lea rdx, str.Failed_to_get_address_for_PyUnicode_DecodeFSDefault_n
lea rcx, [0x1400238e0]
call fcn.140001a80
or eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
xor eax, eax
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret