Function at 0x403680
Capabilities:
Link many functions at runtime

Disassembly:
push esi
push ebx
sub esp, 0x14
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, dword [esp + 0x20]
mov dword [esp + 4], str.Py_DontWriteBytecodeFlag
mov dword [esp], esi
call ebx
mov dword [0x422120], eax
sub esp, 8
test eax, eax
je 0x403d33
mov dword [esp + 4], str.Py_FileSystemDefaultEncoding
mov dword [esp], esi
call ebx
mov dword [0x42211c], eax
sub esp, 8
test eax, eax
je 0x403d1d
mov dword [esp + 4], str.Py_FrozenFlag
mov dword [esp], esi
call ebx
mov dword [0x422118], eax
sub esp, 8
test eax, eax
je 0x403d07
mov dword [esp + 4], str.Py_IgnoreEnvironmentFlag
mov dword [esp], esi
call ebx
mov dword [0x422114], eax
sub esp, 8
test eax, eax
je 0x403da7
mov dword [esp + 4], str.Py_NoSiteFlag
mov dword [esp], esi
call ebx
mov dword [0x422110], eax
sub esp, 8
test eax, eax
je 0x403d8e
mov dword [esp + 4], str.Py_NoUserSiteDirectory
mov dword [esp], esi
call ebx
mov dword [0x42210c], eax
sub esp, 8
test eax, eax
je 0x403d75
mov dword [esp + 4], str.Py_OptimizeFlag
mov dword [esp], esi
call ebx
mov dword [0x422108], eax
sub esp, 8
test eax, eax
je 0x403d5f
mov dword [esp + 4], str.Py_VerboseFlag
mov dword [esp], esi
call ebx
mov dword [0x422104], eax
sub esp, 8
test eax, eax
je 0x403d49
mov dword [esp + 4], str.Py_UnbufferedStdioFlag
mov dword [esp], esi
call ebx
mov dword [0x422100], eax
sub esp, 8
test eax, eax
je 0x40420c
cmp dword [esp + 0x24], 0x132
jg 0x403cc8
mov dword [esp + 4], str.Py_BuildValue
mov dword [esp], esi
call ebx
mov dword [0x4220f8], eax
sub esp, 8
test eax, eax
je 0x403e0b
mov dword [esp + 4], str.Py_DecRef
mov dword [esp], esi
call ebx
mov dword [0x4220f4], eax
sub esp, 8
test eax, eax
je 0x403df2
mov dword [esp + 4], str.Py_Finalize
mov dword [esp], esi
call ebx
mov dword [0x4220f0], eax
sub esp, 8
test eax, eax
je 0x403dd9
mov dword [esp + 4], str.Py_IncRef
mov dword [esp], esi
call ebx
mov dword [0x4220ec], eax
sub esp, 8
test eax, eax
je 0x403dc0
mov dword [esp + 4], str.Py_Initialize
mov dword [esp], esi
call ebx
mov dword [0x4220e8], eax
sub esp, 8
test eax, eax
je 0x403e6f
mov dword [esp + 4], str.Py_SetPath
mov dword [esp], esi
call ebx
mov dword [0x4220e4], eax
sub esp, 8
test eax, eax
je 0x403e56
mov dword [esp + 4], str.Py_GetPath
mov dword [esp], esi
call ebx
mov dword [0x4220e0], eax
sub esp, 8
test eax, eax
je 0x403e3d
mov dword [esp + 4], str.Py_SetProgramName
mov dword [esp], esi
call ebx
mov dword [0x4220dc], eax
sub esp, 8
test eax, eax
je 0x403e24
mov dword [esp + 4], str.Py_SetPythonHome
mov dword [esp], esi
call ebx
mov dword [0x4220d8], eax
sub esp, 8
test eax, eax
je 0x403ea1
mov dword [esp + 4], str.PyDict_GetItemString
mov dword [esp], esi
call ebx
mov dword [0x4220d4], eax
sub esp, 8
test eax, eax
je 0x403e88
mov dword [esp + 4], str.PyErr_Clear
mov dword [esp], esi
call ebx
mov dword [0x4220d0], eax
sub esp, 8
test eax, eax
je 0x403ed3
mov dword [esp + 4], str.PyErr_Occurred
mov dword [esp], esi
call ebx
mov dword [0x4220cc], eax
sub esp, 8
test eax, eax
je 0x403eba
mov dword [esp + 4], str.PyErr_Print
mov dword [esp], esi
call ebx
mov dword [0x4220c8], eax
sub esp, 8
test eax, eax
je 0x403f1e
mov dword [esp + 4], str.PyErr_Fetch
mov dword [esp], esi
call ebx
mov dword [0x4220c4], eax
sub esp, 8
test eax, eax
je 0x403f05
mov dword [esp + 4], str.PyErr_Restore
mov dword [esp], esi
call ebx
mov dword [0x4220c0], eax
sub esp, 8
test eax, eax
je 0x403eec
mov dword [esp + 4], str.PyErr_NormalizeException
mov dword [esp], esi
call ebx
mov dword [0x4220bc], eax
sub esp, 8
test eax, eax
je 0x403f37
mov dword [esp + 4], str.PyImport_AddModule
mov dword [esp], esi
call ebx
mov dword [0x4220b8], eax
sub esp, 8
test eax, eax
je 0x403fb4
mov dword [esp + 4], str.PyImport_ExecCodeModule
mov dword [esp], esi
call ebx
mov dword [0x4220b4], eax
sub esp, 8
test eax, eax
je 0x403f9b
mov dword [esp + 4], str.PyImport_ImportModule
mov dword [esp], esi
call ebx
mov dword [0x4220b0], eax
sub esp, 8
test eax, eax
je 0x403f82
mov dword [esp + 4], str.PyList_Append
mov dword [esp], esi
call ebx
mov dword [0x4220ac], eax
sub esp, 8
test eax, eax
je 0x403f69
mov dword [esp + 4], str.PyList_New
mov dword [esp], esi
call ebx
mov dword [0x4220a8], eax
sub esp, 8
test eax, eax
je 0x403f50
mov dword [esp + 4], str.PyLong_AsLong
mov dword [esp], esi
call ebx
mov dword [0x4220a4], eax
sub esp, 8
test eax, eax
je 0x403fcd
mov dword [esp + 4], str.PyModule_GetDict
mov dword [esp], esi
call ebx
mov dword [0x4220a0], eax
sub esp, 8
test eax, eax
je 0x403fff
mov dword [esp + 4], str.PyObject_CallFunction
mov dword [esp], esi
call ebx
mov dword [0x42209c], eax
sub esp, 8
test eax, eax
je 0x403fe6
mov dword [esp + 4], str.PyObject_CallFunctionObjArgs
mov dword [esp], esi
call ebx
mov dword [0x422098], eax
sub esp, 8
test eax, eax
je 0x404031
mov dword [esp + 4], str.PyObject_SetAttrString
mov dword [esp], esi
call ebx
mov dword [0x422094], eax
sub esp, 8
test eax, eax
je 0x404018
mov dword [esp + 4], str.PyObject_GetAttrString
mov dword [esp], esi
call ebx
mov dword [0x422090], eax
sub esp, 8
test eax, eax
je 0x404063
mov dword [esp + 4], str.PyObject_Str
mov dword [esp], esi
call ebx
mov dword [0x42208c], eax
sub esp, 8
test eax, eax
je 0x40404a
mov dword [esp + 4], str.PyRun_SimpleStringFlags
mov dword [esp], esi
call ebx
mov dword [0x422088], eax
sub esp, 8
test eax, eax
je 0x4040c7
mov dword [esp + 4], str.PySys_AddWarnOption
mov dword [esp], esi
call ebx
mov dword [0x422084], eax
sub esp, 8
test eax, eax
je 0x4040ae
mov dword [esp + 4], str.PySys_SetArgvEx
mov dword [esp], esi
call ebx
mov dword [0x422080], eax
sub esp, 8
test eax, eax
je 0x404095
mov dword [esp + 4], str.PySys_GetObject
mov dword [esp], esi
call ebx
mov dword [0x42207c], eax
sub esp, 8
test eax, eax
je 0x40407c
mov dword [esp + 4], str.PySys_SetObject
mov dword [esp], esi
call ebx
mov dword [0x422078], eax
sub esp, 8
test eax, eax
je 0x40415d
mov dword [esp + 4], str.PySys_SetPath
mov dword [esp], esi
call ebx
mov dword [0x422074], eax
sub esp, 8
test eax, eax
je 0x404144
mov dword [esp + 4], str.PyEval_EvalCode
mov dword [esp], esi
call ebx
mov dword [0x42204c], eax
sub esp, 8
test eax, eax
je 0x40412b
mov dword [esp + 4], str.PyMarshal_ReadObjectFromString
mov dword [esp], esi
call ebx
mov dword [0x422048], eax
sub esp, 8
test eax, eax
je 0x404112
mov dword [esp + 4], str.PyUnicode_FromString
mov dword [esp], esi
call ebx
mov dword [0x422070], eax
sub esp, 8
test eax, eax
je 0x4040f9
mov dword [esp + 4], str.Py_DecodeLocale
mov dword [esp], esi
call ebx
mov dword [0x42206c], eax
sub esp, 8
test eax, eax
je 0x4040e0
mov dword [esp + 4], str.PyMem_RawFree
mov dword [esp], esi
call ebx
mov dword [0x422068], eax
sub esp, 8
test eax, eax
je 0x4041f3
mov dword [esp + 4], str.PyUnicode_FromFormat
mov dword [esp], esi
call ebx
mov dword [0x422064], eax
sub esp, 8
test eax, eax
je 0x4041da
mov dword [esp + 4], str.PyUnicode_Decode
mov dword [esp], esi
call ebx
mov dword [0x42205c], eax
sub esp, 8
test eax, eax
je 0x4041c1
mov dword [esp + 4], str.PyUnicode_DecodeFSDefault
mov dword [esp], esi
call ebx
mov dword [0x422060], eax
sub esp, 8
test eax, eax
je 0x4041a8
mov dword [esp + 4], str.PyUnicode_AsUTF8
mov dword [esp], esi
call ebx
mov dword [0x422058], eax
sub esp, 8
test eax, eax
je 0x40418f
mov dword [esp + 4], str.PyUnicode_Join
mov dword [esp], esi
call ebx
mov dword [0x422054], eax
sub esp, 8
test eax, eax
je 0x404176
mov dword [esp + 4], str.PyUnicode_Replace
mov dword [esp], esi
call ebx
mov dword [0x422050], eax
sub esp, 8
test eax, eax
je 0x404225
xor eax, eax
add esp, 0x14
pop ebx
pop esi
ret
mov dword [esp + 4], str.Py_UTF8Mode
mov dword [esp], esi
call ebx
mov dword [0x4220fc], eax
sub esp, 8
test eax, eax
jne 0x4037a2
mov dword [esp + 4], str.Failed_to_get_address_for_Py_UTF8Mode_n
mov dword [esp], 0x41874c
call fcn.004023d0
lea esi, [esi]
mov eax, 0xffffffff
jmp 0x403cbd
mov dword [esp + 4], str.Failed_to_get_address_for_Py_FrozenFlag_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_FileSystemDefaultEncoding_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_DontWriteBytecodeFlag_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_VerboseFlag_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_OptimizeFlag_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_NoUserSiteDirectory_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_NoSiteFlag_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_IgnoreEnvironmentFlag_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_IncRef_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_Finalize_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_DecRef_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_BuildValue_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_SetProgramName_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_GetPath_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_SetPath_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_Initialize_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyDict_GetItemString_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_SetPythonHome_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyErr_Occurred_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyErr_Clear_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyErr_Restore_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyErr_Fetch_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyErr_Print_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyErr_NormalizeException_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyList_New_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyList_Append_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyImport_ImportModule_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyImport_ExecCodeModule_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyImport_AddModule_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyLong_AsLong_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyObject_CallFunction_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyModule_GetDict_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyObject_SetAttrString_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyObject_CallFunctionObjArgs_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyObject_Str_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyObject_GetAttrString_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PySys_GetObject_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PySys_SetArgvEx_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PySys_AddWarnOption_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyRun_SimpleStringFlags_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_DecodeLocale_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyUnicode_FromString_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyMarshal_ReadObjectFromString_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyEval_EvalCode_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PySys_SetPath_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PySys_SetObject_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyUnicode_Join_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyUnicode_AsUTF8_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyUnicode_DecodeFSDefault_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyUnicode_Decode_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyUnicode_FromFormat_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyMem_RawFree_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_Py_UnbufferedStdioFlag_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00
mov dword [esp + 4], str.Failed_to_get_address_for_PyUnicode_Replace_n
mov dword [esp], 0x41874c
call fcn.004023d0
jmp 0x403d00