Function at 0x402830
Capabilities:
Link many functions at runtime

Disassembly:
push esi
mov esi, dword [esp + 8]
push edi
mov edi, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
push str.Py_DontWriteBytecodeFlag
push esi
call edi
mov dword [0x42d96c], eax
test eax, eax
jne 0x402865
push str.Failed_to_get_address_for_Py_DontWriteBytecodeFlag_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_FileSystemDefaultEncoding
push esi
call edi
mov dword [0x42d960], eax
test eax, eax
jne 0x40288e
push str.Failed_to_get_address_for_Py_FileSystemDefaultEncoding_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_FrozenFlag
push esi
call edi
mov dword [0x42d954], eax
test eax, eax
jne 0x4028b7
push str.Failed_to_get_address_for_Py_FrozenFlag_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_IgnoreEnvironmentFlag
push esi
call edi
mov dword [0x42d968], eax
test eax, eax
jne 0x4028e0
push str.Failed_to_get_address_for_Py_IgnoreEnvironmentFlag_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_NoSiteFlag
push esi
call edi
mov dword [0x42d958], eax
test eax, eax
jne 0x402909
push str.Failed_to_get_address_for_Py_NoSiteFlag_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_NoUserSiteDirectory
push esi
call edi
mov dword [0x42d970], eax
test eax, eax
jne 0x402932
push str.Failed_to_get_address_for_Py_NoUserSiteDirectory_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_OptimizeFlag
push esi
call edi
mov dword [0x42d95c], eax
test eax, eax
jne 0x40295b
push str.Failed_to_get_address_for_Py_OptimizeFlag_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_VerboseFlag
push esi
call edi
mov dword [0x42d964], eax
test eax, eax
jne 0x402984
push str.Failed_to_get_address_for_Py_VerboseFlag_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_BuildValue
push esi
call edi
mov dword [0x42d9b8], eax
test eax, eax
jne 0x4029ad
push str.Failed_to_get_address_for_Py_BuildValue_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_DecRef
push esi
call edi
mov dword [0x42d980], eax
test eax, eax
jne 0x4029d6
push str.Failed_to_get_address_for_Py_DecRef_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_Finalize
push esi
call edi
mov dword [0x42d978], eax
test eax, eax
jne 0x4029ff
push str.Failed_to_get_address_for_Py_Finalize_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_IncRef
push esi
call edi
mov dword [0x42d97c], eax
test eax, eax
jne 0x402a28
push str.Failed_to_get_address_for_Py_IncRef_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push str.Py_Initialize
push esi
call edi
mov dword [0x42d974], eax
test eax, eax
jne 0x402a51
push str.Failed_to_get_address_for_Py_Initialize_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
ret
push ebx
mov ebx, dword [esp + 0x14]
cmp ebx, 0x1e
jl 0x402a91
push str.Py_SetPath
push esi
call edi
mov dword [0x42d98c], eax
test eax, eax
jne 0x402a76
push str.Failed_to_get_address_for_Py_SetPath_n
jmp 0x402ddd
push str.Py_GetPath
push esi
call edi
mov dword [0x42d990], eax
test eax, eax
jne 0x402a91
push str.Failed_to_get_address_for_Py_GetPath_n
jmp 0x402ddd
push str.Py_SetProgramName
push esi
call edi
mov dword [0x42d984], eax
test eax, eax
jne 0x402aac
push str.Failed_to_get_address_for_Py_SetProgramName_n
jmp 0x402ddd
push str.Py_SetPythonHome
push esi
call edi
mov dword [0x42d988], eax
test eax, eax
jne 0x402ac7
push str.Failed_to_get_address_for_Py_SetPythonHome_n
jmp 0x402ddd
push str.PyDict_GetItemString
push esi
call edi
mov dword [0x42d9cc], eax
test eax, eax
jne 0x402ae2
push str.Failed_to_get_address_for_PyDict_GetItemString_n
jmp 0x402ddd
push str.PyErr_Clear
push esi
call edi
mov dword [0x42d9d0], eax
test eax, eax
jne 0x402afd
push str.Failed_to_get_address_for_PyErr_Clear_n
jmp 0x402ddd
push str.PyErr_Occurred
push esi
call edi
mov dword [0x42d9d4], eax
test eax, eax
jne 0x402b18
push str.Failed_to_get_address_for_PyErr_Occurred_n
jmp 0x402ddd
push str.PyErr_Print
push esi
call edi
mov dword [0x42d9d8], eax
test eax, eax
jne 0x402b33
push str.Failed_to_get_address_for_PyErr_Print_n
jmp 0x402ddd
push str.PyImport_AddModule
push esi
call edi
mov dword [0x42d9a8], eax
test eax, eax
jne 0x402b4e
push str.Failed_to_get_address_for_PyImport_AddModule_n
jmp 0x402ddd
push str.PyImport_ExecCodeModule
push esi
call edi
mov dword [0x42d9a0], eax
test eax, eax
jne 0x402b69
push str.Failed_to_get_address_for_PyImport_ExecCodeModule_n
jmp 0x402ddd
push str.PyImport_ImportModule
push esi
call edi
mov dword [0x42d9a4], eax
test eax, eax
jne 0x402b84
push str.Failed_to_get_address_for_PyImport_ImportModule_n
jmp 0x402ddd
push str.PyList_Append
push esi
call edi
mov dword [0x42d9b4], eax
test eax, eax
jne 0x402b9f
push str.Failed_to_get_address_for_PyList_Append_n
jmp 0x402ddd
push str.PyList_New
push esi
call edi
mov dword [0x42d9b0], eax
test eax, eax
jne 0x402bba
push str.Failed_to_get_address_for_PyList_New_n
jmp 0x402ddd
push str.PyLong_AsLong
push esi
call edi
mov dword [0x42d9e0], eax
test eax, eax
jne 0x402bd5
push str.Failed_to_get_address_for_PyLong_AsLong_n
jmp 0x402ddd
push str.PyModule_GetDict
push esi
call edi
mov dword [0x42d9c8], eax
test eax, eax
jne 0x402bf0
push str.Failed_to_get_address_for_PyModule_GetDict_n
jmp 0x402ddd
push str.PyObject_CallFunction
push esi
call edi
mov dword [0x42d9c4], eax
test eax, eax
jne 0x402c0b
push str.Failed_to_get_address_for_PyObject_CallFunction_n
jmp 0x402ddd
push str.PyObject_SetAttrString
push esi
call edi
mov dword [0x42d9ac], eax
test eax, eax
jne 0x402c26
push str.Failed_to_get_address_for_PyObject_SetAttrString_n
jmp 0x402ddd
push str.PyRun_SimpleString
push esi
call edi
mov dword [0x42d99c], eax
test eax, eax
jne 0x402c41
push str.Failed_to_get_address_for_PyRun_SimpleString_n
jmp 0x402ddd
cmp ebx, 0x1e
jge 0x402c7c
push str.PyString_FromString
push esi
call edi
mov dword [0x42d9bc], eax
test eax, eax
jne 0x402c61
push str.Failed_to_get_address_for_PyString_FromString_n
jmp 0x402ddd
push str.PyString_FromFormat
push esi
call edi
mov dword [0x42d9f0], eax
test eax, eax
jne 0x402c7c
push str.Failed_to_get_address_for_PyString_FromFormat_n
jmp 0x402ddd
push str.PySys_AddWarnOption
push esi
call edi
mov dword [0x42d9dc], eax
test eax, eax
jne 0x402c97
push str.Failed_to_get_address_for_PySys_AddWarnOption_n
jmp 0x402ddd
push str.PySys_SetArgvEx
push esi
call edi
mov dword [0x42d998], eax
test eax, eax
jne 0x402cb2
push str.Failed_to_get_address_for_PySys_SetArgvEx_n
jmp 0x402ddd
push str.PySys_GetObject
push esi
call edi
mov dword [0x42d9ec], eax
test eax, eax
jne 0x402ccd
push str.Failed_to_get_address_for_PySys_GetObject_n
jmp 0x402ddd
push str.PySys_SetObject
push esi
call edi
mov dword [0x42d9e4], eax
test eax, eax
jne 0x402ce8
push str.Failed_to_get_address_for_PySys_SetObject_n
jmp 0x402ddd
push str.PySys_SetPath
push esi
call edi
mov dword [0x42d994], eax
test eax, eax
jne 0x402d03
push str.Failed_to_get_address_for_PySys_SetPath_n
jmp 0x402ddd
push str.PyEval_EvalCode
push esi
call edi
mov dword [0x42da00], eax
test eax, eax
jne 0x402d1e
push str.Failed_to_get_address_for_PyEval_EvalCode_n
jmp 0x402ddd
push str.PyMarshal_ReadObjectFromString
push esi
call edi
mov dword [0x42da04], eax
test eax, eax
jne 0x402d39
push str.Failed_to_get_address_for_PyMarshal_ReadObjectFromString_n
jmp 0x402ddd
cmp ebx, 0x1e
jl 0x402dc2
push str.PyUnicode_FromString
push esi
call edi
mov dword [0x42d9c0], eax
test eax, eax
jne 0x402d5d
push str.Failed_to_get_address_for_PyUnicode_FromString_n
jmp 0x402ddd
cmp ebx, 0x23
jl 0x402d7a
push str.Py_DecodeLocale
push esi
call edi
mov dword [0x42d9e8], eax
test eax, eax
jne 0x402d92
push str.Failed_to_get_address_for_Py_DecodeLocale_n
jmp 0x402ddd
push str._Py_char2wchar
push esi
call edi
mov dword [0x42d9e8], eax
test eax, eax
jne 0x402d92
push str.Failed_to_get_address_for__Py_char2wchar_n
jmp 0x402ddd
push str.PyUnicode_FromFormat
push esi
call edi
mov dword [0x42d9f4], eax
test eax, eax
jne 0x402daa
push str.Failed_to_get_address_for_PyUnicode_FromFormat_n
jmp 0x402ddd
push str.PyUnicode_Decode
push esi
call edi
mov dword [0x42d9fc], eax
test eax, eax
jne 0x402dc2
push str.Failed_to_get_address_for_PyUnicode_Decode_n
jmp 0x402ddd
cmp ebx, 0x20
jl 0x402df1
push str.PyUnicode_DecodeFSDefault
push esi
call edi
mov dword [0x42d9f8], eax
test eax, eax
jne 0x402df1
push str.Failed_to_get_address_for_PyUnicode_DecodeFSDefault_n
push 0x421680
call fcn.004018a0
add esp, 8
or eax, 0xffffffff
pop ebx
pop edi
pop esi
ret
pop ebx
pop edi
xor eax, eax
pop esi
ret