Function at 0x10033ac0
Capabilities:
Generate random numbers via winapi

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x9f4
mov eax, dword [0x103b1004]
xor eax, esp
mov dword [esp + 0x9f0], eax
push ebx
push esi
push edi
mov esi, edx
mov dword [esp + 0x14], 0
mov ebx, ecx
xor edi, edi
mov dword [esp + 0x20], ebx
test esi, esi
je 0x10033cfe
cmp esi, sym.python310.dll__Py_NoneStruct
je 0x10033cfe
mov eax, dword [esi + 4]
cmp eax, sym.python310.dll_PyLong_Type
jne 0x10033b3e
mov ecx, dword [eax + 0x30]
test ecx, ecx
je 0x10033b23
mov ecx, dword [ecx + 0x20]
test ecx, ecx
je 0x10033b23
push esi
call ecx
jmp 0x10033c26
push dword [eax + 0xc]
push str.bad_operand_type_for_abs__:__.200s
push dword [sym.python310.dll_PyExc_TypeError]
call sym.python310.dll_PyErr_Format
add esp, 0xc
jmp 0x10033cd5
test dword [eax + 0x54], 0x1000000
je 0x10033c0e
push 0x103c80e4
push dword [ebx + 4]
call sym.python310.dll__PyType_GetModuleByDef
mov ecx, dword [0x103fb118]
add esp, 8
mov dword [esp + 0x1c], esi
mov dword [esp + 0x10], ecx
mov eax, dword [eax + 0x10]
mov ebx, dword [eax + 4]
test ecx, ecx
je 0x10033e29
mov eax, dword [ebx + 4]
test dword [eax + 0x54], 0x800
je 0x10033bf9
mov eax, dword [eax + 0x1c]
mov eax, dword [ebx + eax]
test eax, eax
je 0x10033bf9
push 0
push 0x80000001
lea ecx, [esp + 0x24]
push ecx
push ebx
call eax
mov esi, eax
add esp, 0x10
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x34]
test esi, esi
jne 0x10033bc7
test ecx, ecx
jne 0x10033c2b
push ebx
push str._R_returned_NULL_without_setting_an_exception
push dword [sym.python310.dll_PyExc_SystemError]
push eax
call sym.python310.dll__PyErr_Format
add esp, 0x10
jmp 0x10033c2b
test ecx, ecx
je 0x10033c2b
add dword [esi], 0xffffffff
jne 0x10033be0
mov eax, dword [esi + 4]
push esi
mov eax, dword [eax + 0x18]
call eax
mov eax, dword [esp + 0x14]
add esp, 4
push ebx
push str._R_returned_a_result_with_an_exception_set
push dword [sym.python310.dll_PyExc_SystemError]
push eax
call sym.python310.dll__PyErr_FormatFromCauseTstate
add esp, 0x10
xor esi, esi
jmp 0x10033c2b
push 0
push 1
lea eax, [esp + 0x24]
push eax
push ebx
push ecx
call sym.python310.dll__PyObject_MakeTpCall
add esp, 0x14
jmp 0x10033c29
push esi
call sym.python310.dll_PyObject_Hash
add esp, 4
cmp eax, 0xffffffff
je 0x10033cd5
push eax
call sym.python310.dll_PyLong_FromSize_t
add esp, 4
mov esi, eax
test esi, esi
je 0x10033cd5
push esi
call sym.python310.dll__PyLong_NumBits
mov ebx, eax
add esp, 4
cmp ebx, 0xffffffff
jne 0x10033c7a
mov eax, dword [0x103fb118]
cmp dword [eax + 0x34], edi
jne 0x10033cc4
dec ebx
shr ebx, 5
inc ebx
lea eax, [ebx*4]
mov dword [esp + 0x10], eax
push eax
push dword [0x103cc55c]
call dword [0x103cc560]
mov edi, eax
add esp, 8
test edi, edi
jne 0x10033c90
call sym.python310.dll_PyErr_NoMemory
jmp 0x10033cc4
test ebx, ebx
jne 0x10033c4d
mov ebx, 1
mov dword [esp + 0x10], 4
lea eax, [ebx + 3]
jmp 0x10033c5d
push 0
push 1
push dword [esp + 0x18]
push edi
push esi
call sym.python310.dll__PyLong_AsByteArray
add esp, 0x14
cmp eax, 0xffffffff
je 0x10033cc4
mov ecx, dword [esp + 0x20]
mov edx, edi
push ebx
call fcn.100339c0
add esp, 4
mov dword [esp + 0x14], sym.python310.dll__Py_NoneStruct
inc dword [sym.python310.dll__Py_NoneStruct]
add dword [esi], 0xffffffff
jne 0x10033cd5
mov ecx, dword [esi + 4]
push esi
mov ecx, dword [ecx + 0x18]
call ecx
add esp, 4
push edi
push dword [0x103cc55c]
call dword [0x103cc56c]
mov eax, dword [esp + 0x1c]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x9f0]
xor ecx, esp
call fcn.1024a596
mov esp, ebp
pop ebp
ret
mov eax, dword [0x103f9f04]
test eax, eax
jne 0x10033d24
push 0xf0000000
push 1
push eax
push eax
push 0x103f9f04
call dword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test eax, eax
je 0x10033d3d
mov eax, dword [0x103f9f04]
lea ecx, [esp + 0x38]
push ecx
push 0x9c0
push eax
call dword [sym.imp.ADVAPI32.dll_CryptGenRandom]
test eax, eax
jne 0x10033df6
push 0
push 0
push 0
push dword [sym.python310.dll_PyExc_OSError]
call sym.python310.dll_PyErr_SetExcFromWindowsErrWithFilenameObjects
mov eax, dword [0x103fb118]
add esp, 0x10
push eax
call sym.python310.dll__PyErr_Clear
add esp, 4
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
push 0
push 0x64
push dword [esp + 0x24]
push dword [esp + 0x24]
call fcn.1024b4f0
add eax, 0xb3960000
mov dword [esp + 0x24], eax
adc edx, 0x5e6684f4
mov dword [esp + 0x28], edx
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__getpid]
mov dword [esp + 0x2c], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount64]
mov esi, eax
mov ecx, edx
add esi, 0x7bd05af6
adc ecx, 0x863
cmp ecx, 0x10c6
jb 0x10033dd8
ja 0x10033dc0
cmp esi, 0xf7a0b5ec
jbe 0x10033dd8
mov edx, 0x7fffffff
or eax, 0xffffffff
mov dword [esp + 0x34], edx
lea edx, [esp + 0x24]
mov dword [esp + 0x30], eax
push 5
jmp 0x10033dff
push 0
push 0xf4240
push edx
push eax
call fcn.1024b4f0
mov dword [esp + 0x34], edx
lea edx, [esp + 0x24]
mov dword [esp + 0x30], eax
push 5
jmp 0x10033dff
push 0x270
lea edx, [esp + 0x3c]
mov ecx, ebx
call fcn.100339c0
mov ecx, dword [esp + 0xa00]
add esp, 4
inc dword [sym.python310.dll__Py_NoneStruct]
mov eax, sym.python310.dll__Py_NoneStruct
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1024a596
mov esp, ebp
pop ebp
ret
push 0x103902b4
call sym.python310.dll__Py_FatalError_TstateNULL
int3